On Thu, Mar 18, 2010 at 4:24 PM, Garrett D'Amore - sun microsystems
<gd78059 at sac.sfbay.sun.com> wrote:
>
> Template Version: @(#)sac_nextcase 1.69 02/15/10 SMI
> This information is Copyright 2010 Sun Microsystems
> 1. Introduction
>    1.1. Project/Component Working Name:
>         More ksh93 builtins
>    1.2. Name of Document Author/Supplier:
>         Author:  Olga Kryzhanovska
>    1.3  Date of This Document:
>        18 March, 2010
> 4. Technical Description
>
> 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/gnu/bin, /usr/xpg4/bin and /usr/bin built in
> mappings in ksh93
>
> Bug/RFE Number(s):
>
> 6935110  ksh93 needs (more) XPG, GNU 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/gnu/bin utilities
> ----------------------------------------------------------
> The case proposes to enable the following mappings to ksh93 built in
> commands for utilities in /usr/gnu/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/gnu/bin binary.
>
>
> Interface                               Stability        Description
> ---------                               ---------        -----------
> ksh93 '/usr/gnu/bin/basename' built in  Uncommitted      basename utility 
> with GNU extensions
> ksh93 '/usr/gnu/bin/cksum' built in     Uncommitted      cksum utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/comm' built in      Uncommitted      comm utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/cut' built in       Uncommitted      cut utility with GNU 
> extensions
> ksh93 '/usr/gnu/bin/dirname' built in   Uncommitted      dirname utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/expr' built in      Uncommitted      expr utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/fold' built in      Uncommitted      fold utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/join' built in      Uncommitted      join utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/logname' built in   Uncommitted      logname utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/mkdir' built in     Uncommitted      mkdir utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/mkfifo' built in    Uncommitted      mkfifo utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/mktemp' built in    Uncommitted      mktemp utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/pathchk' built in   Uncommitted      pathchk utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/paste' built in     Uncommitted      paste utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/sleep' built in     Uncommitted      sleep utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/sync' built in      Uncommitted      sync utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/tee' built in       Uncommitted      tee utility with GNU 
> extensions
> ksh93 '/usr/gnu/bin/tty' built in       Uncommitted      tty utility with GNU 
> extensions
> ksh93 '/usr/gnu/bin/uniq' built in      Uncommitted      uniq utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/rmdir' built in     Uncommitted      rmdir utility with 
> GNU extensions
> ksh93 '/usr/gnu/bin/wc' built in        Uncommitted      wc utility with GNU 
> extensions
>
> Notes
> -----
> Compatibility of AT&T AST ksh93 built in utilities and GNU
> coreutils implementations:
> Modulo correction bugs in the implementation, we believe that the
> ksh93 built in utilities act as a 100% compatible drop in for the
> GNU programs sans wording of --help, --version and error message
> output (error messages are Not-An-Interface).
>
> Compatibility between ksh93 built in utility implementation and GNU
> coreutils implementation:
> Should a future ARC case will add new features to the GNU coreutils
> utilities the project team will update the corresponding ksh93 built
> in utility. Should this not be possible the ksh93 project team will
> remove the mapping.
>
>
>
> Part 2: 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 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 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.
>
>
>
> 6. Resources and Schedule
>    6.4. Steering Committee requested information
>        6.4.1. Consolidation C-team Name:
>                ON
>    6.5. ARC review type: FastTrack
>    6.6. ARC Exposure: open
>
> _______________________________________________
> opensolaris-arc mailing list
> opensolaris-arc at opensolaris.org
>

+1

Jenny
-- 
Jennifer Pioch, Uni Frankfurt

Reply via email to