[ksh93-integration-discuss] Re: [ast-users] AT&T Software Technology ast software download update
Felix Schulte
felix.schulte at gmail.com
Mon Apr 2 07:09:37 PDT 2007
On 3/30/07, Glenn Fowler <gsf at research.att.com> wrote:
>
> the AT&T Software Technology ast 2007-03-28 source and binary release
> has been posted to the download site
> http://www.research.att.com/sw/download/
> the notes and changes link has details on the release
>
> included is the ast-ksh package which contains the latest ksh93
> source for the ksh93 solaris integration project
>
> -- Glenn Fowler -- AT&T Research, Florham Park NJ --
patch diff from 20070111 to 20070328 attached
--
_ Felix Schulte
_|_|_ mailto:felix.schulte at gmail.com
(0 0)
ooO--(_)--Ooo
-------------- next part --------------
diff -r -N -u ksh93_2007_01_11/lib/package/ast-ksh.html ksh93_2007_03_28/lib/package/ast-ksh.html
--- ksh93_2007_01_11/lib/package/ast-ksh.html 2007-01-12 10:54:36.000000000 +0100
+++ ksh93_2007_03_28/lib/package/ast-ksh.html 2007-03-29 19:07:08.000000000 +0200
@@ -1,7 +1,7 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<HTML>
<HEAD>
-<META name="generator" content="mm2html (AT&T Labs Research) 2006-10-31">
+<META name="generator" content="mm2html (AT&T Labs Research) 2007-02-09">
<META name="description" content="ast-ksh package">
<META name="keywords" content="software, package">
<TITLE> ast-ksh package </TITLE>
@@ -22,7 +22,7 @@
<TABLE align=center border=0 bordercolor=white cellpadding=0 cellspacing=0 frame=void rules=none width=99% >
<TBODY>
<TR><TD align=left>
-<A href="#ksh93">ksh93</A> </TD><TD align=left> libast </TD><TD align=left> libcmd </TD><TD align=left> libdll</TD></TR>
+<A href="#ksh93">ksh93</A> </TD><TD align=left> libast </TD><TD align=left> libcmd </TD><TD align=left> libdll </TD><TD align=left> libsum</TD></TR>
</TBODY></TABLE></TD></TR></TBODY></TABLE>
<P>
This package is a superset of the following package: ksh; you won't need this if you download ast-ksh.
@@ -179,6 +179,7 @@
<TD align=left><A href="#ksh93 changes">ksh93</A></TD>
<TD align=left><A href="#libast changes">libast</A></TD>
<TD align=left><A href="#libcmd changes">libcmd</A></TD>
+<TD align=left><A href="#libsum changes">libsum</A></TD>
<TD align=left><A href="#libdll changes">libdll</A></TD>
</TR></TABLE>
</FONT></B>
@@ -192,6 +193,33 @@
<P><HR><CENTER><FONT color=red><FONT face=courier><H3><A name="ksh93 changes">ksh93 changes</A></H3></FONT></FONT></CENTER>
<PRE>
+07-03-08 --- Release ksh93s+ ---
+07-03-08 A bug in which set +o output command line options has been fixed.
+07-03-08 A bug in which an error in read (for example, an invalid variable
+ name), could leave the terminal in raw mode has been fixed.
+07-03-06 A bug in which read could core dump when specified with an array
+ variable with a subscript that is an arithmetic expression has
+ been fixed.
+07-03-06 Several serious bugs with the restricted shell were reported and
+ fixed.
+07-03-02 If a job is stopped, and subsequently restarted with a CONT
+ signal and exits normally, ksh93 was incorrectly exiting with
+ the exit status of the stop signal number.
+07-02-26 M-^L added to emacs mode to clear the screen.
+07-02-26 A bug in which setting a variable readonly in a subshell would
+ cause an unset error when the subshell completed has been fixed.
+07-02-19 The format with printf uses the new = flag to center the output.
+07-02-19 A bug in which ksh93 did not allow multibyte characters in
+ identifier names has been fixed.
+07-02-19 A bug introduced in ksh93 that causes global compound variable
+ definitions inside functions to exit with "no parent" has been fixed.
+07-02-19 A bug in which using compound commands in process redirection
+ arguments would give syntax errors <(...) and >(...) has been fixed.
+07-01-29 A bug which caused the shell to core dump which can occur when a
+ built-in exits without closing files that it opens has been fixed.
+07-01-26 A bug in which ~(E) in patterns containing that are not inside ()
+ has been fixed.
+
06-12-29 --- Release ksh93s ---
06-12-29 A bug in which the value of IFS could be changed after a command
substitution has been fixed.
@@ -1624,6 +1652,30 @@
<P><HR><CENTER><FONT color=red><FONT face=courier><H3><A name="libast changes">libast changes</A></H3></FONT></FONT></CENTER>
<PRE>
+07-03-28 misc/optget.c: fix l10n --?-
+07-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic
+07-03-21 error.h: move from error_info to (*_error_data_)
+07-03-21 option.h: move from opt_info to (*_opt_data_)
+07-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP
+07-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions
+07-02-27 comp/conf.sh: handle native getconf invalid numeric values
+07-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX
+07-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification
+07-02-14 features/common: cover <stdint.h>, move to int_(bits)_t
+07-02-14 include/int.h: drop
+07-02-14 include/sfio.h: add SF_WCWIDTH
+07-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc.
+07-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix
+07-02-12 features/float: *LONGLONG* => *LLONG* to match posix
+07-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral
+07-02-12 stdio/vasprintf.c: add trailing ' ' -- doh
+07-02-04 string/fmtelapsed.c: fix naive multi month/year logic
+07-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3)
+07-01-26 string/chresc.c: use mbchar()
+07-01-26 misc/optget.c: handle "o:-:" usage for old-style long options
+07-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek
+07-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h
+07-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1
07-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?)
07-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP)
07-01-05 misc/error.c: fix multibyte vs. printable logic
@@ -3022,6 +3074,18 @@
<P><HR><CENTER><FONT color=red><FONT face=courier><H3><A name="libcmd changes">libcmd changes</A></H3></FONT></FONT></CENTER>
<PRE>
+07-03-28 date.c: add --unelepsed=scale, -U: fmtelapsed() => strelapsed()
+07-03-25 wclib.h: iswspace() requires <wctype.h>!
+07-03-11 tty.c: add sysV --line-number, -l
+07-02-26 Makefile: sumlib.o: direct extract from +lsum (vcodex someday)
+07-02-24 Makefile: tweak cmdext.h action for --mam bootstrap
+07-02-09 Makefile: { cmdext.h cmdlist.h } depend on *.c list!
+07-02-09 Makefile: +lsum to bring in static -lsum (no dynamic right now)
+07-02-07 cksum.c: move from src/cmd/std with ftwalk => fts
+07-02-07 getconf.c: handle /bin == /usr/bin in defer logic
+07-01-26 chmod.c: don't FTS_FOLLOW if !FTS_PHYSICAL
+07-01-23 cut.c: Cut_t variable dimension list[] must be last member
+07-01-22 uname.c: fix -h typo that clobbered astconf() state -- ouch
07-01-02 fmt.c: fix buffer splice off by one bug -- what else
06-11-23 cmd.h: because of proto cmdinit cannot be a function like macro
06-11-21 cp.c: fix 06-10-31 const dot[] readonly assignment
@@ -3230,6 +3294,20 @@
</PRE>
<P>
+<P><HR><CENTER><FONT color=red><FONT face=courier><H3><A name="libsum changes">libsum changes</A></H3></FONT></FONT></CENTER>
+<PRE>
+
+05-02-14 sumlib.c: split into sum-*.c
+ sum-sha2.c: add SHA { 256 384 512 }
+04-02-29 Makefile: compile with $(CC.PIC) for codexlib/sum $(CC.DLL)
+03-12-16 add { crc prng } generic methods and maps[] to these methods
+03-12-16 sum.h,sumlib.c: add sumdata()
+03-09-29 sumlib.c: fix FNV to use ^ instead of +
+03-04-28 sumlib.c: drop md5 `zeroize' for performance
+ sumlib.c: add FIPS 180-1 SHA-1
+
+</PRE>
+<P>
<P><HR><CENTER><FONT color=red><FONT face=courier><H3><A name="libdll changes">libdll changes</A></H3></FONT></FONT></CENTER>
<PRE>
@@ -3280,7 +3358,7 @@
<TR>
<TD align=left></TD>
<TD align=center></TD>
-<TD align=right>January 12, 2007</TD>
+<TD align=right>March 29, 2007</TD>
</TR>
</TABLE>
<P>
diff -r -N -u ksh93_2007_01_11/lib/package/ast-ksh.pkg ksh93_2007_03_28/lib/package/ast-ksh.pkg
--- ksh93_2007_01_11/lib/package/ast-ksh.pkg 2005-02-10 10:00:52.000000000 +0100
+++ ksh93_2007_03_28/lib/package/ast-ksh.pkg 2007-02-23 19:05:30.000000000 +0100
@@ -1,4 +1,4 @@
-ast-ksh :PACKAGE: ksh93 libast libcmd libdll
+ast-ksh :PACKAGE: ksh93 libast libcmd libsum libdll
:COVERS: ksh
diff -r -N -u ksh93_2007_01_11/lib/package/ast-ksh.README ksh93_2007_03_28/lib/package/ast-ksh.README
--- ksh93_2007_01_11/lib/package/ast-ksh.README 2007-01-12 10:54:35.000000000 +0100
+++ ksh93_2007_03_28/lib/package/ast-ksh.README 2007-03-29 19:07:08.000000000 +0200
@@ -92,6 +92,33 @@
:::::::: ksh93 ::::::::
+07-03-08 --- Release ksh93s+ ---
+07-03-08 A bug in which set +o output command line options has been fixed.
+07-03-08 A bug in which an error in read (for example, an invalid variable
+ name), could leave the terminal in raw mode has been fixed.
+07-03-06 A bug in which read could core dump when specified with an array
+ variable with a subscript that is an arithmetic expression has
+ been fixed.
+07-03-06 Several serious bugs with the restricted shell were reported and
+ fixed.
+07-03-02 If a job is stopped, and subsequently restarted with a CONT
+ signal and exits normally, ksh93 was incorrectly exiting with
+ the exit status of the stop signal number.
+07-02-26 M-^L added to emacs mode to clear the screen.
+07-02-26 A bug in which setting a variable readonly in a subshell would
+ cause an unset error when the subshell completed has been fixed.
+07-02-19 The format with printf uses the new = flag to center the output.
+07-02-19 A bug in which ksh93 did not allow multibyte characters in
+ identifier names has been fixed.
+07-02-19 A bug introduced in ksh93 that causes global compound variable
+ definitions inside functions to exit with "no parent" has been fixed.
+07-02-19 A bug in which using compound commands in process redirection
+ arguments would give syntax errors <(...) and >(...) has been fixed.
+07-01-29 A bug which caused the shell to core dump which can occur when a
+ built-in exits without closing files that it opens has been fixed.
+07-01-26 A bug in which ~(E) in patterns containing \ that are not inside ()
+ has been fixed.
+
06-12-29 --- Release ksh93s ---
06-12-29 A bug in which the value of IFS could be changed after a command
substitution has been fixed.
@@ -1521,6 +1548,30 @@
:::::::: libast ::::::::
+07-03-28 misc/optget.c: fix l10n --?-
+07-03-25 features/common: fix { ast_std.h ast_map.h stdint.h } logic
+07-03-21 error.h: move from error_info to (*_error_data_)
+07-03-21 option.h: move from opt_info to (*_opt_data_)
+07-03-19 regex/regdecomp.c: fix REX_ONECHAR escapes and add REX_KMP
+07-03-11 tm/tmxscan.c,regex/regnexec.c: fix strict-alias transgressions
+07-02-27 comp/conf.sh: handle native getconf invalid numeric values
+07-02-21 comp/conf.sh,comp/conf.tab: handle SSIZE_MAX vs _POSIX_SSIZE_MAX
+07-02-20 sfio/sfvprintf.c: handle SF_WCWIDTH justification
+07-02-14 features/common: cover <stdint.h>, move to int_(bits)_t
+07-02-14 include/int.h: drop
+07-02-14 include/sfio.h: add SF_WCWIDTH
+07-02-12 comp/conf.sh: fix CONF_LIMIT bug that missed ULONG_MAX etc.
+07-02-12 comp/conf.tab: *LONGLONG* => *LLONG* to match posix
+07-02-12 features/float: *LONGLONG* => *LLONG* to match posix
+07-02-12 port/astconf.c: handle CONF_LIMITS_DEF with no deferral
+07-02-12 stdio/vasprintf.c: add trailing '\0' -- doh
+07-02-04 string/fmtelapsed.c: fix naive multi month/year logic
+07-02-02 misc/optget.c: add --??posix for getopts(1)/getopt(3)
+07-01-26 string/chresc.c: use mbchar()
+07-01-26 misc/optget.c: handle "o:-:" usage for old-style long options
+07-01-22 sfio/sfdisc.c,sfpool.c: handle push on streams with pending peek
+07-01-22 include/sfio.h: mv Sfieee_t to sfio/sfhdr.h
+07-01-17 tm/tmxfmt.c: fix terminating nil logic which clobbered size-1
07-01-11 misc/stk.c: a 2 day marathon bug fix (can we release now dr ek?)
07-01-05 comp/spawnveg.c: posix_spawnattr_setflags(POSIX_SPAWN_SETPGROUP)
07-01-05 misc/error.c: fix multibyte vs. printable logic
@@ -2916,6 +2967,18 @@
:::::::: libcmd ::::::::
+07-03-28 date.c: add --unelepsed=scale, -U: fmtelapsed() => strelapsed()
+07-03-25 wclib.h: iswspace() requires <wctype.h>!
+07-03-11 tty.c: add sysV --line-number, -l
+07-02-26 Makefile: sumlib.o: direct extract from +lsum (vcodex someday)
+07-02-24 Makefile: tweak cmdext.h action for --mam bootstrap
+07-02-09 Makefile: { cmdext.h cmdlist.h } depend on *.c list!
+07-02-09 Makefile: +lsum to bring in static -lsum (no dynamic right now)
+07-02-07 cksum.c: move from src/cmd/std with ftwalk => fts
+07-02-07 getconf.c: handle /bin == /usr/bin in defer logic
+07-01-26 chmod.c: don't FTS_FOLLOW if !FTS_PHYSICAL
+07-01-23 cut.c: Cut_t variable dimension list[] must be last member
+07-01-22 uname.c: fix -h typo that clobbered astconf() state -- ouch
07-01-02 fmt.c: fix buffer splice off by one bug -- what else
06-11-23 cmd.h: because of proto cmdinit cannot be a function like macro
06-11-21 cp.c: fix 06-10-31 const dot[] readonly assignment
@@ -3122,6 +3185,17 @@
95-02-14 fix mkdir -p symlink bug
fix mkdir '/' skip bug that went one too far
+:::::::: libsum ::::::::
+
+05-02-14 sumlib.c: split into sum-*.c
+ sum-sha2.c: add SHA { 256 384 512 }
+04-02-29 Makefile: compile with $(CC.PIC) for codexlib/sum $(CC.DLL)
+03-12-16 add { crc prng } generic methods and maps[] to these methods
+03-12-16 sum.h,sumlib.c: add sumdata()
+03-09-29 sumlib.c: fix FNV to use ^ instead of +
+03-04-28 sumlib.c: drop md5 `zeroize' for performance
+ sumlib.c: add FIPS 180-1 SHA-1
+
:::::::: libdll ::::::::
06-10-11 dllscan.c: check sfstruse() return values -- doh
diff -r -N -u ksh93_2007_01_11/lib/package/ast-ksh.ver ksh93_2007_03_28/lib/package/ast-ksh.ver
--- ksh93_2007_01_11/lib/package/ast-ksh.ver 2007-01-12 10:54:34.000000000 +0100
+++ ksh93_2007_03_28/lib/package/ast-ksh.ver 2007-03-28 18:39:59.000000000 +0200
@@ -1 +1 @@
-ast-ksh 2007-01-11 2007-01-11 1
+ast-ksh 2007-03-28 2007-03-28 1
diff -r -N -u ksh93_2007_01_11/lib/package/ksh.ver ksh93_2007_03_28/lib/package/ksh.ver
--- ksh93_2007_01_11/lib/package/ksh.ver 2007-01-12 10:54:33.000000000 +0100
+++ ksh93_2007_03_28/lib/package/ksh.ver 2007-03-29 19:07:07.000000000 +0200
@@ -1 +1 @@
-ksh 2007-01-11 2007-01-11 1
+ksh 2007-03-28 2007-03-28 1
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/cd_pwd.c ksh93_2007_03_28/src/cmd/ksh93/bltins/cd_pwd.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/cd_pwd.c 2003-04-17 17:05:14.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/cd_pwd.c 2007-02-27 08:16:23.000000000 +0100
@@ -102,8 +102,8 @@
#if _WINIX
if(*dir != '/' && (dir[1]!=':'))
#else
-#endif /* _WINIX */
if(*dir != '/')
+#endif /* _WINIX */
{
#ifdef PATH_BFPATH
if(!(cdpath = (Pathcomp_t*)shp->cdpathlist) && (dp=(CDPNOD)->nvalue.cp))
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/getopts.c ksh93_2007_03_28/src/cmd/ksh93/bltins/getopts.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/getopts.c 2006-08-11 19:36:23.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/getopts.c 2007-02-14 09:17:46.000000000 +0100
@@ -175,7 +175,7 @@
{
Sfdouble_t d;
d = opt_info.number;
- nv_putval(np, (char*)&d, NV_INTEGER|NV_DOUBLE|NV_LONG|NV_RDONLY);
+ nv_putval(np, (char*)&d, NV_LDOUBLE|NV_RDONLY);
}
nv_close(np);
sh_popcontext(&buff);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/print.c ksh93_2007_03_28/src/cmd/ksh93/bltins/print.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/print.c 2006-10-13 22:16:05.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/print.c 2007-02-14 08:54:57.000000000 +0100
@@ -523,8 +523,8 @@
char* lastchar = "";
register int neg = 0;
Sfdouble_t d;
- Sfdouble_t longmin = LDBL_LONGLONG_MIN;
- Sfdouble_t longmax = LDBL_LONGLONG_MAX;
+ Sfdouble_t longmin = LDBL_LLONG_MIN;
+ Sfdouble_t longmax = LDBL_LLONG_MAX;
int format = fe->fmt;
int n;
int fold = fe->base;
@@ -599,14 +599,14 @@
np = nv_open(argp,sh.var_tree,NV_VARNAME|NV_NOASSIGN|NV_NOARRAY);
nv_unset(np);
nv_onattr(np,NV_INTEGER);
- if (np->nvalue.lp = new_of(long,0))
+ if (np->nvalue.lp = new_of(int32_t,0))
*np->nvalue.lp = 0;
nv_setsize(np,10);
- if(sizeof(int)==sizeof(long))
+ if(sizeof(int)==sizeof(int32_t))
value->ip = (int*)np->nvalue.lp;
else
{
- long sl = 1;
+ int32_t sl = 1;
value->ip = (int*)(((char*)np->nvalue.lp) + (*((char*)&sl) ? 0 : sizeof(int)));
}
nv_close(np);
@@ -645,7 +645,7 @@
case 'X':
case 'u':
case 'U':
- longmax = LDBL_ULONGLONG_MAX;
+ longmax = LDBL_ULLONG_MAX;
case '.':
if(fe->size==2 && strchr("bcsqHPRQTZ",*fe->form))
{
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/read.c ksh93_2007_03_28/src/cmd/ksh93/bltins/read.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/read.c 2006-12-19 20:19:01.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/read.c 2007-03-08 23:16:47.000000000 +0100
@@ -183,36 +183,11 @@
struct checkpt buff;
if(!(iop=shp->sftable[fd]) && !(iop=sh_iostream(fd)))
return(1);
- if(flags>>D_FLAG) /* delimiter not new-line or fixed size read */
- {
- if(flags&(N_FLAG|NN_FLAG))
- size = ((unsigned)flags)>>D_FLAG;
- else
- delim = ((unsigned)flags)>>D_FLAG;
- if(shp->fdstatus[fd]&IOTTY)
- tty_raw(fd,1);
- }
- if(!(flags&(N_FLAG|NN_FLAG)))
- {
- /* set up state table based on IFS */
- ifs = nv_getval(np=nv_scoped(IFSNOD));
- if((flags&R_FLAG) && shp->ifstable['\\']==S_ESC)
- shp->ifstable['\\'] = 0;
- else if(!(flags&R_FLAG) && shp->ifstable['\\']==0)
- shp->ifstable['\\'] = S_ESC;
- shp->ifstable[delim] = S_NL;
- if(delim!='\n')
- {
- shp->ifstable['\n'] = 0;
- nv_putval(np, ifs, NV_RDONLY);
- }
- shp->ifstable[0] = S_EOF;
- }
if(names && (name = *names))
{
if(val= strchr(name,'?'))
*val = 0;
- np = nv_open(name,shp->var_tree,NV_NOASSIGN|NV_VARNAME);
+ np = nv_open(name,shp->var_tree,NV_NOASSIGN|NV_VARNAME|NV_ARRAY);
if((flags&V_FLAG) && shp->ed_context)
((struct edit*)shp->ed_context)->e_default = np;
if(flags&A_FLAG)
@@ -235,6 +210,32 @@
else
np = REPLYNOD;
}
+ if(flags>>D_FLAG) /* delimiter not new-line or fixed size read */
+ {
+ if(flags&(N_FLAG|NN_FLAG))
+ size = ((unsigned)flags)>>D_FLAG;
+ else
+ delim = ((unsigned)flags)>>D_FLAG;
+ if(shp->fdstatus[fd]&IOTTY)
+ tty_raw(fd,1);
+ }
+ if(!(flags&(N_FLAG|NN_FLAG)))
+ {
+ Namval_t *mp;
+ /* set up state table based on IFS */
+ ifs = nv_getval(mp=nv_scoped(IFSNOD));
+ if((flags&R_FLAG) && shp->ifstable['\\']==S_ESC)
+ shp->ifstable['\\'] = 0;
+ else if(!(flags&R_FLAG) && shp->ifstable['\\']==0)
+ shp->ifstable['\\'] = S_ESC;
+ shp->ifstable[delim] = S_NL;
+ if(delim!='\n')
+ {
+ shp->ifstable['\n'] = 0;
+ nv_putval(mp, ifs, NV_RDONLY);
+ }
+ shp->ifstable[0] = S_EOF;
+ }
sfclrerr(iop);
if(np->nvfun && np->nvfun->disc->readf)
return((* np->nvfun->disc->readf)(np,iop,delim,np->nvfun));
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/shopen.c ksh93_2007_03_28/src/cmd/ksh93/bltins/shopen.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/shopen.c 2006-10-13 05:58:32.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/shopen.c 2007-03-20 20:08:28.000000000 +0100
@@ -17,15 +17,17 @@
* David Korn <dgk at research.att.com> *
* *
***********************************************************************/
+#pragma prototyped
static const char id[] = "\n@(#)$Id: open (AT&T Research) 1998-07-07 $\0\n";
-#include <sys/stat.h>
-#include <fcntl.h>
#include <shell.h>
#include <option.h>
#include <stk.h>
#include <tm.h>
+#ifndef SH_DICT
+# define SH_DICT "libshell"
+#endif
/*
* time formatting related
@@ -52,7 +54,7 @@
char *last;
if(val)
{
- time_t t;
+ int32_t t;
if(flag&NV_INTEGER)
{
if(flag&NV_LONG)
@@ -61,9 +63,11 @@
t = *(double*)val;
}
else
+ {
t = tmdate(val, &last, (time_t*)0);
- if(*last)
- errormsg(SH_DICT,ERROR_exit(1),"%s: invalid date/time string",val);
+ if(*last)
+ errormsg(SH_DICT,ERROR_exit(1),"%s: invalid date/time string",val);
+ }
nv_putv(np,(char*)&t,NV_INTEGER,nfp);
}
else
@@ -121,7 +125,7 @@
{
if(val)
{
- mode_t mode;
+ int32_t mode;
char *last;
if(flag&NV_INTEGER)
{
@@ -131,9 +135,11 @@
mode = *(double*)val;
}
else
+ {
mode = strperm(val, &last,0);
- if(*last)
- errormsg(SH_DICT,ERROR_exit(1),"%s: invalid mode string",val);
+ if(*last)
+ errormsg(SH_DICT,ERROR_exit(1),"%s: invalid mode string",val);
+ }
nv_putv(np,(char*)&mode,NV_INTEGER,nfp);
}
else
@@ -238,6 +244,7 @@
if(!(nq=nodes[n]))
{
nodes[n] = nq = sh_newnode(fp,np);
+ nfp->last = "";
}
if(name[len]==0)
return(nq);
@@ -328,7 +335,7 @@
if(!outfile)
return((char*)0);
sfputc(out,0);
- return((char*)out->data);
+ return((char*)out->_data);
}
static char *get_classval(Namval_t* np, Namfun_t* nfp)
@@ -359,7 +366,7 @@
fieldcreate
};
-static mkclass(Namval_t *np, Shclass_t *sp)
+static int mkclass(Namval_t *np, Shclass_t *sp)
{
struct dcclass *tcp = newof(NULL,struct dcclass,1,sp->nelem*sizeof(Namval_t*));
if(!tcp)
@@ -377,29 +384,29 @@
*/
static struct stat *Sp;
+struct filedata
+{
+ struct stat statb;
+ int fd;
+ char *name;
+};
+
static Shfield_t filefield[] =
{
{ "atime", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_atime), sizeof(Sp->st_atime), make_time},
{ "ctime", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_ctime), sizeof(Sp->st_ctime), make_time},
{ "dev", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_dev),sizeof(Sp->st_dev)},
- { "fd", NV_INTEGER|NV_RDONLY, sizeof(struct stat), sizeof(int)},
+ { "fd", NV_INTEGER|NV_RDONLY, offsetof(struct filedata,fd), sizeof(int)},
{ "gid", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_gid), sizeof(Sp->st_gid)},
{ "ino", NV_LONG|NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_ino), sizeof(Sp->st_ino)},
- { "name", NV_RDONLY, sizeof(struct stat)+sizeof(int), -1 },
- { "nlink", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_nlink), sizeof(Sp->st_nlink)},
{ "mode", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_mode), sizeof(Sp->st_mode), make_mode},
{ "mtime", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_mtime), sizeof(Sp->st_mtime), make_time},
+ { "name", NV_RDONLY, offsetof(struct filedata,name), -1 },
+ { "nlink", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_nlink), sizeof(Sp->st_nlink)},
{ "size", NV_LONG|NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_size), sizeof(Sp->st_size)},
{ "uid", NV_INTEGER|NV_RDONLY, offsetof(struct stat,st_uid), sizeof(Sp->st_uid)}
};
-struct filedata
-{
- struct stat statb;
- int fd;
- char *name;
-};
-
static Shclass_t Fileclass =
{
sizeof(filefield)/sizeof(*filefield),
@@ -410,7 +417,35 @@
#define letterbit(bit) (1<<((bit)-'a'))
-static const char sh_optopen[] = "abceirwm:[mode] var file";
+static const char sh_optopen[] =
+"[-?\n@(#)$Id: open (AT&T Labs Research) 2007-03-11 $\n]"
+"[-author?David Korn <dgk at research.att.com>]"
+"[-license?http://www.opensource.org/licenses/cpl1.0.txt]"
+"[+NAME? open - create a shell variable correspnding to a file]"
+"[+DESCRIPTION?\bopen\b creates the compound variable \avar\a correspinding "
+ "to the file given by the pathname \afile\a. The elements of \avar\a "
+ "are the names of elements in the \astat\a structure with the \bst_\b "
+ "prefix removed.]"
+"[+?If the \b-r\b and/or \b-w\b mode is specified, then \afile\a is opened and "
+ "the variable \avar\a\b.fd\b is the file descriptor.]"
+"[a:append?Open for append.]"
+"[b:binary?Open in binary mode.]"
+"[c:create?Open for create.]"
+"[i:inherit?Open without the close-on-exec bit set.]"
+"[r:read?Open with read access.]"
+"[w:write?Open with write access.]"
+"[m:mode]:[mode:=rwrwrw?Open with access mode \amode\a.]"
+"[x:exclusive?Open exclusive.]"
+"\n"
+"\nvar file\n"
+"\n"
+"[+EXIT STATUS?]{"
+ "[+0?Success.]"
+ "[+>0?An error occurred.]"
+"}"
+"[+SEE ALSO?\bstat\b(2)]"
+;
+
extern int b_open(int argc, char *argv[], void *extra)
{
@@ -439,7 +474,7 @@
oflag |= O_TEXT;
#endif
break;
- case 'e':
+ case 'x':
oflag |= O_EXCL;
break;
case 'c':
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/bltins/typeset.c ksh93_2007_03_28/src/cmd/ksh93/bltins/typeset.c
--- ksh93_2007_01_11/src/cmd/ksh93/bltins/typeset.c 2007-01-12 01:02:47.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/bltins/typeset.c 2007-03-22 17:19:09.000000000 +0100
@@ -45,6 +45,7 @@
struct tdata
{
Shell_t *sh;
+ Namval_t *tp;
Sfio_t *outfile;
char *prefix;
int aflag;
@@ -52,7 +53,6 @@
int scanmask;
Dt_t *scanroot;
char **argnam;
- Namval_t *tp;
};
@@ -339,9 +339,11 @@
{
register char *name;
char *last = 0;
- int nvflags=(flag&(NV_ARRAY|NV_NOARRAY|NV_NOSCOPE|NV_VARNAME|NV_IDENT|NV_ASSIGN));
+ int nvflags=(flag&(NV_ARRAY|NV_NOARRAY|NV_VARNAME|NV_IDENT|NV_ASSIGN));
int r=0, ref=0;
Shell_t *shp =tp->sh;
+ if(!sh.prefix)
+ nvflags |= NV_NOSCOPE;
flag &= ~(NV_NOARRAY|NV_NOSCOPE|NV_VARNAME|NV_IDENT);
if(argv[1])
{
@@ -490,7 +492,15 @@
if(ref)
{
if(tp->aflag=='-')
- nv_setref(np);
+ {
+ Dt_t *hp=0;
+ if(nv_isattr(np,NV_PARAM) && shp->st.prevst)
+ {
+ if(!(hp=(Dt_t*)shp->st.prevst->save_tree))
+ hp = dtvnext(shp->var_tree);
+ }
+ nv_setref(np,hp,NV_VARNAME);
+ }
else
nv_unref(np);
}
@@ -870,10 +880,10 @@
sfputc(file,flag);
if(flag != '\n')
{
- if(nv_isref(np) && np->nvenv)
+ if(nv_isref(np) && nv_refsub(np))
{
sfputr(file,sh_fmtq(cp),-1);
- sfprintf(file,"[%s]\n", sh_fmtq(np->nvenv));
+ sfprintf(file,"[%s]\n", sh_fmtq(nv_refsub(np)));
}
else
sfputr(file,sh_fmtq(cp),'\n');
@@ -921,7 +931,7 @@
tp->outfile = file;
if(flag&NV_INTEGER)
tp->scanmask |= (NV_DOUBLE|NV_EXPNOTE);
- namec = nv_scan(root,nullscan,(void*)0,tp->scanmask,flag);
+ namec = nv_scan(root,nullscan,(void*)tp,tp->scanmask,flag);
argv = tp->argnam = (char**)stakalloc((namec+1)*sizeof(char*));
namec = nv_scan(root, pushname, (void*)tp, tp->scanmask, flag);
if(mbcoll())
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/data/builtins.c ksh93_2007_03_28/src/cmd/ksh93/data/builtins.c
--- ksh93_2007_01_11/src/cmd/ksh93/data/builtins.c 2006-12-19 20:16:28.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/data/builtins.c 2007-03-27 20:07:41.000000000 +0200
@@ -21,6 +21,7 @@
#include <shell.h>
#include <signal.h>
+#include "defs.h"
#include "shtable.h"
#include "ulimit.h"
#include "name.h"
@@ -36,13 +37,17 @@
# define bltin(x) 0
#endif
-#if SHOPT_CMDLIB_DIR
-# undef SHOPT_CMDLIB_BLTIN
-# define SHOPT_CMDLIB_BLTIN 1
-# define BDIR SH_CMDLIB_DIR "/"
-#else
-# define BDIR
+#ifndef SH_CMDLIB_DIR
+# define SH_CMDLIB_DIR "/opt/ast/bin"
+#endif
+#if defined(SHOPT_CMDLIB_DIR) && !defined(SHOPT_CMDLIB_HDR)
+# define SHOPT_CMDLIB_HDR <cmdlist.h>
#endif
+#define Q(f) #f /* libpp cpp workaround -- fixed 2005-04-11 */
+#define CMDLIST(f) SH_CMDLIB_DIR "/" Q(f), NV_BLTIN|NV_NOFREE, bltin(f),
+
+#undef basename
+#undef dirname
/*
* The order up through "[" is significant
@@ -62,6 +67,7 @@
"test", NV_BLTIN|BLT_ENV|NV_NOFREE, bltin(test),
"[", NV_BLTIN|BLT_ENV, bltin(test),
"let", NV_BLTIN|BLT_ENV, bltin(let),
+ "export", NV_BLTIN|BLT_SPC|BLT_DCL, bltin(readonly),
#if SHOPT_BASH
"local", NV_BLTIN|BLT_ENV|BLT_SPC|BLT_DCL,bltin(typeset),
#endif
@@ -72,7 +78,6 @@
"alias", NV_BLTIN|BLT_SPC|BLT_DCL, bltin(alias),
"hash", NV_BLTIN|BLT_SPC|BLT_DCL, bltin(alias),
"exit", NV_BLTIN|BLT_ENV|BLT_SPC, bltin(return),
- "export", NV_BLTIN|BLT_SPC|BLT_DCL, bltin(readonly),
"eval", NV_BLTIN|BLT_ENV|BLT_SPC|BLT_EXIT,bltin(eval),
"fc", NV_BLTIN|BLT_ENV|BLT_EXIT, bltin(hist),
"hist", NV_BLTIN|BLT_ENV|BLT_EXIT, bltin(hist),
@@ -100,7 +105,7 @@
"jobs", NV_BLTIN|BLT_ENV, bltin(jobs),
#endif /* JOBS */
"false", NV_BLTIN|BLT_ENV, bltin(false),
- "/bin/getconf", NV_BLTIN|BLT_ENV, bltin(getconf),
+SH_CMDLIB_DIR "/getconf",NV_BLTIN|BLT_ENV, bltin(getconf),
"getopts", NV_BLTIN|BLT_ENV, bltin(getopts),
"print", NV_BLTIN|BLT_ENV, bltin(print),
"printf", NV_BLTIN|NV_NOFREE, bltin(printf),
@@ -120,25 +125,21 @@
"wait", NV_BLTIN|BLT_ENV|BLT_EXIT, bltin(wait),
"type", NV_BLTIN|BLT_ENV, bltin(whence),
"whence", NV_BLTIN|BLT_ENV, bltin(whence),
-#if SHOPT_CMDLIB_BLTIN
-#define Q(f) #f /* libpp cpp workaround -- fixed 2005-04-11 */
-#define CMDLIST(f) BDIR Q(f), NV_BLTIN|NV_NOFREE, bltin(f),
-#include <cmdlist.h>
-#undef CMDLIST
-#undef Q
+#ifdef SHOPT_CMDLIB_HDR
+#include SHOPT_CMDLIB_HDR
#else
- "/bin/basename",NV_BLTIN|NV_NOFREE, bltin(basename),
- "/bin/chmod", NV_BLTIN|NV_NOFREE, bltin(chmod),
- "/bin/dirname", NV_BLTIN|NV_NOFREE, bltin(dirname),
- "/bin/head", NV_BLTIN|NV_NOFREE, bltin(head),
- "/bin/mkdir", NV_BLTIN|NV_NOFREE, bltin(mkdir),
- "/bin/logname", NV_BLTIN|NV_NOFREE, bltin(logname),
- "/bin/cat", NV_BLTIN|NV_NOFREE, bltin(cat),
- "/bin/cmp", NV_BLTIN|NV_NOFREE, bltin(cmp),
- "/bin/cut", NV_BLTIN|NV_NOFREE, bltin(cut),
- "/bin/uname", NV_BLTIN|NV_NOFREE, bltin(uname),
- "/bin/wc", NV_BLTIN|NV_NOFREE, bltin(wc),
- "/bin/sync", NV_BLTIN|NV_NOFREE, bltin(sync),
+ CMDLIST(basename)
+ CMDLIST(chmod)
+ CMDLIST(dirname)
+ CMDLIST(head)
+ CMDLIST(mkdir)
+ CMDLIST(logname)
+ CMDLIST(cat)
+ CMDLIST(cmp)
+ CMDLIST(cut)
+ CMDLIST(uname)
+ CMDLIST(wc)
+ CMDLIST(sync)
#endif
"", 0, 0
};
@@ -1170,6 +1171,9 @@
"the collating element \aname\a.]"
"[+-?The escape sequence \b\\x{\b\ahex\a\b}\b expands to the "
"character corresponding to the hexidecimal value \ahex\a.]"
+ "[+-?The format modifier flag \b=\b can be used to center a field to "
+ "a specified width. When the output is a terminal, the "
+ "character width is used rather than the number of bytes.]"
"[+-?Each of the integral format specifiers can have a third "
"modifier after width and precision that specifies the "
"base of the conversion from 2 to 64. In this case the "
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/edit/emacs.c ksh93_2007_03_28/src/cmd/ksh93/edit/emacs.c
--- ksh93_2007_01_11/src/cmd/ksh93/edit/emacs.c 2006-11-29 23:12:00.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/edit/emacs.c 2007-02-27 02:53:00.000000000 +0100
@@ -63,6 +63,7 @@
#include <ast.h>
#include <ctype.h>
+#include "FEATURE/cmds"
#if KSHELL
# include "defs.h"
#endif /* KSHELL */
@@ -989,6 +990,12 @@
draw(ep,UPDATE);
return(-1);
+#ifdef _cmd_tput
+ case cntl('L'): /* clear screen */
+ sh_trap("tput clear", 0);
+ draw(ep,REFRESH);
+ return(-1);
+#endif
case '[': /* feature not in book */
switch(i=ed_getchar(ep->ed,1))
{
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/features/math.sh ksh93_2007_03_28/src/cmd/ksh93/features/math.sh
--- ksh93_2007_01_11/src/cmd/ksh93/features/math.sh 2007-01-04 23:03:11.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/features/math.sh 2007-02-06 20:17:30.000000000 +0100
@@ -20,7 +20,7 @@
: generate the ksh math builtin table
: include math.tab
-# @(#)math.sh (AT&T Research) 2007-01-04
+# @(#)math.sh (AT&T Research) 2007-02-02
command=$0
iffeflags="-n -v -F ast_standards.h"
@@ -51,23 +51,19 @@
eval `iffe $iffeflags -c "$cc" - typ long.double : lib $tests $iffehdrs $iffelibs 2>&$stderr`
lib=
-mac=
for name in $names
do eval x='$'_lib_${name}l y='$'_lib_${name}
case $x in
1) lib="$lib,${name}l" ;;
- '') mac="$mac,${name}l" ;;
esac
case $y in
1) case $x in
'') lib="$lib,${name}" ;;
esac
;;
- '') mac="$mac,${name}" ;;
esac
done
-eval `iffe $iffeflags -c "$cc" - dat,npt $lib $iffehdrs $iffelibs 2>&$stderr`
-eval `iffe $iffeflags -c "$cc" - mac $mac $iffehdrs 2>&$stderr`
+eval `iffe $iffeflags -c "$cc" - dat,npt,mac $lib $iffehdrs $iffelibs 2>&$stderr`
cat <<!
#pragma prototyped
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/features/poll ksh93_2007_03_28/src/cmd/ksh93/features/poll
--- ksh93_2007_01_11/src/cmd/ksh93/features/poll 2006-12-10 10:27:00.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/features/poll 2007-03-20 22:33:33.000000000 +0100
@@ -60,6 +60,7 @@
}end
tst socketpair_devfd note{ /dev/fd/N handles socketpair() }end execute{
#include <ast.h>
+ #include <fs3d.h>
#include <sys/types.h>
#include <sys/socket.h>
int main()
@@ -67,6 +68,7 @@
int devfd;
int n;
int sfd[2];
+ fs3d(FS3D_OFF);
close(0);
open("/dev/null", O_RDONLY);
if ((n = open("/dev/fd/0", O_RDONLY)) < 0)
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/builtins.h ksh93_2007_03_28/src/cmd/ksh93/include/builtins.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/builtins.h 2004-01-14 21:33:18.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/builtins.h 2007-03-27 20:09:44.000000000 +0200
@@ -38,8 +38,9 @@
#define SYSTEST (sh.bltin_cmds+10)
#define SYSBRACKET (sh.bltin_cmds+11)
#define SYSLET (sh.bltin_cmds+12)
+#define SYSEXPORT (sh.bltin_cmds+13)
#if SHOPT_BASH
-# define SYSLOCAL (sh.bltin_cmds+13)
+# define SYSLOCAL (sh.bltin_cmds+14)
#else
# define SYSLOCAL 0
#endif
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/defs.h ksh93_2007_03_28/src/cmd/ksh93/include/defs.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/defs.h 2007-01-12 00:43:17.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/defs.h 2007-03-27 20:14:45.000000000 +0200
@@ -69,9 +69,9 @@
int execbrk;
int loopcnt;
int firstline;
- long optindex;
- long optnum;
- long tmout; /* value for TMOUT */
+ int32_t optindex;
+ int32_t optnum;
+ int32_t tmout; /* value for TMOUT */
short optchar;
short opterror;
int ioset;
@@ -133,7 +133,7 @@
pid_t pid; /* process id of shell */ \
pid_t bckpid; /* background process id */ \
pid_t cpid; \
- long ppid; /* parent process id of shell */ \
+ int32_t ppid; /* parent process id of shell */ \
int topfd; \
int sigmax; /* maximum number of signals */ \
int savesig; \
@@ -192,6 +192,7 @@
void *jmpbuffer; \
void *mktype; \
Sfio_t *strbuf; \
+ Dt_t *last_root; \
char ifstable[256]; \
Shopt_t offoptions;
@@ -209,6 +210,10 @@
#define SH_DICT (void*)e_dict
#endif
+#ifndef SH_CMDLIB_DIR
+#define SH_CMDLIB_DIR "/opt/ast/bin"
+#endif
+
/* states */
/* low numbered states are same as options */
#define SH_NOFORK 0 /* set when fork not necessary, not a state */
@@ -356,11 +361,11 @@
#define sh_onstate(x) (sh.st.states |= sh_state(x))
#define sh_offstate(x) (sh.st.states &= ~sh_state(x))
#define sh_getstate() (sh.st.states)
-#define sh_setstate(x) (sh.st.states = x)
+#define sh_setstate(x) (sh.st.states = (x))
#define sh_sigcheck() do{if(sh.trapnote&SH_SIGSET)sh_exit(SH_EXITSIG);} while(0)
-extern time_t sh_mailchk;
+extern int32_t sh_mailchk;
extern const char e_dict[];
/* sh_printopts() mode flags -- set --[no]option by default */
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/edit.h ksh93_2007_03_28/src/cmd/ksh93/include/edit.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/edit.h 2006-12-19 15:41:39.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/edit.h 2007-02-14 08:56:39.000000000 +0100
@@ -129,7 +129,7 @@
char e_inmacro; /* processing macro expansion */
#if KSHELL
char e_vi_insert[2]; /* for sh_keytrap */
- long e_col; /* for sh_keytrap */
+ int32_t e_col; /* for sh_keytrap */
#else
char e_prbuff[PRSIZE]; /* prompt buffer */
#endif /* KSHELL */
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/fault.h ksh93_2007_03_28/src/cmd/ksh93/include/fault.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/fault.h 2003-12-19 17:05:05.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/fault.h 2007-03-22 20:54:19.000000000 +0100
@@ -94,7 +94,7 @@
int mode;
struct openlist *olist;
#if (ERROR_VERSION >= 20030214L)
- struct Error_context_s err;
+ Error_context_t err;
#else
struct errorcontext err;
#endif
@@ -103,7 +103,7 @@
#define sh_pushcontext(bp,n) ( (bp)->mode=(n) , (bp)->olist=0, \
(bp)->topfd=sh.topfd, (bp)->prev=sh.jmplist, \
(bp)->err = *ERROR_CONTEXT_BASE, \
- sh.jmplist = (sigjmp_buf*)(bp) \
+ sh.jmplist = (sigjmp_buf*)(&(bp)->buff) \
)
#define sh_popcontext(bp) (sh.jmplist=(bp)->prev, errorpop(&((bp)->err)))
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/fcin.h ksh93_2007_03_28/src/cmd/ksh93/include/fcin.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/fcin.h 2003-02-26 04:29:14.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/fcin.h 2007-03-23 09:14:01.000000000 +0100
@@ -37,6 +37,7 @@
unsigned char *fcptr; /* pointer to next input char */
unsigned char fcchar; /* saved character */
void (*fcfun)(Sfio_t*,const char*,int); /* advance function */
+ int fcleft; /* for multibyte boundary */
Sfoff_t fcoff; /* offset for last read */
} Fcin_t;
@@ -54,6 +55,7 @@
extern int fcfopen(Sfio_t*);
extern int fcclose(void);
void fcnotify(void(*)(Sfio_t*,const char*,int));
+extern int fcmbstate(const char*,int*,int*);
extern Fcin_t _Fcin; /* used by macros */
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/history.h ksh93_2007_03_28/src/cmd/ksh93/include/history.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/history.h 2003-03-21 18:35:49.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/history.h 2007-02-15 11:00:45.000000000 +0100
@@ -26,7 +26,6 @@
*/
#include <ast.h>
-#include <sfio.h>
#define HIST_CHAR '!'
#define HIST_VERSION 1 /* history file format version no. */
@@ -36,7 +35,7 @@
Sfdisc_t histdisc; /* discipline for history */
Sfio_t *histfp; /* history file stream pointer */
char *histname; /* name of history file */
- long histind; /* current command number index */
+ int32_t histind; /* current command number index */
int histsize; /* number of accessible history lines */
#ifdef _HIST_PRIVATE
_HIST_PRIVATE
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/io.h ksh93_2007_03_28/src/cmd/ksh93/include/io.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/io.h 2005-11-23 16:53:38.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/io.h 2007-03-05 15:26:03.000000000 +0100
@@ -75,7 +75,6 @@
__EXPORT__
#endif
extern Sfio_t *sh_iostream(int);
-struct ionod;
extern int sh_redirect(struct ionod*,int);
extern void sh_iosave(int,int);
extern void sh_iounsave(void);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/lexstates.h ksh93_2007_03_28/src/cmd/ksh93/include/lexstates.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/lexstates.h 2007-01-05 23:23:56.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/lexstates.h 2007-03-14 17:01:46.000000000 +0100
@@ -79,6 +79,8 @@
#define ST_QNEST 10
#define ST_NONE 11
+#include "FEATURE/locale"
+
#if _hdr_wchar
# include <wchar.h>
# if _hdr_wctype
@@ -102,13 +104,19 @@
# define isblank(x) ((x)==' '||(x)=='\t')
#endif
+#undef LEN
#if SHOPT_MULTIBYTE
+ static int NXT, LEN;
# define isaname(c) ((c)>0xff?isalpha(c): sh_lexstates[ST_NAME][(c)]==0)
# define isaletter(c) ((c)>0xff?isalpha(c): sh_lexstates[ST_DOL][(c)]==S_ALP && (c)!='.')
#else
+# undef mbwide
+# define mbwide() (0)
+# define LEN 1
# define isaname(c) (sh_lexstates[ST_NAME][c]==0)
# define isaletter(c) (sh_lexstates[ST_DOL][c]==S_ALP && (c)!='.')
#endif
+#define STATE(s,c) (mbwide()?(c=fcmbstate(s,&NXT,&LEN),NXT):s[c=fcget()])
#define isadigit(c) (sh_lexstates[ST_DOL][c]==S_DIG)
#define isastchar(c) ((c)=='@' || (c)=='*')
#define isexp(c) (sh_lexstates[ST_MACRO][c]==S_PAT||(c)=='$'||(c)=='`')
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/name.h ksh93_2007_03_28/src/cmd/ksh93/include/name.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/name.h 2006-11-13 22:07:05.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/name.h 2007-03-05 14:52:11.000000000 +0100
@@ -35,22 +35,23 @@
/* Nodes can have all kinds of values */
union Value
{
- const char *cp;
- int *ip;
- char c;
- int i;
- unsigned u;
- long *lp;
- Sflong_t *llp; /* for long long arithmetic */
- short s;
- double *dp; /* for floating point arithmetic */
- Sfdouble_t *ldp; /* for long floating point arithmetic */
- struct Namarray *array; /* for array node */
- struct Namval *np; /* for Namval_t node */
- union Value *up; /* for indirect node */
- struct Ufunction *rp; /* shell user defined functions */
- struct Namfun *funp; /* discipline pointer */
- int (*bfp)(int,char*[],void*);/* builtin entry point function pointer */
+ const char *cp;
+ int *ip;
+ char c;
+ int i;
+ unsigned int u;
+ int32_t *lp;
+ Sflong_t *llp; /* for long long arithmetic */
+ int16_t s;
+ double *dp; /* for floating point arithmetic */
+ Sfdouble_t *ldp; /* for long floating point arithmetic */
+ struct Namarray *array; /* for array node */
+ struct Namval *np; /* for Namval_t node */
+ union Value *up; /* for indirect node */
+ struct Ufunction *rp; /* shell user defined functions */
+ struct Namfun *funp; /* discipline pointer */
+ struct Namref *nrp; /* name reference */
+ int (*bfp)(int,char*[],void*);/* builtin entry point function pointer */
};
#include "nval.h"
@@ -74,6 +75,14 @@
#define ARRAY_DELETE 2
+struct Namref
+{
+ Namval_t *np;
+ Namval_t *table;
+ Dt_t *root;
+ char *sub;
+};
+
/* This describes a user shell function node */
struct Ufunction
{
@@ -84,6 +93,10 @@
char *fname; /* file name where function defined */
};
+#ifndef ARG_RAW
+ struct argnod;
+#endif /* !ARG_RAW */
+
/* attributes of Namval_t items */
/* The following attributes are for internal use */
@@ -120,8 +133,11 @@
#define nv_setattr(n,f) ((n)->nvflag = (f))
#define nv_context(n) ((void*)(n)->nvfun) /* for builtins */
-#define nv_table(n) ((Namval_t*)((n)->nvfun)) /* for references */
-#define nv_refnode(n) ((Namval_t*)((n)->nvalue.np)) /* for references */
+/* The following are for name references */
+#define nv_refnode(n) ((n)->nvalue.nrp->np)
+#define nv_reftree(n) ((n)->nvalue.nrp->root)
+#define nv_reftable(n) ((n)->nvalue.nrp->table)
+#define nv_refsub(n) ((n)->nvalue.nrp->sub)
#if SHOPT_OO
# define nv_class(np) (nv_isattr(np,NV_REF|NV_IMPORT)?0:(Namval_t*)((np)->nvenv))
#endif /* SHOPT_OO */
@@ -141,7 +157,6 @@
extern int array_maxindex(Namval_t*);
extern char *nv_endsubscript(Namval_t*, char*, int);
extern Namfun_t *nv_cover(Namval_t*);
-struct argnod; /* struct not declared yet */
extern Namarr_t *nv_arrayptr(Namval_t*);
extern int nv_setnotify(Namval_t*,char **);
extern int nv_unsetnotify(Namval_t*,char **);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/nval.h ksh93_2007_03_28/src/cmd/ksh93/include/nval.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/nval.h 2006-09-08 05:18:52.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/include/nval.h 2007-03-21 16:37:54.000000000 +0100
@@ -46,6 +46,7 @@
typedef struct Namarray Namarr_t;
typedef struct Nambltin Nambltin_t;
typedef struct Namtype Namtype_t;
+
/*
* This defines the template for nodes that have their own assignment
* and or lookup functions
@@ -188,6 +189,16 @@
#define NV_PUBLIC (~(NV_NOSCOPE|NV_ASSIGN|NV_IDENT|NV_VARNAME|NV_NOADD))
+/* numeric types */
+#define NV_INT16 (NV_SHORT|NV_INTEGER)
+#define NV_UINT16 (NV_UNSIGN|NV_SHORT|NV_INTEGER)
+#define NV_INT32 (NV_INTEGER)
+#define NV_UNT32 (NV_UNSIGN|NV_INTEGER)
+#define NV_INT64 (NV_LONG|NV_INTEGER)
+#define NV_UINT64 (NV_UNSIGN|NV_LONG|NV_INTEGER)
+#define NV_FLOAT (NV_SHORT|NV_DOUBLE|NV_INTEGER)
+#define NV_LDOUBLE (NV_LONG|NV_DOUBLE|NV_INTEGER)
+
/* name-value pair macros */
#define nv_isattr(np,f) ((np)->nvflag & (f))
#define nv_onattr(n,f) ((n)->nvflag |= (f))
@@ -243,8 +254,8 @@
extern void *nv_context(Namval_t*);
extern Namval_t *nv_create(const char*, Dt_t*, int,Namfun_t*);
extern Dt_t *nv_dict(Namval_t*);
-extern Sfdouble_t nv_getn(Namval_t*, Namfun_t*);
-extern Sfdouble_t nv_getnum(Namval_t*);
+extern Sfdouble_t nv_getn(Namval_t*, Namfun_t*);
+extern Sfdouble_t nv_getnum(Namval_t*);
extern char *nv_getv(Namval_t*, Namfun_t*);
extern char *nv_getval(Namval_t*);
extern Namfun_t *nv_hasdisc(Namval_t*, const Namdisc_t*);
@@ -257,7 +268,7 @@
extern int nv_scan(Dt_t*,void(*)(Namval_t*,void*),void*,int,int);
extern Namval_t *nv_scoped(Namval_t*);
extern char *nv_setdisc(Namval_t*,const char*,Namval_t*,Namfun_t*);
-extern void nv_setref(Namval_t*);
+extern void nv_setref(Namval_t*, Dt_t*,int);
extern int nv_settype(Namval_t*, Namval_t*, int);
extern void nv_setvec(Namval_t*,int,int,char*[]);
extern void nv_setvtree(Namval_t*);
@@ -267,6 +278,7 @@
extern Namval_t *nv_search(const char *, Dt_t*, int);
extern void nv_unscope(void);
extern char *nv_name(Namval_t*);
+extern Namval_t *nv_type(Namval_t*);
extern const Namdisc_t *nv_discfun(int);
#ifdef _DLL
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/streval.h ksh93_2007_03_28/src/cmd/ksh93/include/streval.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/streval.h 2006-10-13 17:44:24.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/include/streval.h 2007-02-12 17:55:26.000000000 +0100
@@ -33,34 +33,34 @@
#endif
#if _ast_fltmax_double
-#define LDBL_LONGLONG_MAX DBL_LONGLONG_MAX
-#define LDBL_ULONGLONG_MAX DBL_ULONGLONG_MAX
-#define LDBL_LONGLONG_MIN DBL_LONGLONG_MIN
+#define LDBL_LLONG_MAX DBL_LLONG_MAX
+#define LDBL_ULLONG_MAX DBL_ULLONG_MAX
+#define LDBL_LLONG_MIN DBL_LLONG_MIN
#endif
-#ifndef LDBL_LONGLONG_MAX
+#ifndef LDBL_LLONG_MAX
# ifdef LLONG_MAX
-# define LDBL_LONGLONG_MAX ((Sfdouble_t)LLONG_MAX)
+# define LDBL_LLONG_MAX ((Sfdouble_t)LLONG_MAX)
# else
-# ifdef LONGLONG_MAX
-# define LDBL_LONGLONG_MAX ((Sfdouble_t)LONGLONG_MAX)
+# ifdef LLONG_MAX
+# define LDBL_LLONG_MAX ((Sfdouble_t)LLONG_MAX)
# else
-# define LDBL_LONGLONG_MAX ((Sfdouble_t)((((Sflong_t)1) << (8*sizeof(Sflong_t)-1)) -1 ))
+# define LDBL_LLONG_MAX ((Sfdouble_t)((((Sflong_t)1) << (8*sizeof(Sflong_t)-1)) -1 ))
# endif
# endif
#endif
-#ifndef LDBL_ULONGLONG_MAX
+#ifndef LDBL_ULLONG_MAX
# ifdef ULLONG_MAX
-# define LDBL_ULONGLONG_MAX ((Sfdouble_t)ULLONG_MAX)
+# define LDBL_ULLONG_MAX ((Sfdouble_t)ULLONG_MAX)
# else
-# define LDBL_ULONGLONG_MAX (2.*((Sfdouble_t)LDBL_LONGLONG_MAX))
+# define LDBL_ULLONG_MAX (2.*((Sfdouble_t)LDBL_LLONG_MAX))
# endif
#endif
-#ifndef LDBL_LONGLONG_MIN
+#ifndef LDBL_LLONG_MIN
# ifdef LLONG_MIN
-# define LDBL_LONGLONG_MIN ((Sfdouble_t)LLONG_MIN)
+# define LDBL_LLONG_MIN ((Sfdouble_t)LLONG_MIN)
# else
-# define LDBL_LONGLONG_MIN (-LDBL_LONGLONG_MAX)
+# define LDBL_LLONG_MIN (-LDBL_LLONG_MAX)
# endif
#endif
#ifndef LDBL_DIG
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/include/version.h ksh93_2007_03_28/src/cmd/ksh93/include/version.h
--- ksh93_2007_01_11/src/cmd/ksh93/include/version.h 2006-11-17 19:46:51.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/include/version.h 2007-03-06 18:35:34.000000000 +0100
@@ -17,4 +17,4 @@
* David Korn <dgk at research.att.com> *
* *
***********************************************************************/
-#define SH_RELEASE "1993-12-28 s"
+#define SH_RELEASE "1993-12-28 s+"
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/Makefile ksh93_2007_03_28/src/cmd/ksh93/Makefile
--- ksh93_2007_01_11/src/cmd/ksh93/Makefile 2006-10-18 20:20:32.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/Makefile 2007-03-25 05:47:28.000000000 +0200
@@ -6,6 +6,7 @@
VERSION = 1.1
LICENSE = since=1982,author=dgk
CATALOG = libshell
+ERROR_CONTEXT_T == Error_context_t /* workaround until switch from errorpush()/errorpop() => errorctx() */
/*
* set these variables to 1 to enable, 0 to disable, null to probe
@@ -16,8 +17,8 @@
SHOPT_ACCTFILE == /* per user accounting info */
SHOPT_BASH == /* bash compatibility code */
SHOPT_BRACEPAT == 1 /* C-shell {...,...} expansions (, required) */
-SHOPT_CMDLIB_BLTIN == 0 /* all -lcmd commands builtin */
-SHOPT_CMDLIB_DIR == /* SHOPT_CMDLIB_BLTIN prefix SH_CMDLIB_DIR */
+SHOPT_CMDLIB_HDR == /* -lcmd builtin list: <cmdlist.h> */
+SHOPT_CMDLIB_DIR == /* SHOPT_CMDLIB_HDR prefix SH_CMDLIB_DIR + <cmdlist.h> */
SHOPT_CRNL == /* accept <cr><nl> for <nl> */
SHOPT_DYNAMIC == 1 /* dynamic loading for builtins */
SHOPT_ECHOPRINT == /* make echo equivalent to print */
@@ -76,7 +77,7 @@
KSHELL == 1 /* this is ksh */
-SH_CMDLIB_DIR == "/opt/ast/bin" /* SHOPT_CMDLIB_DIR dir prefix */
+SH_CMDLIB_DIR == /* SHOPT_CMDLIB_DIR dir prefix */
SH_DICT == /* message catalog */
DEBUG == /* debugging purposes only */
@@ -96,18 +97,18 @@
LDFLAGS += $(CC.LD.LAZY) $(CC.LD.NORECORD)
end
-if ! "$(-mam:N=static*)"
- if CC.HOSTTYPE == "sol([789]|[1-9][0-9]).*"
- LIBS_opt += +lsocket -lnsl
- elif CC.HOSTTYPE != "sgi.mips*"
- LIBS_opt += +lsocket +lnsl
- end
+if "$(-mam:N=static*)"
+ LIBS_opt += -lsocket -lnsl
+elif CC.HOSTTYPE == "sol?([789]|[1-9][0-9]).*"
+ LIBS_opt += +lsocket -lnsl
+elif CC.HOSTTYPE != "sgi.mips*"
+ LIBS_opt += +lsocket +lnsl
end
if CC.HOSTTYPE == "linux.sparc"
/* the linux.sparc linker still has some problems */
LIBS_opt += -ldll
end
-LIBS_opt += -lsecdb +lintl -ldl
+LIBS_opt += -lsecdb -ldl
if CC.HOSTTYPE == "sol.*"
LIBS_opt += +lw
end
@@ -184,8 +185,9 @@
echo ";" >> $(<)
end
-:: math.tab syscall.s mamexec mamstate.c deparse.c shopen.c $(DOCFILES) \
- bash.c bash_pre_rc.sh hexpand.c mkservice.c
+:: math.tab syscall.s mamexec mamstate.c deparse.c $(DOCFILES) \
+ bash.c bash_pre_rc.sh hexpand.c mkservice.c \
+ shopen.mk shopen.c
:: shtests \
alias.sh append.sh arith.sh arrays.sh attributes.sh basic.sh \
@@ -222,8 +224,9 @@
mkdir $tmp
for i in *.sh
do tst=$tmp/shcomp-${i%.sh}.ksh
- shcomp $i > $tst
- SHELL=$(*:O=1:P=A) $(*:O=1:P=A) $(*:O=3:B) $tst
+ if $(*:O=4) $i > $tst
+ then SHELL=$(*:O=1:P=A) $(*:O=1:P=A) $(*:O=3:B) $tst
+ fi
rm -f $tst
done
rm -rf $tmp
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/Mamfile ksh93_2007_03_28/src/cmd/ksh93/Mamfile
--- ksh93_2007_01_11/src/cmd/ksh93/Mamfile 2007-01-12 10:54:39.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/Mamfile 2007-03-29 19:07:09.000000000 +0200
@@ -1,4 +1,4 @@
-info mam static 00000 1994-07-17 make (AT&T Research) 5.2 2007-01-11
+info mam static 00000 1994-07-17 make (AT&T Research) 5.2 2007-03-26
setv INSTALLROOT ../../..
setv PACKAGE_ast_INCLUDE ${INSTALLROOT}/include/ast
setv PACKAGE_ast_LIB ${INSTALLROOT}/lib
@@ -140,7 +140,7 @@
done sh/pmain.c
meta pmain.o %.c>%.o sh/pmain.c pmain
prev sh/pmain.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -c sh/pmain.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/pmain.c
done pmain.o generated
make libshell.a archive
make shell.req
@@ -152,7 +152,7 @@
exec - case "" in
exec - *?) echo " " ;;
exec - esac
-exec - for i in shell dll cmd ast m jobs i secdb intl dl
+exec - for i in shell dll cmd ast m jobs i socket nsl secdb dl
exec - do case $i in
exec - "shell"|shell)
exec - ;;
@@ -187,11 +187,12 @@
done +ljobs dontcare virtual
make +li
done +li dontcare virtual
+make ${mam_libsocket}
+done ${mam_libsocket} dontcare virtual
+bind -lnsl dontcare
make ${mam_libsecdb}
done ${mam_libsecdb} dontcare virtual
-make +lintl
-done +lintl dontcare virtual
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/time
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/time
make ${PACKAGE_ast_INCLUDE}/times.h implicit
make ${PACKAGE_ast_INCLUDE}/ast_time.h implicit
done ${PACKAGE_ast_INCLUDE}/ast_time.h dontcare
@@ -208,9 +209,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/dynamic
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/dynamic
make ${PACKAGE_ast_INCLUDE}/fs3d.h implicit
prev ${PACKAGE_ast_INCLUDE}/ast_fs.h implicit
prev ${PACKAGE_ast_INCLUDE}/prototyped.h implicit
@@ -223,9 +224,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/options
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/options
done FEATURE/options dontcare generated
prev ${PACKAGE_ast_INCLUDE}/option.h implicit
done include/builtins.h
@@ -246,9 +247,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/sigfeatures
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/sigfeatures
done FEATURE/sigfeatures dontcare generated
make FEATURE/setjmp implicit
meta FEATURE/setjmp features/%>FEATURE/% features/setjmp setjmp
@@ -257,9 +258,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/setjmp
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/setjmp
done FEATURE/setjmp dontcare generated
prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit
prev ${PACKAGE_ast_INCLUDE}/error.h implicit
@@ -267,7 +268,6 @@
done ${PACKAGE_ast_INCLUDE}/sig.h dontcare
done include/fault.h
make include/history.h implicit
-prev ${PACKAGE_ast_INCLUDE}/sfio.h implicit
prev ${PACKAGE_ast_INCLUDE}/ast.h implicit
done include/history.h
prev ${PACKAGE_ast_INCLUDE}/cdt.h implicit
@@ -279,7 +279,7 @@
done bltins/alarm.c
meta alarm.o %.c>%.o bltins/alarm.c alarm
prev bltins/alarm.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/alarm.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/alarm.c
done alarm.o generated
make cd_pwd.o
make bltins/cd_pwd.c
@@ -299,9 +299,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : def acct
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : def acct
done FEATURE/acct dontcare generated
prev include/nval.h implicit
prev FEATURE/options implicit
@@ -317,7 +317,7 @@
done bltins/cd_pwd.c
meta cd_pwd.o %.c>%.o bltins/cd_pwd.c cd_pwd
prev bltins/cd_pwd.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/cd_pwd.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/cd_pwd.c
done cd_pwd.o generated
make cflow.o
make bltins/cflow.c
@@ -332,7 +332,7 @@
done bltins/cflow.c
meta cflow.o %.c>%.o bltins/cflow.c cflow
prev bltins/cflow.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/cflow.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/cflow.c
done cflow.o generated
make deparse.o
make sh/deparse.c
@@ -345,7 +345,7 @@
done sh/deparse.c
meta deparse.o %.c>%.o sh/deparse.c deparse
prev sh/deparse.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/deparse.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/deparse.c
done deparse.o generated
make getopts.o
make bltins/getopts.c
@@ -357,7 +357,7 @@
done bltins/getopts.c
meta getopts.o %.c>%.o bltins/getopts.c getopts
prev bltins/getopts.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/getopts.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/getopts.c
done getopts.o generated
make hist.o
make bltins/hist.c
@@ -372,9 +372,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/ttys
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/ttys
done FEATURE/ttys dontcare generated
done include/terminal.h dontcare
prev FEATURE/setjmp implicit
@@ -386,9 +386,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/locale
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/locale
done FEATURE/locale dontcare generated
prev FEATURE/options implicit
done include/edit.h dontcare
@@ -407,7 +407,7 @@
done bltins/hist.c
meta hist.o %.c>%.o bltins/hist.c hist
prev bltins/hist.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -c bltins/hist.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DERROR_CONTEXT_T=Error_context_t -DSHOPT_DYNAMIC -c bltins/hist.c
done hist.o generated
make misc.o
make bltins/misc.c
@@ -428,7 +428,7 @@
done bltins/misc.c
meta misc.o %.c>%.o bltins/misc.c misc
prev bltins/misc.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_ESH -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c bltins/misc.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_ESH -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c bltins/misc.c
done misc.o generated
make print.o
make bltins/print.c
@@ -466,7 +466,7 @@
done bltins/print.c
meta print.o %.c>%.o bltins/print.c print
prev bltins/print.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DSHOPT_PFSH -DSHOPT_ESH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c bltins/print.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DSHOPT_PFSH -DSHOPT_ESH -DKSHELL -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c bltins/print.c
done print.o generated
make read.o
make bltins/read.c
@@ -490,6 +490,7 @@
prev ${PACKAGE_ast_INCLUDE}/ast_common.h implicit
done ${PACKAGE_ast_INCLUDE}/ast_wchar.h dontcare
done ${PACKAGE_ast_INCLUDE}/wchar.h dontcare
+prev FEATURE/locale implicit
done include/lexstates.h
prev include/variables.h implicit
prev include/defs.h implicit
@@ -498,7 +499,7 @@
done bltins/read.c
meta read.o %.c>%.o bltins/read.c read
prev bltins/read.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -c bltins/read.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c bltins/read.c
done read.o generated
make sleep.o
make bltins/sleep.c
@@ -509,9 +510,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/poll
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/poll
done FEATURE/poll generated
prev FEATURE/time implicit
prev include/builtins.h implicit
@@ -520,7 +521,7 @@
done bltins/sleep.c
meta sleep.o %.c>%.o bltins/sleep.c sleep
prev bltins/sleep.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/sleep.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/sleep.c
done sleep.o generated
make trap.o
make bltins/trap.c
@@ -530,7 +531,7 @@
done bltins/trap.c
meta trap.o %.c>%.o bltins/trap.c trap
prev bltins/trap.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/trap.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c bltins/trap.c
done trap.o generated
make test.o
make bltins/test.c
@@ -543,9 +544,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/externs
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/externs
done FEATURE/externs generated
prev include/builtins.h implicit
prev include/test.h implicit
@@ -557,7 +558,7 @@
done bltins/test.c
meta test.o %.c>%.o bltins/test.c test
prev bltins/test.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/test.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/test.c
done test.o generated
make typeset.o
make bltins/typeset.c
@@ -572,7 +573,7 @@
done bltins/typeset.c
meta typeset.o %.c>%.o bltins/typeset.c typeset
prev bltins/typeset.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_DYNAMIC -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_ESH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -c bltins/typeset.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_DYNAMIC -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_ESH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -c bltins/typeset.c
done typeset.o generated
make ulimit.o
make bltins/ulimit.c
@@ -584,9 +585,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/rlimits
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/rlimits
done FEATURE/rlimits dontcare generated
prev FEATURE/time implicit
done include/ulimit.h
@@ -599,7 +600,7 @@
done bltins/ulimit.c
meta ulimit.o %.c>%.o bltins/ulimit.c ulimit
prev bltins/ulimit.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_DYNAMIC -c bltins/ulimit.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c bltins/ulimit.c
done ulimit.o generated
make umask.o
make bltins/umask.c
@@ -612,7 +613,7 @@
done bltins/umask.c
meta umask.o %.c>%.o bltins/umask.c umask
prev bltins/umask.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_DYNAMIC -c bltins/umask.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c bltins/umask.c
done umask.o generated
make whence.o
make bltins/whence.c
@@ -632,7 +633,7 @@
done bltins/whence.c
meta whence.o %.c>%.o bltins/whence.c whence
prev bltins/whence.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/whence.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c bltins/whence.c
done whence.o generated
make main.o
make sh/main.c
@@ -650,18 +651,18 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : def execargs
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : def execargs
done FEATURE/execargs generated
make FEATURE/pstat implicit
meta FEATURE/pstat >FEATURE/% pstat
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : def pstat
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : def pstat
done FEATURE/pstat generated
prev FEATURE/time implicit
make include/timeout.h implicit
@@ -683,7 +684,7 @@
done sh/main.c
meta main.o %.c>%.o sh/main.c main
prev sh/main.c
-exec - ${CC} ${mam_cc_FLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -D_PACKAGE_ast -DSHOPT_ESH -DSHOPT_KIA -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c sh/main.c
+exec - ${CC} ${mam_cc_FLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -D_PACKAGE_ast -DSHOPT_ESH -DSHOPT_KIA -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/main.c
done main.o generated
make nvdisc.o
make sh/nvdisc.c
@@ -694,11 +695,10 @@
done sh/nvdisc.c
meta nvdisc.o %.c>%.o sh/nvdisc.c nvdisc
prev sh/nvdisc.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/nvdisc.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/nvdisc.c
done nvdisc.o generated
make arith.o
make sh/arith.c
-prev FEATURE/locale implicit
prev include/variables.h implicit
prev include/streval.h implicit
prev include/name.h implicit
@@ -707,7 +707,7 @@
done sh/arith.c
meta arith.o %.c>%.o sh/arith.c arith
prev sh/arith.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/arith.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/arith.c
done arith.o generated
make args.o
make sh/args.c
@@ -722,7 +722,7 @@
done sh/args.c
meta args.o %.c>%.o sh/args.c args
prev sh/args.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_OPTIMIZE -DSHOPT_RAWONLY -DSHOPT_HISTEXPAND -DSHOPT_PFSH -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_KIA -DSHOPT_MULTIBYTE -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c sh/args.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_OPTIMIZE -DSHOPT_RAWONLY -DSHOPT_HISTEXPAND -DSHOPT_PFSH -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_KIA -DSHOPT_MULTIBYTE -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/args.c
done args.o generated
make array.o
make sh/array.c
@@ -732,7 +732,7 @@
done sh/array.c
meta array.o %.c>%.o sh/array.c array
prev sh/array.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/array.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/array.c
done array.o generated
make completion.o
make edit/completion.c
@@ -746,7 +746,7 @@
done edit/completion.c
meta completion.o %.c>%.o edit/completion.c completion
prev edit/completion.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_ESH -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_VSH -DSHOPT_PFSH -D_BLD_shell -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c edit/completion.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_ESH -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_VSH -DSHOPT_PFSH -D_BLD_shell -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c edit/completion.c
done completion.o generated
make defs.o
make sh/defs.c
@@ -758,7 +758,7 @@
done sh/defs.c
meta defs.o %.c>%.o sh/defs.c defs
prev sh/defs.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_DYNAMIC -c sh/defs.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/defs.c
done defs.o generated
make edit.o
make edit/edit.c
@@ -776,9 +776,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/cmds
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/cmds
done FEATURE/cmds generated
prev FEATURE/time implicit
prev FEATURE/options implicit
@@ -787,7 +787,7 @@
done edit/edit.c
meta edit.o %.c>%.o edit/edit.c edit
prev edit/edit.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -c edit/edit.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c edit/edit.c
done edit.o generated
make expand.o
make sh/expand.c
@@ -816,7 +816,7 @@
done sh/expand.c
meta expand.o %.c>%.o sh/expand.c expand
prev sh/expand.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -DSHOPT_SUID_EXEC -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/expand.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -DSHOPT_SUID_EXEC -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/expand.c
done expand.o generated
make fault.o
make sh/fault.c
@@ -832,7 +832,7 @@
done sh/fault.c
meta fault.o %.c>%.o sh/fault.c fault
prev sh/fault.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_KIA -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c sh/fault.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_KIA -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/fault.c
done fault.o generated
make fcin.o
make sh/fcin.c
@@ -843,7 +843,7 @@
done sh/fcin.c
meta fcin.o %.c>%.o sh/fcin.c fcin
prev sh/fcin.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -c sh/fcin.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/fcin.c
done fcin.o generated
make history.o
make edit/history.c
@@ -862,13 +862,12 @@
done edit/history.c
meta history.o %.c>%.o edit/history.c history
prev edit/history.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_VSH -DSHOPT_ESH -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DKSHELL -DSHOPT_PFSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c edit/history.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_VSH -DSHOPT_ESH -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DKSHELL -DSHOPT_PFSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c edit/history.c
done history.o generated
make init.o
make sh/init.c
make include/version.h implicit
done include/version.h
-prev FEATURE/locale implicit
prev include/lexstates.h implicit
prev FEATURE/dynamic implicit
prev FEATURE/time implicit
@@ -887,7 +886,7 @@
done sh/init.c
meta init.o %.c>%.o sh/init.c init
prev sh/init.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_PFSH -DSHOPT_NAMESPACE -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DSHOPT_KIA -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c sh/init.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_PFSH -DSHOPT_NAMESPACE -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DSHOPT_KIA -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_ESH -DSHOPT_VSH -DERROR_CONTEXT_T=Error_context_t -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c sh/init.c
done init.o generated
make io.o
make sh/io.c
@@ -910,7 +909,7 @@
done sh/io.c
meta io.o %.c>%.o sh/io.c io
prev sh/io.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_VSH -DSHOPT_ESH -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c sh/io.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_VSH -DSHOPT_ESH -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/io.c
done io.o generated
make jobs.o
make sh/jobs.c
@@ -927,7 +926,7 @@
done sh/jobs.c
meta jobs.o %.c>%.o sh/jobs.c jobs
prev sh/jobs.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_VSH -DSHOPT_ESH -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -D_BLD_shell -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c sh/jobs.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_VSH -DSHOPT_ESH -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -D_BLD_shell -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/jobs.c
done jobs.o generated
make lex.o
make sh/lex.c
@@ -946,7 +945,7 @@
done sh/lex.c
meta lex.o %.c>%.o sh/lex.c lex
prev sh/lex.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_KIA -D_BLD_shell -D_PACKAGE_ast -DSHOPT_PFSH -DKSHELL -DSHOPT_DYNAMIC -DSHOPT_HISTEXPAND -DSHOPT_ESH -c sh/lex.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_KIA -D_PACKAGE_ast -D_BLD_shell -DSHOPT_PFSH -DKSHELL -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_HISTEXPAND -DSHOPT_ESH -c sh/lex.c
done lex.o generated
make macro.o
make sh/macro.c
@@ -963,7 +962,7 @@
done sh/macro.c
meta macro.o %.c>%.o sh/macro.c macro
prev sh/macro.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -DKSHELL -DSHOPT_OPTIMIZE -DSHOPT_FILESCAN -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_SUID_EXEC -D_BLD_shell -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/macro.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_BRACEPAT -DKSHELL -DSHOPT_OPTIMIZE -DSHOPT_FILESCAN -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_SUID_EXEC -D_BLD_shell -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/macro.c
done macro.o generated
make name.o
make sh/name.c
@@ -971,7 +970,6 @@
prev include/shnodes.h implicit
prev include/streval.h implicit
prev FEATURE/externs implicit
-prev FEATURE/locale implicit
prev include/timeout.h implicit
prev include/lexstates.h implicit
prev include/path.h implicit
@@ -980,7 +978,7 @@
done sh/name.c
meta name.o %.c>%.o sh/name.c name
prev sh/name.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_OPTIMIZE -DSHOPT_MULTIBYTE -D_BLD_shell -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/name.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_OPTIMIZE -D_BLD_shell -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/name.c
done name.o generated
make nvtree.o
make sh/nvtree.c
@@ -990,7 +988,7 @@
done sh/nvtree.c
meta nvtree.o %.c>%.o sh/nvtree.c nvtree
prev sh/nvtree.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/nvtree.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -D_BLD_shell -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/nvtree.c
done nvtree.o generated
make parse.o
make sh/parse.c
@@ -1006,7 +1004,7 @@
done sh/parse.c
meta parse.o %.c>%.o sh/parse.c parse
prev sh/parse.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_ESH -DSHOPT_DYNAMIC -DSHOPT_HISTEXPAND -DKSHELL -c sh/parse.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_ESH -DERROR_CONTEXT_T=Error_context_t -DSHOPT_DYNAMIC -DSHOPT_HISTEXPAND -DKSHELL -c sh/parse.c
done parse.o generated
make path.o
make sh/path.c
@@ -1028,7 +1026,7 @@
done sh/path.c
meta path.o %.c>%.o sh/path.c path
prev sh/path.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_CMDLIB_DIR=\""/opt/ast/bin"\" -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_PFSH -DSHOPT_MULTIBYTE -DSHOPT_ESH -D_BLD_shell -DKSHELL -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -c sh/path.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_PFSH -DSHOPT_MULTIBYTE -DSHOPT_ESH -D_BLD_shell -DKSHELL -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c sh/path.c
done path.o generated
make string.o
make sh/string.c
@@ -1043,7 +1041,7 @@
done sh/string.c
meta string.o %.c>%.o sh/string.c string
prev sh/string.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -DSHOPT_ESH -DSHOPT_PFSH -c sh/string.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_PFSH -c sh/string.c
done string.o generated
make streval.o
make sh/streval.c
@@ -1054,7 +1052,7 @@
done sh/streval.c
meta streval.o %.c>%.o sh/streval.c streval
prev sh/streval.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -D_PACKAGE_ast -c sh/streval.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c sh/streval.c
done streval.o generated
make subshell.o
make sh/subshell.c
@@ -1070,7 +1068,7 @@
done sh/subshell.c
meta subshell.o %.c>%.o sh/subshell.c subshell
prev sh/subshell.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/subshell.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DERROR_CONTEXT_T=Error_context_t -DKSHELL -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/subshell.c
done subshell.o generated
make tdump.o
make sh/tdump.c
@@ -1082,7 +1080,7 @@
done sh/tdump.c
meta tdump.o %.c>%.o sh/tdump.c tdump
prev sh/tdump.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/tdump.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/tdump.c
done tdump.o generated
make timers.o
make sh/timers.c
@@ -1096,7 +1094,7 @@
done sh/timers.c
meta timers.o %.c>%.o sh/timers.c timers
prev sh/timers.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/timers.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/timers.c
done timers.o generated
make trestore.o
make sh/trestore.c
@@ -1108,7 +1106,7 @@
done sh/trestore.c
meta trestore.o %.c>%.o sh/trestore.c trestore
prev sh/trestore.c
-exec - ${CC} ${mam_cc_FLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/trestore.c
+exec - ${CC} ${mam_cc_FLAGS} ${-debug-symbols?1?${mam_cc_DEBUG} -D_BLD_DEBUG?${CCFLAGS.FORCE}?} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_BLD_shell -DKSHELL -D_PACKAGE_ast -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/trestore.c
done trestore.o generated
make waitevent.o
make sh/waitevent.c
@@ -1116,7 +1114,7 @@
done sh/waitevent.c
meta waitevent.o %.c>%.o sh/waitevent.c waitevent
prev sh/waitevent.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/waitevent.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_MULTIBYTE -DSHOPT_PFSH -c sh/waitevent.c
done waitevent.o generated
make xec.o
make sh/xec.c
@@ -1142,7 +1140,7 @@
done sh/xec.c
meta xec.o %.c>%.o sh/xec.c xec
prev sh/xec.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_FILESCAN -DSHOPT_NAMESPACE -DSHOPT_OPTIMIZE -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DSHOPT_ESH -c sh/xec.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DSHOPT_FILESCAN -DSHOPT_NAMESPACE -DSHOPT_OPTIMIZE -D_BLD_shell -DSHOPT_MULTIBYTE -DSHOPT_PFSH -DSHOPT_KIA -DKSHELL -DSHOPT_SUID_EXEC -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c sh/xec.c
done xec.o generated
make env.o
make sh/env.c
@@ -1178,7 +1176,7 @@
done data/msg.c
meta msg.o %.c>%.o data/msg.c msg
prev data/msg.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_SUID_EXEC -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_KIA -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -c data/msg.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_SUID_EXEC -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_KIA -DSHOPT_BRACEPAT -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c data/msg.c
done msg.o generated
make strdata.o
make data/strdata.c
@@ -1191,9 +1189,9 @@
prev shell.req
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} : run features/math.sh data/math.tab
+exec - iffe -v -c '${CC} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ' ref ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -I${PACKAGE_ast_INCLUDE} -I${INSTALLROOT}/include ${mam_libdll} ${mam_libcmd} ${mam_libast} ${mam_libm} ${mam_libdl} ${mam_libnsl} : run features/math.sh data/math.tab
make ${PACKAGE_ast_INCLUDE}/ast_standards.h implicit
done ${PACKAGE_ast_INCLUDE}/ast_standards.h dontcare
done FEATURE/math generated
@@ -1224,7 +1222,7 @@
done data/keywords.c
meta keywords.o %.c>%.o data/keywords.c keywords
prev data/keywords.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_DYNAMIC -c data/keywords.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_NAMESPACE -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_KIA -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c data/keywords.c
done keywords.o generated
make options.o
make data/options.c
@@ -1235,7 +1233,7 @@
done data/options.c
meta options.o %.c>%.o data/options.c options
prev data/options.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_PFSH -DSHOPT_HISTEXPAND -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_DYNAMIC -DSHOPT_ESH -c data/options.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_PFSH -DSHOPT_HISTEXPAND -D_BLD_shell -D_PACKAGE_ast -DSHOPT_MULTIBYTE -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c data/options.c
done options.o generated
make signals.o
make data/signals.c
@@ -1245,7 +1243,7 @@
done data/signals.c
meta signals.o %.c>%.o data/signals.c signals
prev data/signals.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -c data/signals.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -c data/signals.c
done signals.o generated
make aliases.o
make data/aliases.c
@@ -1261,9 +1259,6 @@
done aliases.o generated
make builtins.o
make data/builtins.c
-make ${PACKAGE_ast_INCLUDE}/cmdlist.h implicit
-prev ${PACKAGE_ast_INCLUDE}/prototyped.h implicit
-done ${PACKAGE_ast_INCLUDE}/cmdlist.h dontcare
prev FEATURE/cmds implicit
prev include/jobs.h implicit
prev include/builtins.h implicit
@@ -1271,11 +1266,12 @@
prev include/name.h implicit
prev include/ulimit.h implicit
prev include/shtable.h implicit
+prev include/defs.h implicit
prev include/shell.h implicit
done data/builtins.c
meta builtins.o %.c>%.o data/builtins.c builtins
prev data/builtins.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_KIA -DSHOPT_PFSH -DUSAGE_LICENSE=\""[-author?David Korn <dgk at research.att.com>][-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures][-license?http://www.opensource.org/licenses/cpl1.0.txt][--catalog?libshell]"\" -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSH_CMDLIB_DIR=\""/opt/ast/bin"\" -DSHOPT_CMDLIB_BLTIN=0 -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DKSHELL -DSHOPT_DYNAMIC -c data/builtins.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_KIA -DSHOPT_PFSH -DUSAGE_LICENSE=\""[-author?David Korn <dgk at research.att.com>][-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures][-license?http://www.opensource.org/licenses/cpl1.0.txt][--catalog?libshell]"\" -DSHOPT_BRACEPAT -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -D_PACKAGE_ast -D_BLD_shell -DKSHELL -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -c data/builtins.c
done builtins.o generated
make variables.o
make data/variables.c
@@ -1289,7 +1285,7 @@
done data/variables.c
meta variables.o %.c>%.o data/variables.c variables
prev data/variables.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -DSHOPT_ESH -DSHOPT_PFSH -c data/variables.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DSHOPT_DYNAMIC -D_BLD_shell -D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t -DSHOPT_ESH -DSHOPT_PFSH -c data/variables.c
done variables.o generated
make lexstates.o
make data/lexstates.c
@@ -1308,11 +1304,12 @@
prev include/history.h implicit
prev include/io.h implicit
prev include/defs.h implicit
+prev FEATURE/cmds implicit
prev ${PACKAGE_ast_INCLUDE}/ast.h implicit
done edit/emacs.c
meta emacs.o %.c>%.o edit/emacs.c emacs
prev edit/emacs.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -c edit/emacs.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_MULTIBYTE -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c edit/emacs.c
done emacs.o generated
make vi.o
make edit/vi.c
@@ -1328,7 +1325,7 @@
done edit/vi.c
meta vi.o %.c>%.o edit/vi.c vi
prev edit/vi.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -c edit/vi.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_RAWONLY -DSHOPT_MULTIBYTE -D_PACKAGE_ast -DSHOPT_HISTEXPAND -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -DSHOPT_PFSH -D_BLD_shell -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -c edit/vi.c
done vi.o generated
make hexpand.o
make edit/hexpand.c
@@ -1337,7 +1334,7 @@
done edit/hexpand.c
meta hexpand.o %.c>%.o edit/hexpand.c hexpand
prev edit/hexpand.c
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_DYNAMIC -D_BLD_shell -c edit/hexpand.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DSHOPT_HISTEXPAND -DSHOPT_MULTIBYTE -DKSHELL -DSHOPT_ESH -DSHOPT_VSH -D_PACKAGE_ast -DSHOPT_PFSH -DSHOPT_DYNAMIC -D_BLD_shell -DERROR_CONTEXT_T=Error_context_t -c edit/hexpand.c
done hexpand.o generated
exec - ${AR} cr libshell.a alarm.o cd_pwd.o cflow.o deparse.o getopts.o hist.o misc.o print.o read.o sleep.o trap.o test.o typeset.o ulimit.o umask.o whence.o main.o nvdisc.o arith.o args.o array.o completion.o defs.o edit.o expand.o fault.o fcin.o history.o init.o io.o
exec - ${AR} cr libshell.a jobs.o lex.o macro.o name.o nvtree.o parse.o path.o string.o streval.o subshell.o tdump.o timers.o trestore.o waitevent.o xec.o env.o limits.o msg.o strdata.o testops.o keywords.o options.o signals.o aliases.o builtins.o variables.o lexstates.o emacs.o vi.o hexpand.o
@@ -1346,9 +1343,9 @@
bind -lshell
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
-exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libdl} ${mam_libast}
+exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libnsl} ${mam_libdl} ${mam_libast}
done ksh generated
make shcomp
make shcomp.o
@@ -1362,16 +1359,16 @@
setv SH_DICT -DSH_DICT="\"libshell\""
setv _BLD_shell -U_BLD_shell
setv _BLD_DLL -U_BLD_DLL
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=\""libshell"\" -DSHOPT_KIA -D_PACKAGE_ast -DSHOPT_DYNAMIC -DUSAGE_LICENSE=\""[-author?David Korn <dgk at research.att.com>][-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures][-license?http://www.opensource.org/licenses/cpl1.0.txt][--catalog?libshell]"\" -c sh/shcomp.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -Iinclude -I${PACKAGE_ast_INCLUDE} -DSH_DICT=\""libshell"\" -DSHOPT_KIA -D_PACKAGE_ast -DSHOPT_DYNAMIC -DERROR_CONTEXT_T=Error_context_t -DUSAGE_LICENSE=\""[-author?David Korn <dgk at research.att.com>][-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures][-license?http://www.opensource.org/licenses/cpl1.0.txt][--catalog?libshell]"\" -c sh/shcomp.c
done shcomp.o generated
prev libshell.a archive
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
setv CC.DLL -UCC.DLL
setv SH_DICT -DSH_DICT="\"libshell\""
-exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libdl} ${mam_libast}
+exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libnsl} ${mam_libdl} ${mam_libast}
done shcomp generated
make suid_exec
make suid_exec.o
@@ -1387,14 +1384,14 @@
prev sh/suid_exec.c
setv CC.DLL -UCC.DLL
setv _BLD_shell -U_BLD_shell
-exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -D_PACKAGE_ast -c sh/suid_exec.c
+exec - ${CC} ${mam_cc_FLAGS} ${CCFLAGS} -I. -Iinclude -I${PACKAGE_ast_INCLUDE} -DERROR_CONTEXT_T=Error_context_t -D_PACKAGE_ast -c sh/suid_exec.c
done suid_exec.o generated
prev +ljobs
prev +li
+prev ${mam_libsocket}
prev ${mam_libsecdb}
-prev +lintl
setv CC.DLL -UCC.DLL
-exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o suid_exec suid_exec.o ${mam_libast} ${mam_libdl} ${mam_libast}
+exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o suid_exec suid_exec.o ${mam_libast} ${mam_libnsl} ${mam_libdl} ${mam_libast}
done suid_exec generated
make shell
prev libshell.a archive
@@ -1544,8 +1541,9 @@
exec - mkdir $tmp
exec - for i in *.sh
exec - do tst=$tmp/shcomp-${i%.sh}.ksh
-exec - shcomp $i > $tst
-exec - SHELL=${INSTALLROOT}/bin/ksh ${INSTALLROOT}/bin/ksh shtests $tst
+exec - if shcomp $i > $tst
+exec - then SHELL=${INSTALLROOT}/bin/ksh ${INSTALLROOT}/bin/ksh shtests $tst
+exec - fi
exec - rm -f $tst
exec - done
exec - rm -rf $tmp
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/nval.3 ksh93_2007_03_28/src/cmd/ksh93/nval.3
--- ksh93_2007_01_11/src/cmd/ksh93/nval.3 2005-06-14 17:25:39.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/nval.3 2007-03-20 14:51:26.000000000 +0100
@@ -87,7 +87,7 @@
int nv_scan(Dt_t *\fIdict\fP, void(*\fIfn\fP)(Namval_t*,void*), void *\fIdata\fP, int \fImask\fP, int \fIflags\fP);
Dt_t nv_dict(Namval_t *\fInp\fP);
void nv_setvtree(Namval_t *\fInp\fP);
-void nv_setref(Namval_t *\fInp\fP);
+void nv_setref(Namval_t *\fInp\fP, Dt_t *\fIdp\fP, int \fIflags\fP);
Namval_t *nv_lastdict(void);
.ft R
.fi
@@ -601,7 +601,10 @@
.PP
The \f5nv_setref()\fP function makes the name-value pair \f5np\fP
into a reference to the variable whose name is given by
-the value of \f5np\fP.
+the value of \f5np\fP. The \f5nv_open()\fP open function is
+called with this name, the dictionary given by \f5dp\fP,
+and the \f5flags\fP argument.
+A \f5NULL\fP value causes the shell global variable dictionary to be searched.
.PP
The \f5nv_setvtree()\fP function makes the name-value pair \f5np\fP
into a tree structured variable so that \f5nv_getval()\fP
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/README ksh93_2007_03_28/src/cmd/ksh93/README
--- ksh93_2007_01_11/src/cmd/ksh93/README 2003-03-14 04:39:10.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/README 2007-03-25 04:06:09.000000000 +0200
@@ -36,7 +36,7 @@
SH_CMDLIB_DIR nmake state variable can be used to
specify a directory.
CMDLIB_DIR off Sets CMDLIB_BLTIN=1 and provides a default value
- of "/opt/ast/bin/" for SH_CMDLIB_DIR.
+ of "/opt/ast/bin" for SH_CMDLIB_DIR.
COMPOUND_ARRAY
on Allows all components of compound variables except the
first to be any string by enclosing in [...]. It also
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/RELEASE ksh93_2007_03_28/src/cmd/ksh93/RELEASE
--- ksh93_2007_01_11/src/cmd/ksh93/RELEASE 2006-12-29 16:53:04.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/RELEASE 2007-03-27 20:54:06.000000000 +0200
@@ -1,3 +1,30 @@
+07-03-08 --- Release ksh93s+ ---
+07-03-08 A bug in which set +o output command line options has been fixed.
+07-03-08 A bug in which an error in read (for example, an invalid variable
+ name), could leave the terminal in raw mode has been fixed.
+07-03-06 A bug in which read could core dump when specified with an array
+ variable with a subscript that is an arithmetic expression has
+ been fixed.
+07-03-06 Several serious bugs with the restricted shell were reported and
+ fixed.
+07-03-02 If a job is stopped, and subsequently restarted with a CONT
+ signal and exits normally, ksh93 was incorrectly exiting with
+ the exit status of the stop signal number.
+07-02-26 M-^L added to emacs mode to clear the screen.
+07-02-26 A bug in which setting a variable readonly in a subshell would
+ cause an unset error when the subshell completed has been fixed.
+07-02-19 The format with printf uses the new = flag to center the output.
+07-02-19 A bug in which ksh93 did not allow multibyte characters in
+ identifier names has been fixed.
+07-02-19 A bug introduced in ksh93 that causes global compound variable
+ definitions inside functions to exit with "no parent" has been fixed.
+07-02-19 A bug in which using compound commands in process redirection
+ arguments would give syntax errors <(...) and >(...) has been fixed.
+07-01-29 A bug which caused the shell to core dump which can occur when a
+ built-in exits without closing files that it opens has been fixed.
+07-01-26 A bug in which ~(E) in patterns containing \ that are not inside ()
+ has been fixed.
+
06-12-29 --- Release ksh93s ---
06-12-29 A bug in which the value of IFS could be changed after a command
substitution has been fixed.
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/args.c ksh93_2007_03_28/src/cmd/ksh93/sh/args.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/args.c 2006-10-06 03:13:26.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/args.c 2007-03-27 20:52:51.000000000 +0200
@@ -638,7 +638,6 @@
else if (value&(SH_BASHEXTRA|SH_BASHOPT))
continue;
on = !!is_option(&oflags,value);
- value &= 0xff;
name = tp->sh_name;
if(name[0] == 'n' && name[1] == 'o' && name[2] != 't')
{
@@ -662,7 +661,7 @@
on?'-':'+',
name);
}
- else if(value!=SH_INTERACTIVE && value!=SH_RESTRICTED && value!=SH_PFSH && is_option(&oflags,value))
+ else if(!(value&SH_COMMANDLINE) && is_option(&oflags,value&0xff))
sfprintf(sfstdout," %s%s%s",(mode&PRINT_SHOPT)?"":"--",on?"":"no",name);
}
if(!(mode&(PRINT_VERBOSE|PRINT_ALL)))
@@ -757,7 +756,7 @@
#if _pipe_socketpair && !_socketpair_devfd
# define sh_pipe arg_pipe
/*
- * create a real pipe (not a socked) and print message on failure
+ * create a real pipe (not a socket) and print message on failure
*/
static int arg_pipe(register int pv[])
{
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/arith.c ksh93_2007_03_28/src/cmd/ksh93/sh/arith.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/arith.c 2006-10-11 22:26:21.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/arith.c 2007-03-14 17:02:22.000000000 +0100
@@ -30,10 +30,9 @@
#include "name.h"
#include "streval.h"
#include "variables.h"
-#include "FEATURE/locale"
-#ifndef LONGLONG_MAX
-#define LONGLONG_MAX LONG_MAX
+#ifndef LLONG_MAX
+#define LLONG_MAX LONG_MAX
#endif
static Sfdouble_t Zero, NaN, Inf;
@@ -41,14 +40,14 @@
{
{ 0 },
"Inf",
- NV_NOFREE|NV_INTEGER|NV_DOUBLE|NV_LONG,NV_RDONLY
+ NV_NOFREE|NV_LDOUBLE,NV_RDONLY
};
static Namval_t NaNnod =
{
{ 0 },
"NaN",
- NV_NOFREE|NV_INTEGER|NV_DOUBLE|NV_LONG,NV_RDONLY
+ NV_NOFREE|NV_LDOUBLE,NV_RDONLY
};
static Namval_t *scope(register Namval_t *np,register struct lval *lvalue,int assign)
@@ -76,7 +75,7 @@
{
while(nv_isref(mp))
{
- sub = mp->nvenv;
+ sub = nv_refsub(mp);
mp = nv_refnode(mp);
}
np = mp;
@@ -104,16 +103,18 @@
{
register Namval_t *np = (Namval_t*)(lvalue->value);
np = scope(np,lvalue,1);
- nv_putval(np, (char*)&n, NV_INTEGER|NV_DOUBLE|NV_LONG);
+ nv_putval(np, (char*)&n, NV_LDOUBLE);
r=nv_getnum(np);
break;
}
case LOOKUP:
{
register int c = *str;
+ register char *xp=str;
lvalue->value = (char*)0;
if(c=='.')
- c = str[1];
+ str++;
+ c = mbchar(str);
if(isaletter(c))
{
register Namval_t *np;
@@ -121,7 +122,8 @@
char *cp;
while(1)
{
- while(c= *++str, isaname(c));
+ while(xp=str, c=mbchar(str), isaname(c));
+ str = xp;
if(c!='.')
break;
dot=1;
@@ -181,7 +183,11 @@
}
}
else
- while(c= *++str, isaname(c));
+ {
+ str++;
+ while(xp=str, c=mbchar(str), isaname(c));
+ str = xp;
+ }
}
*str = 0;
if(strcmp(*ptr,"Inf")==0)
@@ -232,7 +238,7 @@
}
else
{
- char lastbase=0, *val = str, oerrno = errno;
+ char lastbase=0, *val = xp, oerrno = errno;
errno = 0;
r = strtonll(val,&str, &lastbase,-1);
if(*str=='8' || *str=='9')
@@ -250,7 +256,7 @@
if(*val==0 || *val=='.' || *val=='x' || *val=='X')
val--;
}
- if(r==LONGLONG_MAX && errno)
+ if(r==LLONG_MAX && errno)
c='e';
else
c = *str;
@@ -323,7 +329,11 @@
register Sfdouble_t d;
char base=0, *last;
if(*str==0)
+ {
+ if(ptr)
+ *ptr = (char*)str;
return(0);
+ }
errno = 0;
d = strtonll(str,&last,&base,-1);
if(*last || errno)
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/array.c ksh93_2007_03_28/src/cmd/ksh93/sh/array.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/array.c 2006-11-16 21:48:47.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/array.c 2007-03-15 21:58:02.000000000 +0100
@@ -33,9 +33,9 @@
#define NUMSIZE (4+(ARRAY_MAX>999)+(ARRAY_MAX>9999)+(ARRAY_MAX>99999))
#define is_associative(ap) array_assoc((Namarr_t*)(ap))
-#define array_setbit(cp, n) (cp[(n)/CHAR_BIT] |= 2<<(((n)&(CHAR_BIT-1))))
-#define array_clrbit(cp, n) (cp[(n)/CHAR_BIT] &= ~(2<<(((n)&(CHAR_BIT-1)))))
-#define array_isbit(cp, n) (cp[(n)/CHAR_BIT] & 2<<(((n)&(CHAR_BIT-1))))
+#define array_setbit(cp, n) (cp[(n)/CHAR_BIT] |= 1<<(((n)&(CHAR_BIT-1))))
+#define array_clrbit(cp, n) (cp[(n)/CHAR_BIT] &= ~(1<<(((n)&(CHAR_BIT-1)))))
+#define array_isbit(cp, n) (cp[(n)/CHAR_BIT] & 1<<(((n)&(CHAR_BIT-1))))
#define NV_CHILD NV_EXPORT
static char Empty[] = "";
@@ -238,7 +238,7 @@
else if(nv_isattr(np,NV_INTEGER))
{
Sfdouble_t d= nv_getnum(np);
- nv_putval(mp,(char*)&d,NV_LONG|NV_DOUBLE|NV_INTEGER);
+ nv_putval(mp,(char*)&d,NV_LDOUBLE);
}
else
nv_putval(mp,nv_getval(np),NV_RDONLY);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/defs.c ksh93_2007_03_28/src/cmd/ksh93/sh/defs.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/defs.c 2006-06-12 17:42:16.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/defs.c 2007-02-14 08:59:16.000000000 +0100
@@ -43,5 +43,5 @@
char *sh_lexstates[ST_NONE] = {0};
struct jobs job = {0};
-time_t sh_mailchk = 600;
+int32_t sh_mailchk = 600;
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/fault.c ksh93_2007_03_28/src/cmd/ksh93/sh/fault.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/fault.c 2006-08-05 05:31:04.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/fault.c 2007-02-14 08:59:55.000000000 +0100
@@ -71,12 +71,12 @@
if(sig==SIGWINCH)
{
int rows=0, cols=0;
- long v;
+ int32_t v;
astwinsize(2,&rows,&cols);
if(v = cols)
- nv_putval(COLUMNS, (char*)&v, NV_INTEGER);
+ nv_putval(COLUMNS, (char*)&v, NV_INT32);
if(v = rows)
- nv_putval(LINES, (char*)&v, NV_INTEGER);
+ nv_putval(LINES, (char*)&v, NV_INT32);
}
#endif /* SIGWINCH */
if(sh.savesig)
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/fcin.c ksh93_2007_03_28/src/cmd/ksh93/sh/fcin.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/fcin.c 2006-02-09 06:19:29.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/fcin.c 2007-03-01 07:58:58.000000000 +0100
@@ -121,6 +121,7 @@
if(_Fcin.fcchar)
*_Fcin.fclast = _Fcin.fcchar;
_Fcin.fclast = 0;
+ _Fcin.fcleft = 0;
return(fcfill());
}
@@ -148,3 +149,63 @@
_Fcin = *fp;
}
+struct Extra
+{
+ unsigned char buff[2*MB_LEN_MAX];
+ unsigned char *next;
+};
+
+int fcmbstate(const char *state, int *s, int *len)
+{
+ static struct Extra extra;
+ register int i, c, n;
+ if(_Fcin.fcleft)
+ {
+ if((c = mbsize(extra.next)) < 0)
+ c = 1;
+ if((_Fcin.fcleft -= c) <=0)
+ {
+ _Fcin.fcptr = (unsigned char*)fcfirst() - _Fcin.fcleft;
+ _Fcin.fcleft = 0;
+ }
+ *len = c;
+ if(c==1)
+ *s = state[*extra.next++];
+ else if(c==0)
+ _Fcin.fcleft = 0;
+ else
+ {
+ c = mbchar(extra.next);
+ *s = state['a'];
+ }
+ return(c);
+ }
+ switch(*len = mbsize(_Fcin.fcptr))
+ {
+ case -1:
+ if(_Fcin._fcfile && (n=(_Fcin.fclast-_Fcin.fcptr)) < MB_LEN_MAX)
+ {
+ memcmp(extra.buff, _Fcin.fcptr, n);
+ _Fcin.fcptr = _Fcin.fclast;
+ for(i=n; i < MB_LEN_MAX+n; i++)
+ {
+ if((extra.buff[i] = fcgetc(c))==0)
+ break;
+ }
+ _Fcin.fcleft = n;
+ extra.next = extra.buff;
+ return(fcmbstate(state,s,len));
+ }
+ *len = 1;
+ /* fall through */
+ case 0:
+ case 1:
+ *s = state[c=fcget()];
+ break;
+ default:
+ c = mbchar(_Fcin.fcptr);
+ *s = state['a'];
+ }
+ return(c);
+}
+
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/init.c ksh93_2007_03_28/src/cmd/ksh93/sh/init.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/init.c 2007-01-12 08:35:51.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/init.c 2007-03-14 17:02:29.000000000 +0100
@@ -44,7 +44,6 @@
#include "FEATURE/time"
#include "FEATURE/dynamic"
#include "lexstates.h"
-#include "FEATURE/locale"
#include "version.h"
#if SHOPT_MULTIBYTE
@@ -79,7 +78,7 @@
{
Namfun_t hdr;
Shell_t *sh;
- long rand_last;
+ int32_t rand_last;
};
struct ifs
@@ -1269,7 +1268,7 @@
#endif /* _hdr_locale */
(PPIDNOD)->nvalue.lp = (&shp->ppid);
(TMOUTNOD)->nvalue.lp = (&shp->st.tmout);
- (MCHKNOD)->nvalue.lp = (long*)(&sh_mailchk);
+ (MCHKNOD)->nvalue.lp = (&sh_mailchk);
(OPTINDNOD)->nvalue.lp = (&shp->st.optindex);
/* set up the seconds clock */
shp->alias_tree = inittree(shp,shtab_aliases);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/io.c ksh93_2007_03_28/src/cmd/ksh93/sh/io.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/io.c 2006-12-11 20:27:10.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/io.c 2007-03-20 21:22:35.000000000 +0100
@@ -656,7 +656,7 @@
}
#endif
}
- if (fd > 0)
+ if (fd >= 0)
{
if((mode=sh_iocheckfd(fd))==IOCLOSE)
return(-1);
@@ -975,6 +975,8 @@
}
else if(iof&IORDW)
{
+ if(sh_isoption(SH_RESTRICTED))
+ errormsg(SH_DICT,ERROR_exit(1),e_restricted,fname);
io_op[2] = '>';
o_mode = O_RDWR|O_CREAT;
goto openit;
@@ -1145,7 +1147,7 @@
{
if(np)
{
- long v;
+ int32_t v;
fn = fd;
if(fd<10)
{
@@ -1156,9 +1158,9 @@
fd = fn;
}
nv_unset(np);
- nv_onattr(np,NV_INTEGER);
+ nv_onattr(np,NV_INT32);
v = fn;
- nv_putval(np,(void*)&v, NV_INTEGER);
+ nv_putval(np,(char*)&v, NV_INT32);
sh_iocheckfd(fd);
}
else
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/jobs.c ksh93_2007_03_28/src/cmd/ksh93/sh/jobs.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/jobs.c 2006-10-25 02:55:22.000000000 +0200
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/jobs.c 2007-03-03 02:42:46.000000000 +0100
@@ -271,7 +271,10 @@
continue;
}
else if (WIFCONTINUED(wstat) && wcontinued)
+ {
pw->p_flag &= ~(P_NOTIFY|P_SIGNALLED|P_STOPPED);
+ pw->p_exit = 0;
+ }
else
#endif /* SIGTSTP */
{
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/lex.c ksh93_2007_03_28/src/cmd/ksh93/sh/lex.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/lex.c 2007-01-05 23:24:09.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/lex.c 2007-03-21 19:24:38.000000000 +0100
@@ -302,38 +302,6 @@
#define sh_lex lextoken
#endif
-#if SHOPT_MULTIBYTE
-static int mb_stateskip(const char *state, int *c, int *len)
-{
- int curChar, lexState;
- lexState = 0;
- do
- {
- switch(*len = mbsize(_Fcin.fcptr))
- {
- case -1: /* bogus multiByte char - parse as bytes? */
- case 0: /* NULL byte */
- case 1:
- lexState = state[curChar=fcget()];
- break;
- default:
- /*
- * None of the state tables contain entries
- * for multibyte characters. However, they
- * should be treated the same as any other
- * alpha character, so we'll use the state
- * which would normally be assigned to the
- * 'a' character.
- */
- curChar = mbchar(_Fcin.fcptr);
- lexState = state['a'];
- }
- }
- while(lexState == 0);
- *c = curChar;
- return(lexState);
-}
-#endif /* SHOPT_MULTIBYTE */
/*
* Get the next word and put it on the top of the stak
* A pointer to the current word is stored in shlex.arg
@@ -346,12 +314,10 @@
register int n, c, mode=ST_BEGIN, wordflags=0;
register Lex_t *lp = (Lex_t*)shp->lex_context;
int inlevel=lexd.level, assignment=0, ingrave=0;
+ Sfio_t *sp;
#if SHOPT_MULTIBYTE
- int LEN;
-#else
-# define LEN 1
+ LEN=1;
#endif /* SHOPT_MULTIBYTE */
- Sfio_t *sp;
if(lexd.paren)
{
lexd.paren = 0;
@@ -398,17 +364,7 @@
{
/* skip over characters in the current state */
state = sh_lexstates[mode];
-#if SHOPT_MULTIBYTE
- LEN=1;
- if(mbwide())
- {
- int curchar;
- n = mb_stateskip(state, &curchar, &LEN);
- c = curchar;
- }
- else
-#endif /* SHOPT_MULTIBYTE */
- while((n = state[c=fcget()])==0);
+ while((n=STATE(state,c))==0);
switch(n)
{
case S_BREAK:
@@ -602,7 +558,11 @@
else if(c!='<' && c!='>')
n = 0;
else if(n==LPAREN)
+ {
c |= SYMLPAR;
+ lex.reservok = 1;
+ lex.skipword = 0;
+ }
else if(n=='|')
c |= SYMPIPE;
else if(c=='<' && n=='>')
@@ -1656,30 +1616,8 @@
{
if(n!=S_NL)
{
-#if SHOPT_MULTIBYTE
- if(mbwide())
- {
- do
- {
- switch(mbsize(_Fcin.fcptr))
- {
- case -1: /* bogus multiByte char - parse as bytes? */
- case 0: /* NULL byte */
- case 1:
- n = state[fcget()];
- break;
- default:
- /* treat as alpha */
- mbchar(_Fcin.fcptr);
- n = state['a'];
- }
- }
- while(n == 0);
- }
- else
-#endif /* SHOPT_MULTIBYTE */
/* skip over regular characters */
- while((n=state[fcget()])==0);
+ while((n=STATE(state,c))==0);
}
if(n==S_EOF || !(c=fcget()))
{
@@ -2065,7 +2003,7 @@
}
*--dp = 0;
#if ERROR_VERSION >= 20000317L
- msg = ERROR_translate(0,0,error_info.id,ep);
+ msg = ERROR_translate(0,error_info.id,0,ep);
#else
# if ERROR_VERSION >= 20000101L
msg = ERROR_translate(error_info.id,ep);
diff -r -N -u ksh93_2007_01_11/src/cmd/ksh93/sh/macro.c ksh93_2007_03_28/src/cmd/ksh93/sh/macro.c
--- ksh93_2007_01_11/src/cmd/ksh93/sh/macro.c 2006-12-18 17:45:48.000000000 +0100
+++ ksh93_2007_03_28/src/cmd/ksh93/sh/macro.c 2007-02-20 17:21:07.000000000 +0100
@@ -48,6 +48,10 @@
# define STR_GROUP 0
#endif
+#if !SHOPT_MULTIBYTE
+#define mbchar(p) (*(unsigned char*)p++)
+#endif
+
static int _c_;
typedef struct _mac_
{
@@ -407,6 +411,7 @@
int oldquote = mp->quote;
int ansi_c = 0;
int paren = 0;
+ int ere = 0;
int brace = 0;
Sfio_t *sp = mp->sp;
mp->sp = NIL(Sfio_t*);
@@ -502,7 +507,7 @@
{
/* preserve \digit for pattern matching */
/* also \alpha for extended patterns */
- if(!mp->lit && !mp->quote && (n==S_DIG || (paren && sh_lexstates[ST_DOL][*(unsigned char*)cp]==S_ALP)))
+ if(!mp->lit && !mp->quote && (n==S_DIG || ((paren+ere) && sh_lexstates[ST_DOL][*(unsigned char*)cp]==S_ALP)))
break;
/* followed by file expansion */
if(!mp->lit && (n==S_ESC || (!mp->quote &&
@@ -637,7 +642,15 @@
{
mp->patfound = mp->pattern;
if((n=cp[-1])==LPAREN)
+ {
paren++;
+ if((cp-first)>1 && cp[-2]=='~')
+ {
+ char *p = cp;
+ while((c=mbchar(p)) && c!=RPAREN && c!='E');
+ ere = c=='E';
+ }
+ }
else if(n==RPAREN)
--paren;
}
@@ -919,7 +932,8 @@
mp->zer