Below is the updated 1-pager for the case.
The only significant change is the rewording of the paragraph on interface
stability levels, immediately before the listing of Interface, Description,
and Stability.
April
Project/Component Working Name:
Amendments to Korn Shell 93 Integration
Name of Document Author/Supplier:
april.chin at sun.com, roland.mainz at nrubsig.org
Date of This Document:
1/17/07
Project Summary
This case is an amendment to the Korn Shell 93 Integration case,
PSARC/2006/550, specifying the following additional interfaces:
1) a ksh93 built-in getconf command and
2) AT&T components for building message files for localization
Bug/RFE Number(s):
6505835 AST tools and library (libpp) required for creating l10n messages
for ksh93
Description
The AT&T built-in version of the getconf
utility in ksh93 contains extensions not present
in the Solaris getconf utility, which are required to
run the AT&T ksh93 tests; these tests are critical to
the verification of ksh93 builds. The getconf built-in
allows users to write ksh93 scripts which are portable
across different systems and which can take advantage
of AT&T extensions to ksh93 [1,2].
Like other built-in commands named in PSARC/2006/550, the getconf
built-in in ksh93 will be bound to the /bin pathname. The built-in
getconf in ksh93 will only be invoked if called with no pathname prefix,
and if a /bin/getconf or /usr/bin/getconf executable is
found first on the user's path.
The stability of the getconf built-in command-line interface and
the system variables documented in getconf(1) is Committed;
its pathname binding to /bin is Volatile.
The getconf built-in supports additional system variables not available for
/usr/bin/getconf; these variables are Project Private, and include
names prefixed with "AST" and "_AST".
All options and system variables supported by /usr/bin/getconf produce
identical output values using the ksh93 built-in getconf.
Additions to the ksh93 test suite and to /usr/bin/getconf testing
will ensure that ksh93 built-in getconf continues to provide functionality
compatible with /usr/bin/getconf.
The second portion of this case specifies the addition of
AT&T message-building components--a library, ksh93 scripts,
and a set of binaries--required for the ksh93 project
to build its message files for localization.
The message-building tools and proposed AT&T library, libpp,
have a strong dependency on libast, one of the new AT&T
libraries specified in PSARC/2006/550. Therefore
these components should be kept in sync with libast on Solaris.
These components will initially be used only by the
Korn Shell 93 Integration Project (PSARC/2006/550).
The proposed location of the tools in /usr/ast/bin
is consistent with the location used within AT&T.
If the interface stability level of the shared libraries
listed in PSARC/2006/550--libshell, libast, libdll, and libcmd--
is promoted above the current stability level of the /usr/ast/bin
utilities listed below, the stability level of the latter should
be promoted to at least the same level as the libraries, to
allow consumers of the former to build the appropriate message files.
Interface Description Stability
--------- ----------- ---------
/usr/lib/libpp.so.1 AT&T ANSI C preprocessor library Project Private
/usr/ast/bin directory for AT&T commands Volatile
/usr/ast/bin/msgadmin ksh93 script for message catalog Volatile
file administration
/usr/ast/bin/msgcc ksh93 script for generating message Volatile
catalog files
binaries used by msgcc and msgadmin
for message formatting, converting:
/usr/ast/bin/msgcpp Volatile
/usr/ast/bin/msgcvt Volatile
/usr/ast/bin/msggen Volatile
/usr/ast/bin/msgget Volatile
A new package for AST (Advanced Software Technology) developer tools,
SUNWastdev, will be created, which includes all of the above message-building
components. These tools have a dependency on ksh93 and its libraries, as
listed in PSARC/2006/550, and shall not be integrated before
the Korn Shell 93 Integration project.
Dynamic library dependencies of msgcpp, msgcvt, msggen, and msgget:
libpp.so.1 => /usr/lib/libpp.so.1
libast.so.1 => /usr/lib/libast.so.1
libm.so.2 => /lib/libm.so.2
libc.so.1 => /usr/lib/libc.so.1
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libmp.so.2 => /usr/lib/libmp.so.2
libmd.so.1 => /usr/lib/libmd.so.1
libscf.so.1 => /usr/lib/libscf.so.1
libuutil.so.1 => /usr/lib/libuutil.so.1
/platform/SUNW,Sun-Fire-V890/lib/libc_psr.so.1
/platform/SUNW,Sun-Fire-V890/lib/libmd_psr.so.1
References:
[1] getconf background from Glenn Fowler of AT&T
http://mail.opensolaris.org/pipermail/ksh93-integration-discuss/2006-November/00
1863.html
[2] more getconf background from Glenn Fowler
http://mail.opensolaris.org/pipermail/ksh93-integration-discuss/2006-November/00
1864.html