The project team has decided to change the proposal to remove the contentious builtins for /usr/gnu. Instead, only /usr/bin and /usr/xpg4,xpg6 utilities are being provided as builtins. As these utilities will hopefully one day be converted to use the same underlying libcmd interface, this should not be contentious.

I'm restarting the timeout for one week from today (timeout expires April 7). The revised spec follows.

    - Garrett

I'm sponsoring this fast-track request on behalf of the
ksh93-integration project.
Please note that this is an *open* case.

The release binding is the same as with the ksh93 project: a
patch/micro release of Solaris delivering through ON
Stability levels are as described below.


This project is an amendment to the Korn Shell 93 Integration project
(PSARC/2006/550 and PSARC/2007/035, PSARC/2008/094, PSARC/2008/344
and PSARC/2008/589) specifying the following additional
interfaces:
Addition of /usr/xpg6/bin, /usr/xpg4/bin and /usr/bin built in
mappings in ksh93

This case supersets PSARC/2010/095 (it is identical sans built in
mappings for /usr/gnu/bin).

Bug/RFE Number(s):

6935110  ksh93 needs (more) XPG built ins

This case proposes to deliver the following features as a set of
independent putbacks as they become available. Each feature is
self contained and independent of the others, so out of order
and partial putbacks at this granularity should have no adverse
impact on the functionality and behavior of the system as a whole.


Part 1: ksh93 built in mappings for /usr/xpg4/bin utilities
----------------------------------------------------------
The case proposes to enable the following mappings to ksh93 built in
commands for utilities in /usr/xpg4/bin. When the utility is called
using it's command name, and not the full path, the ksh93 builtin
will be used instead of executing the /usr/xpg4/bin binary.

Interface                                Stability        Description
---------                                ---------        -----------
ksh93 '/usr/xpg4/bin/basename' built in  Committed        POSIX basename utility
ksh93 '/usr/xpg4/bin/egrep' built in     Committed        POSIX egrep utility
ksh93 '/usr/xpg4/bin/fgrep' built in     Committed        POSIX fgrep utility
ksh93 '/usr/xpg4/bin/grep' built in      Committed        POSIX grep utility
ksh93 '/usr/xpg4/bin/id' built in        Committed        POSIX id utility
ksh93 '/usr/xpg4/bin/rm' built in        Committed        POSIX rm utility


Part 2: ksh93 built in mappings for /usr/xpg6/bin utilities
----------------------------------------------------------
The case proposes to enable the following mappings to ksh93 built in
commands for utilities in /usr/xpg6/bin. When the utility is called
using it's command name, and not the full path, the ksh93 builtin
will be used instead of executing the /usr/xpg6/bin binary.

Interface                                Stability        Description
---------                                ---------        -----------
ksh93 '/usr/xpg6/bin/expr' built in      Committed        POSIX expr utility


Part 3: ksh93 built in mappings for /usr/bin utilities
----------------------------------------------------------
The case proposes to enable the following mappings to ksh93 built in
commands for utilities in /usr/bin. When the utility is called
using it's command name, and not the full path, the ksh93 builtin
will be used instead of executing the /usr/xpg4/bin binary.

Interface                                Stability        Description
---------                                ---------        -----------
ksh93 '/usr/bin/dirname' built in        Committed        POSIX dirname utility


General comments
----------------
This case heavily builds on PSARC/2006/550 which was the first
PSARC case to introduce the concept of shell built ins bound
to a path.


Future development
------------------
The shell project team will file separate ARC case to add the same
shell built ins to bash4, reusing the same code as ksh93
(libcmd.so.1).
The shell project will later provide an API within libcmd.so.1 for
other shells (e.g. bash4) and applications to call the built ins
directly.
This API will be available as contracted API until sufficient
experience has been collected and then opened as Committed
interface.


_______________________________________________
opensolaris-arc mailing list
[email protected]

Reply via email to