INIT.2014-12-24
[INIT.git] / lib / package / INIT.README
blob5f7ce9eb2b46249a2a8e07ea412e2461fba92bda
1 The INIT package is required by all but the standalone and self
2 extracting archive packages. It contains the package command, support
3 scripts, and utilities.  The package command installs binary packages,
4 makes source packages, and generates new package tarballs.
6 Source Package Installation Instructions:
8   (1) Do not install packages as root/super-user. Although some components may
9       have setuid executables, few must be owned by root. These are best
10       changed manually when the security implications are understood.
11   (2) Choose a package root directory and cd to it. This will be a local work
12       area for all packages.
13   (3) These instructions bypass the click to download package links on the
14       download site. If you already clicked, or if your system does not have
15       curl(1), hurl(1), lynx(1) or wget(1) then use the alternate instructions
16       for (3),(4),(5) in plan B below. Plan B installs the hurl(1)
17       script which works with ksh and modern bash. The top level URL is:
18                 URL=http://www.research.att.com/sw/download
19   (4) If the bin/package script does not exist then run:
20                 test -d bin || mkdir bin
21                 url=$URL/package
22                 (wget -O - $url||curl -L $url||hurl $url) > bin/package
23                 chmod +x bin/package
24   (5) Determine the list of package names you want from the download site, then
25       use the package(1) command to do the actual download:
26                 bin/package authorize "NAME" password "PASSWORD" \
27                         setup source $URL PACKAGE ...
28       (Refer to the AUTHORIZATION paragraph on the main download page for
29       NAME/PASSWORD details.)  This downloads the closure of the latest
30       source package(s); covered and up-to-date packages are not downloaded again unless
31       package force ... is specified. Package content is verified using md5sum.
32       If the package root will contain only one architecture then you can install in bin and
33       lib instead of arch/HOSTTYPE/bin and arch/HOSTTYPE/lib by running this
34       instead:
35                 bin/package authorize "NAME" password "PASSWORD" \
36                         flat setup source $URL PACKAGE ...
37       To update the same packages from the same URL run:
38                 bin/package setup source
39   (6) Build and install; all generated files are placed under arch/HOSTTYPE
40       ($INSTALLROOT), where HOSTTYPE is the output of bin/package (with no
41       arguments.) name=value arguments are supported; CC and debug=1 (compile
42       with -g instead of -O) are likely candidates. The output is written to
43       the terminal and captured in $INSTALLROOT/lib/package/gen/make.out:
44                 bin/package make
45   (7) List make results and interesting errors:
46                 bin/package results
47       Run the regression tests:
48                 bin/package test
49       List test results and errors:
50                 bin/package results test
51   (8) The generated binaries are position independent, i.e., they do not
52       contain hard-coded paths. However, commands with related files, like
53       file(1) and nmake(1), require the path of the bin directory to be
54       exported in PATH.
55   (9) You can run the binaries directly from the package root, or you can
56       install them in a public root after you are satisfied with the make and
57       test actions (requires the AT&T nmake(1) command):
58                 bin/package flat install DIRECTORY PACKAGE
59       This will install in DIRECTORY/bin and DIRECTORY/lib. If you want to
60       preserve the arch/HOSTTYPE hierarchy under DIRECTORY then omit the
61       flat argument. If you don't have nmake(1) then the following will do a
62       flat install:
63                 cd $INSTALLROOT
64                 cp -p -r bin lib include DIRECTORY
65   (10) To summarize, after the first time the download, build, and test cycle
66       for the latest source release is:
67                 bin/package setup source
68                 bin/package make
69                 bin/package test
71 Source Package Installation Instructions -- Plan B:
73   (3) Create the subdirectory lib/package/tgz and download all package archives
74       into that directory.
75   (4) If the bin/package script does not exist then manually read the INIT
76       source package:
77                 gunzip < lib/package/tgz/INIT.YYYY-MM-DD.tgz | tar xvf -
78       Note that some browsers automatically unzip downloaded without warning.
79       If the gunzip fails try:
80                 tar xvf - lib/package/tgz/INIT.YYYY-MM-DD.tgz
81       If your system does not have tar(1) or gunzip(1) then download the ratz
82       source package, compile it, and manually read the INIT
83       source package:
84                 mkdir bin
85                 cp lib/package/tgz/ratz.YYYY-MM-DD.c lib/package/tgz/ratz.c
86                 cc -o bin/ratz lib/package/tgz/ratz.c
87                 bin/ratz -lm < lib/package/tgz/INIT.YYYY-MM-DD.tgz
88   (5) Read all unread package archive(s):
89                 bin/package read
90       Both source and binary packages will be read by this step.
92 All recorded changes follow.
94 :::::::: INIT ::::::::
96 13-12-05 Makefile,package.sh: add BIN=1 to .paths for ast -lcmd builtins
97 13-11-15 package.sh: fix rebuild logic to handle in-place no-map-libc <=> map-libc
98 13-11-14 iffe.sh: handle "opt no-name" (specifically for "opt no-map-libc" => _opt_map_libc default)
99 13-11-07 cc.darwin*: target 10.3 => 10.7
100 13-10-30 iffe.sh: fix lcl|nxt logic to work for multi-arch style implementations
101 13-09-25 iffe.sh: add _${API}_API_IMPLEMENT guards for implementation code
102 13-08-11 iffe.sh: executed blocks now have a single argument that is a tmp file prefix
103 13-08-11 iffe.sh: fix intrinsic function test to rule out type names
104 13-07-17 iffe.sh: add '^#include.*iffe --include-first' for *.c feature test macro initialization
105 13-07-17 package.sh: refix 13-06-17 fix to check both $CC and $CCFLAGS
106 13-06-24 add -lsocket => -lsocket -lnsl for systems that don't have it in -lc
107 13-06-17 package.sh: fix host type logic to handle -m32/-m64 almost cross-compile
108 13-05-21 C+probe: add ksh-2013-05-21 `...` hang workaround -- FIXME
109 13-05-17 package.sh: package make should continue if ksh fails to build
110 13-05-17 make.probe: fix CC.DIALECT+=EXPORT=DLL logic
111 13-05-13 MAPLIB.mk: workaround ppcc+bash not handling '-o t t.c'
112 13-05-01 package.sh: add ``results path old'' for *.out.*
113 13-03-20 make.probe: add CC.NM.NMFLAGS for stupid stupid stupid aix -Xany 
114 13-03-06 handle incompletely defined types e.g. "typ DIR dirent.h" 
115 12-12-05 C+probe: elide */tmp/* and */probe[0-9]* from stdinclude
116 12-10-25 ditto.sh: set DITTO_OPTIONS=dst=1 in destination read script
117 12-09-27 package.sh: fix admin log total logic
118 12-09-18 cc.ibm.risc: fix -O disable logic that ate next arg
119 12-09-11 make.probe: fix sunos cc/CC CC.STDLIB probe
120 12-08-24 iffe.sh: add ``api n1 = n2''
121 12-07-17 iffe.sh: add C code NOTE("...") to ammend --verbose output
122 12-06-26 iffe.sh: fix "npt foo" to handle function-like macro foo()
123 12-06-20 package.sh: use $KSH for rt in "results test"
124 12-06-15 Makefile: add PLUGIN_LIB to $INSTALLROOT/bin/.paths and BUILTIN_LIB => PLUGIN_LIB
125 12-06-15 package.sh: add PLUGIN_LIB to $INSTALLROOT/bin/.paths and BUILTIN_LIB => PLUGIN_LIB
126 12-06-13 package.sh: handle admin.db column output
127 12-06-08 iffe.sh: fix 12-06-06 typo
128 12-06-06 iffe.sh: check for -l* in reverse and accumulative order (e.g., for -last & -lm)
129 12-06-04 package.sh: always check $INSTALLROOT/lib/package/profile
130 12-05-31 Makefile: ID=ast; $(INSTALLROOT)/prototyped.h => $(INSTALLROOT)/$(ID)/prototyped.h
131 12-05-28 iffe.sh: api foo YYYYMMDD => FOOAPI(rel) test macro
132 12-05-24 package.sh: change admin.db comment => owner attributes
133 12-04-25 ratz.c: add sear -k option to keep installation tmp dir on exit
134 12-04-17 package.sh: skip sh version logic for ``use''
135 12-04-17 cc.ibm.risc*: _LARGEFILE64_SOURCE => _LARGE_FILE_API moved to libast/features
136 12-04-09 cc.ibm.risc*: speak aixese for _LARGEFILE64_SOURCE
137 12-02-29 cc.darwin.i386*: handle default cc vs kernel bittedness
138 12-02-29 C+probe: add __TIMESTAMP__ to the nopredefined list
139 12-02-29 package.sh: don't assume grep -q or /usr/local/lib in LD_LIBRARY_PATH
140 12-02-29 package.sh: fix ksh vs -lcmd compatibility checks
141 12-02-23 iffe.sh: checkcc() before checkread() for sensible diagnostics
142 12-02-14 package.mk: { --clobber --compare --link=lib*.a* } for --mam=static
143 12-02-14 package.mk: export LICENSEFILEDEFAULT instead of LICENSEFILE
144 12-02-14 package.sh: handle @(cc|ld).${HOSTTYPE}* intercepts
145 12-02-07 package.sh: add { clean clobber } actions
146 12-02-02 regress.sh: fix ulimit -c defaults for --nokeep
147 12-01-18 regress.sh: add INPUT|OUTPUT|ERROR -e 'filter' to filter before comparison
148 12-01-21 package.sh: fix `admin make' bug that created unused $INSTALLROOT/lib
149 12-01-21 Makefile: :PACKAGE: license=ast -- oops
150 12-01-20 cc.darwin,cc.mvs.390: tmp=/tmp/cc.${USER:-$LOGNAME}.$$.err
151 12-01-12 package.sh: add admin make share closure to handle alternate HOSTTYPEs
152 11-12-13 iffe.sh: add /*<NOSTDIO>*/ test code comment to disable default #include <stdio.h>
153 11-11-11 C+probe: test for .so before .sl
154 11-10-26 package.sh: don't forget about *.pkg for admin update
155 11-10-18 cc.*-icc: update and add more
156 11-10-11 package.sh: handle package make|view when no source installed
157 11-09-11 package.sh: count admin '*** termination code' errors
158 11-08-31 mamake.c: add -e, ignore use recursive prereq timestamps
159 11-08-29 iffe.sh: add ``set stdio try1.h - try2.h ...''
160 11-08-29 iffe.sh: trap EXIT => trap 0 for ancient sh
161 11-08-11 iffe.sh: handle ancient sort that doesn't have -k
162 11-06-01 make.probe: add more /lib64 logic
163 11-05-01 package.sh: fix admin ditto to sync LICENSES too
164 11-03-25 package.sh: initialize { $SED $TR } before first use!
165 11-03-21 package.sh: fix vpath probes
166 11-03-17 iffe.sh: fix cleanup to rm $tmp* instead of $tmp*.*
167 11-02-24 package.sh: change curl usage to "curl -L ..."
168 11-02-11 package.sh,C+probe,make.probe,mamprobe.sh: add ###.*archiac.*###
169 11-02-02 Makefile: add :MAPLIB: check for ancient -lw
170 11-02-02 make.probe: handle -print-multi-directory => 64 => /usr/lib64 /lib64
171 11-02-02 package.sh: HOSTTYPE=*,*cc*[,-*,...] sets CC [ and CCFLAGS ]
172 11-02-02 make.probe: handle gcc $ORIGIN link but exec failure -- gee thanks
173 11-01-25 cc.hp.ia64: bundled cc is a pile of shaving cream
174 11-01-07 iffe.sh: check debug==3 for is_hdr() failure
175 10-11-22 ditto.sh: fix timing problem between |& and exec &p
176 10-11-10 package.sh: fix cc cross compile check to use checkcc absolute path
177 10-10-10 package.sh: list main env vars at start of make action
178 10-10-10 ratz.c: tweak widnows delays
179 10-09-10 ratz.c: add _SEAR_ARGS for _SEAR_EXEC
180 10-09-01 package.sh: fix ratz from source logic
181 10-08-25 package.mk: consolidate license file search in .package.licenses.
182 10-08-22 ratz.c: run sear bootstrap command detached
183 10-08-20 C+probe: version_stamp only if version_flags works
184 10-08-17 package.sh: unset makerules *DIR variables in env
185 10-08-15 package.sh: "make" action now lists some env values
186 10-08-11 mktest.sh: add "DO command ..."
187 10-07-27 rt.sh: handle "rt X=Y ..."
188 10-06-29 ratz.c: non-option sear args passed to sear_exec()
189 10-06-25 iffe.sh: "api" op changed to not do "map-libc" type mappings
190 10-06-25 package.sh: "force admin ditto" => no ditto --update option
191 10-06-22 C+probe: handle cc that require .[ci] input for version info
192 10-06-21 ditto.sh: change default remote access to ssh (about time)
193 10-06-12 regress.sh: DISGNOSTICS [ 1 | 0 | pattern ] and fix EXIT for all
194 10-06-09 package.sh: add AT&T to usable nmake check
195 10-06-06 iffe.sh,iffe.tst: add { api ver } ops
196 10-04-22 package.sh: update "html binary|source" NAME/PASSWORD info
197 10-04-15 iffe.sh: don't forget candidate headers for hdr|sys!
198 10-04-11 WWW.mk: disable man page metarule -- now done by admin-man(1)
199 10-02-14 package.sh: $CC verification needs $INSTALLROOT/bin in PATH
200 10-02-11 package.sh: fix package admin make report error count
201 10-02-02 package.sh: fix write binary bug that did scp on local fs
202 10-02-02 package.mk: up to date binary targets must still be in PACKAGE.*.lst
203 10-01-01 package.sh: fix premature $INSTALLROOT/bin during cross compile check
204 10-01-01 make.probe: handle ['"] in CC.VERSION.STRING
205 09-12-04 iffe.sh: add "opt name" to check for name in $PACKAGE_OPTIONS
206 09-11-30 mktest.sh: change RESET to STATE.RESET to make it global
207 09-11-14 make.probe: use gcc { -print-multi-directory -print-search-dirs }
208 09-11-11 package.sh: re-order and combine cc checks
209 09-10-27 C+probe,make.probe,probe.win32: add CC.SUFFIX.DEBUG
210 09-10-21 iffe.sh,Makefile: test -e is not in ksh88!
211 09-10-06 iffe.sh: handle cc -E #error with 0 exit status (sgi)
212 09-10-06 package.sh: stub in ar intercept checks -- not used yet
213 09-10-06 ar.ibm.risc: add ar intercept because some aix require -Xfoo first!!
214 09-09-24 regress.sh: fix UMASK logic to create test support files before umask
215 09-08-28 release.c: change docs to mention stdin if no file operands
216 09-08-24 package.sh: fix isascii() bug that failed on od(1) trailing space
217 09-08-20 make.probe: add CC.SHARED.NAME
218 09-08-20 regress.sh: add { JOB CONTINUE EXITED KILL FIFO }
219 09-08-11 package.sh: filter lines containing : for package results
220 09-07-31 make.probe: add CC.AR.ARFLAGS (for aix ar -xany)
221 09-07-31 package.sh,cc.*: fix -dumpmachine to handle 32/64/* bit options
222 09-06-24 package.sh: fix admin.db output formatting
223 09-05-05 package.sh: export dll hackery environment vars
224 09-05-05 package.sh: handle non-identifier hostnames
225 09-05-05 mamake.c: pass undefined ${...} identifiers to the shell
226 09-05-05 mamake.rt: add macro expansion regression tests
227 09-05-01 iffe.sh: fix output initialization *again*
228 09-04-28 package.sh: handle admin.db contact field $9
229 09-04-15 iffe.sh: add implicit "ini" op to initialize io for subsequent ops
230 09-03-31 regress.sh: EXPORT before test => global ENVIRON[]
231 09-03-26 package.sh: test fail pattern is 'fail[es]'
232 09-03-26 UNIT - ... appends (options) to command line
233 09-03-19 TEST.mk: x.tst => x only if x is command target
234 09-03-15 regress.sh: add ${MAIN} for base name of main unit
235 09-03-10 TEST.mk: add .SOURCE:tests if tests is a dir
236 09-03-03 regress.sh: allow command line unit to override UNIT
237 09-03-03 mktest.sh: handle IO == $'\n'
238 09-02-02 package.sh: delay $INSTALLROOT/bin/.paths generation until mamprobe runs
239 09-01-30 cc.mvs.390: c89 balks at [ ()] in -Dname="..."!
240 09-01-27 package.sh: add isascii() to use ratz instead of tar
241 09-01-20 hurl.sh: add --size=bytes option
242 09-01-08 TEST.mk: add test.* prereqs, multiple arg lists with :T=*: binding
243 09-01-03 regress.sh: fix UNIT to allow command line override
244 09-01-03 mktest.sh: handle TWD
245 08-12-24 package.sh: fix cross-compile HOSTTYPE logic
246 08-12-15 package.sh,hurl.sh: handle http codes { 301 302 303 }
247 08-10-16 make.probe '-fno-stack-protector -fno-stack-protector-all' to cop out!!
248 08-09-30 rt.sh: fix ksh93 regression test signal count
249 08-09-26 regress.sh: ignore SIGPIPE for SET pipe-input
250 08-09-24 package.sh: package only test foo => make --recurse=only recurse tests foo
251 08-09-20 make.probe: handle another /usr/bin/file shared lib description
252 08-09-20 regress.sh: add --pipefail for SET pipe-input ...
253 08-09-17 Makefile: add gdbm1.c for <gdbm-ndbm.h>
254 08-09-10 make.probe: add CC.NOPROTECT
255 08-08-08 mktest.sh: add --width=width
256 08-08-05 dbm.req: favor sleepycat ndbm compatibility
257 08-08-04 C+probe: fix stdlib initialization logic
258 08-06-24 package.sh: fix $INSTALLROOT/bin/cc intercept time stamp file typo
259 08-06-20 TEST.mk: make the localyunit before *.rt => *.tst -- doh
260 08-06-20 mktest.sh: prepend $PWD onto PATH for local units -- doh^2
261 08-06-11 regress.sh: fix bug that skipped the last test
262 08-05-20 regress.sh: add --local to put *.tmp dir in local fs
263 08-05-05 regress.sh: add IF command ... ELIF command ... ELSE ... FI
264 08-05-01 package.sh: package test => ulimit -c 0
265 08-04-28 regress.sh: fix EXPORT quoting
266 08-04-28 regress.sh: fix UNIT set check args too
267 08-04-24 rt.sh: exit code > 256 => signal termination
268 08-04-10 C+probe: change probe_so order to check .so last (macos ld workaround)
269 08-04-01 package.sh: handle multiple admin HOSTTYPEs per HOST
270 08-03-28 C+probe: add C++ #include <iostream> (no extension) dir probes
271 08-03-17 regress.sh: fix trap on EXIT, add terminated note to final tally
272 08-02-28 make.probe: fix probe_warn to include ld!
273 08-02-02 make.probe: add CC.RUNPATH to match default -L order
274 08-01-31 package.sh: check lib64 for LD_LIBRARY_PATH
275 08-01-31 iffe.sh: tweak ancient /bin/sh workarounds
276 08-01-28 make.probe: darwin ld export dynamic is -force_flat_namespace
277 08-01-28 C+probe: handle sgi cc error message but exit 0 botch(es)
278 08-01-23 package.sh: fix checksum doc typo
279 08-01-09 C+probe: add __FUNCTION__ to the undef (don't check) list
280 07-12-14 iffe.sh: add set nooptimize
281 07-12-03 package.sh: add LC_ALL=C
282 07-11-27 package.sh: fix overaggressive *.md5 cleanup
283 07-11-20 iffe.sh: treat exit status >= 250 as normal error with no signal
284 07-11-05 package.sh: fix write op error count pattern
285 07-11-05 package.mk: fix $(~req) .ver binding
286 07-08-11 probe.win32: add cl.exe setuid workaround, CC.VERSION[.STRING]
287 07-08-01 package.sh: handle 'package read lcl|tgz'
288 07-05-08 regress.sh: execute basename instead of absolute path for short $0
289 07-04-27 cc.sgi.mips[34]: for #error to exit non-zero -- a no brainer
290 07-04-20 mktest.sh: defer to systems without 'grep -q' -- sigh
291 07-04-11 mamprobe.sh: handle $(CC.*) => ${mam_cc_*}, $(...) => ${...}
292 07-04-11 make.probe: fix CC.PICBIG probe, default { CC.PIC CC.DLL } to BIG
293 07-04-04 iffe.sh: prepend ${tst}${ext} to each .c probe
294 07-03-28 package.sh: fix binary tgz architecture type duplication
295 07-03-28 package.mk: add binary write PACKAGE.$HOSTTYPE.lst
296 07-03-28 iffe.sh: add -F header to mac test
297 07-03-23 make.probe: handle file(1) that returns 'archive' for .so
298 07-03-22 mamprobe.sh: fix STDED probe for implementations that ignore EOF
299 07-03-11 package.sh: add nocopyright and tst => nocopyright
300 07-03-11 package.mk: add copyright=0
301 07-03-08 C+probe: restore IFS after probe.ini
302 07-02-26 mamake.c: expand first of ${mam_lib*} for ${AR}
303 07-01-05 package.sh: fix "admin write binary" logic
304 07-01-01 iffe.sh: add "cmd" --verbose trace
305 07-01-01 iffe.sh: sort => LC_ALL=C sort
306 07-01-01 C+probe: LC_ALL=C
307 06-12-22 make.probe: lean on gcc -v for stdlib, but preserve /usr/local!
308 06-11-23 package.sh: *.md5 are not tarballs -- doh
309 06-11-23 iffe.sh: add -F, --features=feature-test-header
310 06-11-11 make.probe: favor lib64 over lib for hosttype==*64
311 06-10-31 make.probe: add "-ignore-source-dir -iquote" test
312 06-10-31 iffe.sh: add status{...} code block
313 06-10-11 regress.sh: fix DO to handle {...} (time for regress.tst?)
314 06-10-11 package.sh: handle already gunzip'd *.tgz
315 06-10-06 iffe.sh: add reference for header content tests
316 06-09-27 regress.sh: fix UMASK to do DO too (duh)
317 06-09-22 iffe.sh: drop -O for npt tests (for msvc intrinsics)
318 06-09-14 cc.darwin: drop -O until gcc 4.* gets its act together
319 06-09-11 package.sh: { cc ld ldd } intercepts check ${HOSTTYPE%.*} too
320 06-09-08 regress.sh: add PIPE INPUT|OUTPUT for pipe io
321 06-09-05 C+probe: add { probe_version version_stamp version_string }
322 06-09-05 make.probe: add version stamp comment, CC.VERSION[.STRING]
323 06-08-27 regress.sh,mktest.sh: add UMASK
324 06-08-25 regress.sh: add -b,--ignore-space,IGNORESPACE
325 06-08-25 mktest.sh: add IGNORESPACE
326 06-08-24 mktest.sh: handle \000 in data
327 06-08-24 regress.sh: handle -f* for INPUT|OUTPUT|ERROR
328 06-08-16 package.sh: fix 'install flat' logic
329 06-08-11 rt.sh: handle style=shell %K date format
330 06-07-17 ratz.c: fix __MVS__ FAR definition
331 06-07-17 iffe.sh: "header x.h" -- deprecate "include x.h" for .SCAN.iffe
332 06-07-17 package.sh: differentiate urls vs. assignments
333 06-06-27 rt.sh: add --failed, --heading
334 06-06-27 C+probe,TEST.mk,make.probe,mktest.sh,regress.sh: 'ulimit -c 0'
335 06-06-26 cc.darwin.ppc: handle -lcc_dynamic disappearance
336 06-06-25 mktest.sh: implement PROG
337 06-06-11 Makefile: add -ldbm :MAPLIB:, provide public MAPLIB.mk
338 06-05-06 package.sh: add PACKAGE_admin_tail_timeout
339 06-05-22 ratz.c: upgrade to zlib-1.2.3
340 06-05-09 package.sh: fix admin.db docs
341 06-03-11 package.sh: fix `package use - command ...'
342 06-03-05 make.probe: work around pedantic bash 3.1 mismatched " in `.`
343 06-02-14 package.sh: "results failed test" == "results test failed"
344          cc.sgi.*: add _AST_cc_OPTIONS parameterization, -OPT:Olimit=0
345          cc.linux.ia64-icc: add for intel cc
346 06-02-02 package.sh: freebsd stuck with os version for all arch
347 06-02-01 package.mk: fix locale logic (tw -d requires dir arg)
348 06-01-31 package.sh: require $CC only for make|test
349 06-01-30 package.sh,hurl.sh: use the backwards-compatible --http-passwd
350          package.sh: add more pdksh => /bin/sh checks
351 06-01-26 package.sh: wget --http-pass => --http-password
352          package.sh: fix wget error logic
353          hurl.sh: wget --http-pass => --http-password
354 06-01-11 package.mk: pass package.license.class to make --mam too
355          package.mk: variants=pattern => --variants=pattern
356          package.sh: darwin rel<=7 => darwin7.ppc
357          package.sh: freebsd rel<=4 => freebsd4
358          package.sh: freebsd rel<=5 => freebsd5
359 05-12-07 iffe.sh: don't emit <stdio.h> if <sfio.h>|<ast.h> (XXX)
360 05-12-05 make.probe: disable readonly.exe core dump via ulimit -c 0
361 05-09-22 mktest.sh: add EXEC [ ++NOOUTPUT ++NOERROR ++NOEXIT ]
362 05-09-21 mktest.sh: fix --style=shell compare to ignore \r
363 05-09-12 TEST.mk: all --force to force %.rt regeneration
364 05-09-05 TEST.mk: regenerate from %.rt only if newer, :SAVE: %.tst
365 05-08-25 mktest.sh: add
366          TEST.mk: add %.rt=>%.tst for mktest
367 05-08-18 package.sh: 'package host cpu' now checks $NPROC first
368 05-07-17 iffe.sh: add { define extern include print } ops
369          iffe.sh: accept output{...}end output on success only -- doh
370 05-07-01 package.sh: add TARPROBE for tar B flag probe
371 05-06-24 package.sh: fix binary read chmod via *.sum
372 05-06-06 package.sh: fix KEEP_HOSTTYPE logic to handle synthesized types
373 05-06-01 make.probe: verify that cc_pic works for hosted cc
374          cc.lynxos.ppc: make -mshared the default
375          package.sh: note $INSTALLROOT/bin/@(cc|ld|ldd) installation
376 05-05-25 make.probe: add CC.INCLUDE.LOCAL instead of -I- in CC.DIALECT
377 05-05-24 iffe.sh: really fix grouping logic -- with tests this time
378          package.sh: pipe/socket configuration mismatches => use /bin/sh
379 05-04-28 TEST.mk: add $(TESTS)
380 05-04-19 package.sh: package results test uses rt if possible
381          iffe.sh: fix 'op var - ... - ...' grouping logic
382 05-04-15 rt.sh: handle autom4ate style
383 05-04-11 regress.sh: fix unit name when command line unit also specified
384          rt.sh: handle all ast package test output formats
385          package.sh: fix make docs for options passed to underlying make
386 05-04-08 package.sh: cp -p makerules.mo to $OK to preserve mtime
387          regress.sh: add "TITLE name" to change TEST output title
388 05-04-01 rt.sh: add pretty make test + regress.sh wrapper
389 05-03-29 package.sh: test -e path => test -f path -o -d path
390 05-03-24 make.probe: fix CC.PICBIG probe to prefer -fPIC over -fpic -- doh
391 05-03-19 mamake.c: command line name=var also defines name.FORCE=var
392 05-03-11 regress.sh: unset LC_ALL when LC_* EXPORT'd
393          package.sh: old make.out saved in circular make.out.[1-9]
394          mamake.c: sync with nmake :W=O:
395 05-03-01 package.sh: fix flat hierarchy initialization
396          package.sh: admin action now properly resets sibling remote logs
397          package.mk: relax unknown/unwritten package messages to warnings
398          package.sh: handle space in command line name=value
399          make.probe: add mvs -Wc,dll,exportall,longname,rent to CC.DLL probe
400 05-02-24 package.sh: hosttype *.powerpc => *.ppc
401          cc.lynxos.ppc,ldd.lynxos.ppc: add
402 05-02-22 mamake.c: fix { -G --debug-symbols -S --strip-symbols } MAMAKEFLAGS bug
403 05-02-20 probe.win32: handle /platformsdk mount
404 05-02-19 package.sh,package.mk: add write tst for tgz in tst subdir
405 05-02-18 package.sh: accept cc -dumpmachine with 0 or 1 -
406 05-02-14 package.sh: handle mutiple architectures per host in admin.db
407          Makefile,package.sh: honor $INSTALLROOT/bin/.paths overrides
408          package.sh: normalize trailing [-_]bits in host type
409          iffe.sh: some ksh-compatible shells don't do *(pattern)
410 05-02-11 iffe.sh: back out 05-01-11 child process stdin hijack
411          cc.lynxos.i386: -dynamic instead of -static default
412 05-02-10 package.sh: cyg usr/doc => usr/share/doc
413 05-02-08 package.sh: drop -m with pax -- delta bug fixed 2005-02-08
414          iffe.sh: work around old bash 0<... redirection bug
415 05-02-06 package.mk: source.tgz: update generated files only when they change
416 05-02-02 *.sh,*probe: IFS may be unset and { ash bsh } don't on startup -- wow
417 05-01-11 package.sh: update setup docs to include authorize+password
418          package.mk: fix .source.cyg final directory edit
419          package.mk: notice=1 for conspicuous empty NOTICE file
420          WWW.mk: fix *-index.html installation
421          filter.sh: retain input file suffix in tmp copy
422          mamexec.c: fix non-contiguous "exec" bug that skipped lines
423          iffe.sh: fix candidate lib test to try grouping subsequent libs
424          iffe.sh: fix child process stdin hijack that skipped input lines
425          iffe.sh: --shell=osh to force read -r compatibility command
426          iffe.sh: chop iffe input leading space before # for KnR compatibility
427 05-01-05 package.sh: add ${TAR} ${TARFLAGS} and tar B flag for pipes
428          mamake.c: fix makefile scan to ignore lib*.[hH]
429          iffe.sh: immunize function/symbol tests from aggressive -O
430 04-12-28 WWW.mk: add :WWWPAGE: faq.*.mm index generator
431 04-12-21 ratz.c: make sure tmp dir is writable -- doh
432 04-12-08 iffe.sh: fix dat test for aggressive -O
433 04-12-01 iffe.sh: add `include file' to pull in #define's for `exp'
434 04-11-11 package.sh: default MAKESKIP is "*[-.]*"
435 04-10-22 ratz.c: change docs to note zlib license
436          mamake.c: handle --debug-symbols and --strip-symbols
437          package.sh: make (debug|strip)=1 => --(debug|strip)-symbols
438          package.mk: add :LICENSE: => package.license.class
439          mamake.c: fix recursive order logic
440 04-10-18 package.mk: add :LICENSE:, :OMIT: to omit package subdirs
441 04-10-11 package.sh: add 'authorize name' and 'password password'
442 04-10-01 iffe.sh: double check $static link with ! $static
443          Makefile: add BUILTIN_LIB to $INSTALLROOT/bin/.paths
444          make.probe: add CC.DIALECT EXPORT={ALL,REF,EXT,DLL}
445          package.sh: add BUILTIN_LIB to $INSTALLROOT/bin/.paths
446 04-09-21 package.mk: $(init)$(name) is now an implicit prereq
447 04-09-09 package.sh: copy makerules.mo to $INSTALLROOT/bin/ok
448 04-09-01 package.mk,package.sh: rename *.txt => *.README
449          package.mk: add the runtime package type (no *.[ah])
450          iffe.sh: fix key test reports
451 04-08-26 Makefile: { add m2.c m3.c } -lm tests for { frexp[l] ldexp[l] }
452 04-08-11 package.mk: handle HOSTTYPE for solaris > 9 
453          package.sh: add `checkaout proto' for { make view }
454          package.sh: check for { md5sum md5 }
455          iffe.sh: add {if|elif|else|endif} test ...
456          iffe.sh: add 'exp - expression' and '( expression )'
457          iffe.sh: add 'name = test ...' user defined macros
458          iffe.sh: add '! test ...' negation
459          TEST.mk: add implied { .c .sh } generated prereq
460          cc.darwin.ppc: handle 10.3 -dylib mess
461 04-08-01 package.mk: let include handle nested requirements -- duh
462 04-07-31 package.sh: attempt a second ping before admin assumes host down
463 04-07-26 package.sh: fix hp.ia64 HOSTTYPE
464 04-07-23 probe.win32: generalize #include dir order search
465 04-07-17 regress.sh: add INPUT -x for chmod +x
466 04-07-01 regress.sh: TMP => TWD
467 04-06-29 regress.sh: put COMMAND in $TWD too
468 04-06-21 regress.sh: mkdir -p INPUT and OUTPUT intermediate dirs
469          TEST.mk: add :TEST: -- to disable .c .sh search
470 04-06-18 TEST.mk: add .SCAN.tst
471 04-06-17 regress.sh: TEST returns true if active, false otherwise
472          regress.sh: add CD to change test pwd from $TWD
473 04-06-16 regress.sh: add TWD for ./unit.tmp override
474          regress.sh: DO now flushes previous test
475          regress.sh: INPUT and OUTPUT handle -f for printf instead of print
476 04-06-11 package.sh: make sure $INSTALLROOT/bin is in front of $PATH
477          package.sh: skip nmake if older than 2000-10-31
478 04-05-20 package.sh: fix arg vs. package parse with - or '' to disambuguate
479 04-05-11 package.sh: package verbose update lists closure for package setup
480          package.sh: add src/lib/libardir to nmake proto bootstrap
481          regress.sh: probe for rm -u vs. chmod -R u+rwx
482 04-05-01 package.sh: $CC must be C, not C++; allow release command on $PATH
483 04-04-15 make.probe: check probe_libdir false positives
484          package.sh: add lib/package/*.lic src package subdirs
485          package.mk: add mamfile=0 to inhibit Mamfile generation
486          iffe.sh: config name_DECLARED => HAVE_name_DECL
487          iffe.sh: fix mac to handle default value
488 04-04-11 iffe.sh: normalize sed [\\\\/] quoting
489 04-04-04 package.mk: only checksum generated tarballs
490          mamprobe.sh: add STDCHMOD
491 04-04-01 C+probe: set export LANG=C for uniform error messages
492          make.probe: another CC.STDLIB tweak
493          package.sh: fix regress core dump pattern, expand [a-z] match ranges
494 04-03-31 Makefile: add intl :MAPLIB: test
495          make.probe: fix CC.STDLIB search; drop CC.* path duplicates
496 04-03-28 iffe.sh: drop unused exec $stdin<&0 dup
497 04-03-25 Makefile: add iconv :MAPLIB:
498          package.sh: use ${PING:-ping -c 1 -w 4}, allowing admin.db override
499 04-03-24 package.mk: add *.md5 checksum for each *.(c|exe|tgz)
500          package.sh: update base change on md5 sum instead of size
501          iffe.sh: adjust case label \ and keyword quoting for ancient /bin/sh
502 04-03-22 probe.win32: ncc => nld
503 04-03-19 CONVERT.mk: change the instructions and old source dir default
504          package.mk: fix recurse=list check
505          package.mk: add *.md5 checksum for each *.(c|exe|tgz)
506          package.sh: fix update base/delta/sync existence check
507 04-03-18 iffe.sh: -d2 does not remove core dumps on exit
508 04-03-17 package.sh: fix make recurse arg/action order
509 04-02-29 package.sh: add regress action to compare current and previous tests
510          package.sh: fix sgi.mips[23] HOSTTYPE test for old irix cc
511          package.sh: add `export variable ...'
512          package.sh: admin action now handles host name with non-id chars
513          package.sh: non-numeric M T W in admin.db disables that action
514          package.sh: fix admin write binary local vs. shared clash
515          cc.hp.pa: add _AST_CC_hp_pa_DEFAULT=+DAportable
516          cc.hp.pa64: sync with cc.hp.pa
517          cc.ibm.risc: -bnolibpath => -blibpath:/usr/lib:/lib
518          probe.win32: sync with make.probe
519          make.probe: fix last chance dynamic test
520          make.probe: add hp.pa CC.EXPORT.DYNAMIC -Wl,-E
521          make.probe: add ibm.risc CC.EXPORT.DYNAMIC -bexpall
522          make.probe: move probe_dll_def to the end of probe_dll
523          package.mk: capture subcomponent mamfile recursion
524 04-02-24 make.probe: strip "..." from cc/ld traces
525          iffe.sh: add ``set [no]define'' to disable macro #define/#undef
526 04-02-23 make.probe: rework CC.LD search
527 04-02-14 make.probe: add CC.EXPORT.DYNAMIC for main dynamic sym export
528          make.probe: resurrect CC.PIC with separate semantics from CC.DLL
529          make.probe: add CC.SHARED.LD for CC.SHARED linker
530          C+probe: clear DISPLAY to stifle interactive windows
531 04-02-11 iffe.sh: handle ``siz void*'', add cross{ ... }end
532          make.probe: add { CC.AR CC.SIZE }, fix cross command search
533          cc.darwin.ppc: change $cc => $CC for old ksh + libast conf bug
534 04-02-09 make.probe: drop -nostartfiles from CC.SHARED for C++
535 04-02-04 package.sh: fix cross compilation bug that mixed binary formats
536 04-02-02 package.sh: package admin now ditto's bin/package too
537 04-01-30 cc.sgi.mips3: drop warning 3421
538 04-01-11 regress.sh: output label#count for tests in loops
539 04-01-05 regress.sh: fix bug that ignored the first SAME
540 04-01-04 crossexec.sh: fix typo that did not recognize rcp
541 03-12-19 mamake.c: add `foolib:foo:libfoo' to recurse()
542 03-10-11 regress.sh: add EXPORT, export COLUMNS=80 for message consistency
543 03-09-23 ratz.c: fix tar header number parse bug that skipped to next number
544          regress.sh: rm cleanup now handles files matching -*
545 03-09-11 iffe.sh: add unnamed { ... } blocks
546          regress.sh: add COPY from to, like MOVE but comprison still done
547          regress.sh: rm -rfu to handle test dirs w/o u+rwx
548 03-08-14 Makfile: add hello.c to the manifest
549 03-08-11 package.sh: fix `html binary' generation
550 03-06-21 package.sh: fix INITROOT initialization bug
551          package.sh: make sure admin logs exists before tail'ing
552 03-06-11 probe.win32: fix $(BINDIR) typo that expanded in sh instead of make
553          cc.mvs.390: return code 4 yields exit code 3 but its *really* ok
554          package.sh: fix onpath function global var conflict
555          make.probe: add CC.DIALECT { GNU -dD }
556          package.mk: add Mamfile to lcl manifest
557 03-06-10 package.sh: fix setup action typo that only checked the INIT package
558          package.sh: *.s390x => *.s390-64
559 03-06-09 package.mk: add cyg :POSTINSTALL:
560 03-06-08 make.probe: fix CC.STDLIB logic
561          hurl.sh: add User-Agent identification
562          package.sh: tweak source and binary installation instructions
563          cc.hp.pa,ld.hp.pa: +-Wl,+cdp,${INSTALLROOT}/lib/: drops abs lib paths
564          ldd.hp.pa: add
565 03-06-06 package.sh: fix $INSTALLROOT/bin/ldd check
566          make.probe: add CC.STDLIB verification
567 03-06-04 make.probe: add +forceread +noforceread
568 03-05-11 hurl.sh: handle http://host:port/path
569 03-05-06 package.sh: fix setup action PACKAGEROOT and INIT logic
570 03-05-05 package.mk: fix cygwin tarball names
571 03-04-30 package.sh: move (cc|ld|ldd).$HOSTTYPE updates from Makefile
572 03-04-27 make.probe: fix mvs CC.PREFIX.SHARED "lib" => ""
573          make.probe: add CC.DLL.DIR = $(BINDIR) or $(LIBDIR) 
574          make.probe: add { CC.LD.LAZY CC.LD.NOLAZY CC.LD.RECORD CC.LD.NORECORD }
575          probe.win32: sync with latest CC.*
576 03-04-25 mamprobe.sh: add args to `. $makeprobe' for ancient sh
577 03-04-23 package.mk: fix dup "covered by" licenses
578 03-04-22 probe.win32: CC.DIALECT += "LIBPP -I-" for all cc's
579          package.sh: fix admin write binary tarball snarf
580 03-04-21 package.mk: package covered *.@(pkg|lic) too
581 03-04-15 package.mk: don't generate incremental archives for lcl 
582          package.mk: add incremental=[source:1 binary:0] archive control
583          package.sh: generate $INSTALLROOT/bin/cc wrapper for CC != cc
584          package.sh: admin must ditto lib/package/*.@(pkg|lic) too
585          mamake.c: ignore time of ignore prereqs
586          mamake.c: -D2 lists propagated times
587 03-04-11 package.mk: tidy up cyg tarballs
588          package.sh: fix old shell clash between get() and $get
589 03-04-05 package.mk: restore *.inx generation somehow lost during cyg additions
590          package.sh: add pthread_num_processors_np() last resort for cpu count
591          package.sh: use `make believe' to accept mamake generated files
592          package.sh: handle `make [make-flags] [target ...]'
593          mamake.c: ignore -e
594 03-03-21 package.mk: fix cyg old make typo
595          package.sh: switch to `package setup' instructions
596 03-03-19 package.sh: add registry checks for `host cpu'
597          package.sh: `results failed' now lists core dump messages
598 03-03-17 package.sh: on cygwin verify 'ntsec binmode' in $CYGWIN or die
599          Makefile: install gcc wrapper if no cc
600          package.mk: add :DETAILS: { :README: :EXPORT: :INSTALL: :TEST: } ops
601 03-03-12 package.mk: add :DETAILS: for style-specific details
602 03-03-11 package.sh: add beta setup/update support
603          TEST.mk: add (TESTCC) prereq for .sh tests
604 03-03-07 hurl.sh: add
605 03-03-06 iffe.sh: fix lib win32 test cygwin vs native incompatibility
606          iffe.sh: change internal stdio.h guard to handle C++ inline vs. macro
607 03-03-03 package.sh: check for curl or wget for update
608          package.sh: add setup action == update read make
609          package.sh: fix packageroot() typo that showed up in non ~user shells
610          mamake.c: treat name+=value args like name=value
611          mamake.c: add ${var?*|value?match?no-match?}
612          mamake.c: fix archive vs. dynamic bind logic
613 03-02-28 package.sh: add the "cyg" (cygwin) package type
614          package.mk: add "cyg" stubs, :CATEGORY: for category name(s)
615 03-02-25 mamake.c: add -D4 system(3) debug trace
616 03-02-24 package.mk: change --mismatch to --corrupt=accept
617 03-02-14 ratz.c: add _WIN32 setmode([01],O_BINARY) and fopen "rb"/"wb"
618 03-02-12 Makefile: handle getconf LIBPATH with host pattern
619 03-01-31 package.mk: fix .lic search
620 03-01-30 package.sh: handle { INIT ksh nmake } already installed elsewhere
621          package.sh: admin handles command outside of $PACKAGEROOT/bin
622          Makefile: install $(INSTALLROOT)/lib/make/package.mk
623 03-01-28 package.sh: admin remote commands on one line to please syslog
624 03-01-23 probe.win32: borland and mingw32 tweaks
625 03-01-22 package.sh: fix $CC test to ignore set -x trace -- duh
626 03-01-16 ditto.sh: tw --chop on by default
627 03-01-14 package.sh: use /bin/cp to copy previous binaries to bin/ok/
628          package.sh: admin now initiates remote exec and copy from local host
629 03-01-12 package.sh: handle admin "xxx:" default root
630 03-01-03 probe.win32: add /usr/include/borland path truncation workaround
631 02-12-10 iffe.sh: add <&$nullin >&$nullout to checkread() $cc
632 02-12-06 probe.win32: fix inlcude => include typo, add lcc lib
633          probe.win32: CC.MAKE.OPTIONS = nativepp=0
634 02-12-04 mamake.c: fix ${foo-bar} to expand foo if defined
635 02-11-28 probe.win32: add C++ and -I- CC.DIALECT checks
636 02-11-26 package.sh: package release now checks for second level files
637 02-11-22 package.sh: update action now uses HTTP/1.0
638 02-11-21 probe.win32: update the vc include dir test
639 02-11-20 make.probe: fix CC.LD.ORIGIN typo that expanded make var
640 02-11-13 packahe.mk: fix list.install => list.installed typo
641 02-11-12 make.probe: add CC.LD.ORIGIN for a.out origin dir relative dll search
642          make.probe: add CC.LD.STRIP for link time a.out strip
643          package.sh: fix package_use vs. PACKAGE_USE check
644 02-10-24 WWW.mk: fix bug that required a :WWWBIN: assertion to post
645 02-10-23 mamake.c: fix unuinitialized time in make()
646          ratz.c: fix meter buffer overflow
647 02-10-20 package.sh: fix lib/probe/C/make/probe update test
648 02-10-18 probe.win32: update for mingw
649          make.probe: add bash workaround to SHELLMAGIC test
650          package.sh: work around yet another cygwin hassle
651 02-10-17 iffe.sh: short circuit id check for *[-+/\\]*
652 02-10-08 regress.sh: unset FIGNORE to avoid rm . errors
653          package.sh: unset FIGNORE to avoid rm . errors
654          package.sh: $CC must at least compile and executable hello world
655 02-10-04 package.sh: $INSTALLROOT/lib/package/tgz=>$PACKAGEROOT/lib/package/tgz
656          package.mk: $(ED) => $(STDED), $(EDFLAGS) => $(STDEDFLAGS)
657          iffe.sh: add identifier checks for tests that (implicitly) require them
658          iffe.sh: disambiguate a few --config macros
659 02-10-02 iffe.sh: fix shell=bsh `hdr a/b'
660 02-09-30 package.sh: handle chmod of -* files
661          package.sh: verify that $SHELL is Bourne compatible
662          package.sh: tighten PACKAGE_USE logic PATH,LIBPATH,etc. validation
663          iffe.sh: fix bug that didn't define mac variable on success
664 02-09-22 package.sh: handle admin_action=ditto
665          iffe.sh: --config sizeof(foo) macro is SIZEOF_foo
666          iffe.sh: fix long.long test so it doesn't defeat uwin "typ long.long"
667          mamprobe.sh: convert $("foo") nmake string constants
668 02-09-21 mamprobe.sh: "-" info-path writes probe info to stdout
669 02-09-11 make.probe: move from nmake src to be part of mamprobe.sh
670          mamprobe: generate from mamprobe.beg C.probe make.probe mamprobe.end
671          mamake.c: pass cc absolute path to mamprobe
672          package.sh: generate mamprobe -- yuk (at least its confined to INIT)
673          iffe.sh: lcl,nxt: drop default sys/ check
674          ditto.sh: tw --logical by default; add --physical
675 02-09-10 package.sh: SHELLMAGIC creeps into package too -- duh and fooey
676 02-09-09 ditto.sh: test that remote .profile exists before sourcing
677 02-09-06 package.sh: don't ditto nfs junk
678          ditto.sh: --show now lists directory ops instead of enumerating all
679 02-09-05 ditto.sh: add --remote={rsh|ssh}
680          package.sh: add admin [[{rsh|ssh|-}]:]directory
681 02-09-02 iffe.sh: change 'print -r --' to 'print -r -' for ksh86 compatibility
682 02-09-01 cc.unix.mc68k: add for ancient 3b1
683 02-08-22 package.sh: fix component() to test for components -- duh
684          Makefile: add LICENSE:.DONTCARE to workaround mam
685 02-08-11 iffe.sh: provide defaults for LD_* additions
686 02-08-07 ratz.c: change -m to use * instead of non-portable inverse video
687 02-07-17 mamprobe.sh: close tmp file in trap before rm for cygwin
688          package.sh: fix "type" to handle i1586 (P4)
689          package.sh: add the view action
690 02-06-28 package.sh: handle multiple packages for release action
691 02-06-27 package.sh: catch sol*.sparc=>sol*.sun4 when CC=gcc
692 02-06-14 package.sh: fix admin_action to not include qualifiers
693          package.sh: fix help/html doc typo
694 02-06-11 package.sh: fix ditto update doc to `PACKAGEROOT field matching *:*'
695 02-06-07 WWW.mk: change substitute $("\n") to \n
696 02-06-06 package.sh: clarify output streams for help/html
697 02-05-22 mamake.c: fix executable file check to use (S_IXUSR|S_IXGRP|S_IXOTH)
698 02-04-04 package.sh: fix update to differentiate *.sun4 and sun4
699 02-03-27 package.sh: yacc/bison warning only if both missing
700 02-03-24 mamake.c: all shell actions wrapped with -c to avoid #! problems
701 02-03-23 package.sh: recover $PACKAGEROOT/bin/package if not in INIT package
702          package.sh: precheck $CC, not `cc'
703          package.sh: fix install to use pax -ps to preserve set-uid/gid
704          package.sh: fix install to use list.installed for existing files only
705 02-03-17 package.sh: fix PAX initialization that was sometimes omitted for read
706          package.sh: fix update delta sync fetch
707 02-02-14 iffe.sh: fix macro{ }end docs to include "
708          iffe.sh: add dfn to extract #define from headers
709          iffe.sh: handle nxt #include ok but no line sync
710          iffe.sh: drop local header clash logic
711          iffe.sh: add -X, --exclude=dir to exclude -I dirs
712          iffe.sh: lcl,nxt now generate <...> headers instead of "..."
713          package.sh: admin.db root dir matching -* disables host
714          package.mk: fix package.src.pat typo -- too many )
715          package.mk: add { :COVERS: :DESCRIPTION: :REQUIRES: }
716          package.sh: handle { :COVERS: :DESCRIPTION: :REQUIRES: }
717          Makefile: move proto.c generation to the proto component dir
718 02-02-02 execrate.sh: add for .exe challenged win32 systems/commands
719          mamprobe.sh: add STD* commands/flags
720          mamake.c: update mamprobe info when older than mamprobe executable
721          package.sh: move ed/ex workaround to mamprobe.sh
722          package.sh: fix `host type' bug that incorrectly assumed sun4 for sol
723          package.sh: add execrate(1) hooks for challenged systems
724          package.sh: add check for { cc ar nm yacc/bison } before make
725          ratz.c: fix "rb" vs. "r" macro tests
726          iffe.sh: add nxt, similar to lcl but defines _nxt_foo for #include
727          iffe.sh,package.sh: remove vaibale from sccs,cvs ident strings -- duh
728 02-01-24 C+probe: check CC.DYNAMIC to handle cc that accept but ignore -B*
729          iffe.sh: handle 'mem struct.a.b'
730 02-01-22 iffe.sh: cache (internal) `foo vs. struct foo' test results
731          package.sh: uts.370 => uts.390
732 02-01-18 package.sh: fix uts hosttype
733 02-01-17 package.sh: add 'results failed ...' to list failures only
734          package.sh: change ARCH internal var to all_types to avoid env conflict
735          iffe.sh: fix hdr/lib precheck that missed some -- ouch
736          iffe.sh: fix noexecute test that forgot to check compile first!
737 02-01-15 ratz.c: fix path[] type typo
738 02-01-01 package.mk: tighten license search
739 02-01-08 package.sh: `pwd` => ${PWD:-`pwd`}
740          package.mk: expand license file pattern match
741 02-01-04 iffe.sh: fix `exp name "value"' bug that duped "value"
742          iffe.sh: fix initial <sys/types.h> check to honor --config
743 01-12-25 iffe.sh: fix bug where -o file restored old file
744 01-12-23 package.mk: uniq the closure lists
745 01-12-07 ratz.c: fix --meter to retain paths containing " -- "
746 01-11-30 ratz.c: use sear_system() to execute; should work on all windows
747 01-11-28 ratz.c: fix sear_rm_r() to check SetCurrentDirectory() status
748 01-11-26 ditto.sh: drop n+=v for ksh compatibility
749 01-11-21 ditto.sh: add rsync script replacement [hey, it works!]
750          package.sh: add [ditto]:directory notation to admin.db
751 01-10-31 package.sh: handle *.sum paths with embedded space
752          package.sh: change executable() to onpath()
753          package.sh: executable([!] foo) replaces test [!] -x foo (.exe hack)
754          package.sh: add os2 fix to `host type'
755          mamake.c: add .exe hack
756          iffe.sh: fix intrinsic function lib test
757          mamprobe.sh: update pic probe to match make.probe for linux.ia64
758 01-10-30 package.sh: make action skeleton view now checks subdirs
759 01-10-20 package.sh: don't recurse into leaf dirs matching $MAKESKIP
760          package.mk: tarball package.notice replaces `license accepted' prompt
761          package.sh: eliminate `license accepted' prompt
762          package.sh: add update to download latest from a url
763          package.sh: use builtin arithmetic when we know its ksh
764          iffe.sh: unkown -> unknown
765 01-10-18 package.sh: convert to YYYY-MM-DD delta releases instead of NNNN
766          package.mk: convert to YYYY-MM-DD delta releases instead of NNNN
767          ratz.c: fix -m for paths containing \f\n\r\v
768 01-10-16 ratz.c: _SEA_* => SEAR_*
769          ratz.c: preserve stdin for sear_exec()
770          ratz.c: add recursive sear_rm_r() to sear_exec() tmp dir cleanup
771 01-10-10 mamprobe.sh: add mam_cc_SHELLMAGIC
772          package.sh: add nfs wakeup call to admin to avoid stale file handles
773 01-10-04 cc.darwin.ppc: -flat_namespace is not longer the default (huh)
774 01-10-01 package make: prepend $INSTALLROOT/bin/ok to PATH
775          package read: save cpy of bin/package when reading the INIT package
776          mamprobe.sh: allow cc path with optional arguments
777 01-09-24 Makefile,package.sh: add $INSTALLROOT/bin/.paths initialization
778 01-09-19 package.mk: add recurse to list.package.*
779          package.sh: bootstrap build nmake with _BLD_STATIC for _WIN32
780 01-09-11 ratz.c: add _SEA_SKIP & _SEA_COMMAND for self extracting archives
781 01-09-07 package.mk: fix output capture to not generate files names with spaces
782 01-09-07 package.mk: fix delta release number search
783 01-08-11 package.mk: handle single gz executable packages (e.g., for ksh)
784          package.sh: fix package install to require nmake only if no *.sum
785          iffe.sh: drop ancient menu and prompt actions; check ./hdr.h clash
786 01-07-17 package: fix use cross compile test to generate files in /tmp 
787 01-06-27 ratz: handle hard and soft links if possible
788 01-06-07 Makefile: fix :MAPLIB: for sco
789 01-05-31 crossexec.sh: add
790          iffe.sh: add -x crosstype to run crossexec
791          iffe.sh: exp test now handles pass{}end fail{}end yes{}end no{}end
792          package.sh: add package host canon external-host-type-name
793          package.sh: fix `use USER' lookup for shells that support ~USER
794          cc.*: add -dumpmachine to dump target HOSTTYPE
795 01-05-18 iffe.sh: drop $HOME/tmp/t.sh debug trace -- oops
796 01-05-01 mamake.c: scan() now handles :PACKAGE: foo:command
797 01-04-26 *.sh: expand [a-z][A-Z][0-9] for non-contiguous character codes
798          iffe.sh: fix run *.sh for shells that don't $* across . command
799          cc.mvs.390: recode for /bin/sh
800 01-04-25 package.mk: include non cc-g variants by default
801          package.sh: *[._]* => *?[_.]* for mvs.390 /bin/sh
802 01-04-24 TEST.mk: no tests for VARIANT=="DLL"
803 01-04-22 package.mk,package.sh: tarball text members are ascii encoded
804 01-04-18 package.mk: allow package name to be the same as one of its components
805          cc.mvs.390: handle .C .cpp .cxx
806          cc.mvs.390: compensate for -o that does not overwrite
807 01-04-01 regress: fix SAME that just skipped it -- we should regress regress!
808          iffe: fix bug that didn't emit _hdr_foo for internal hdr tests
809          iffe: fix lcl bug for cc -E that doesn't emit line syncs
810          ratz: add ascii=>ebcdic conversion for text archive members
811          mamake: fix buffer overlap bug that clobbered the probe file path
812 01-03-17 iffe: handle : separator as first arg
813 01-03-15 mamake.c,ratz.c,release.c: add <stdlib.h> and <string.h>
814 01-02-26 iffe.sh: fix bug that omitted runtime #define for `mac' op
815 01-02-22 cc.ibm.risc: handle SF_CLOSE clash in <sfio.h>
816 01-02-14 cc.sgi.mips3,cc.sgi.mips4: handle -mips2 -mips3 -mips4 for cross cc
817          C+probe: quote "$cc" when its an argument!
818          mamake: execute actions with $SHELL, ignored signals back to default
819          package.sh: nmake check error output to /dev/null
820          package.sh: fix INIT a.out updates for knr cc
821          package.sh: package list now handles large tgz dirs
822          package.sh: *-ok executables moved to ok/* for *.dll systems
823          iffe.sh: change "exec >&-" to "exec >/dev/null" else linux mkdir fails!
824          mamake: handle `bind -lx [dontcare]'
825 01-02-12 ratz.c: fix _PACKAGE_ast includes
826          package.sh: $HOSTTYPE env overrides if $PACKAGEROOT/arch/$HOSTTYPE/
827          package.sh: $CC ^HOSTTYPE=[A-Za-z_0-9.]*$ overrides HOSTTYPE
828          iffe.sh: fix dat code that used previous $tmp.exe
829          iffe.sh: fix dat code for _DLL imports
830 01-02-09 iffe.sh: add copy() for shells with the dissappearing here doc bug
831 01-02-08 Makefile: guard against null $(CC.HOSTTYPE)
832 01-02-06 Makefile: separate out cc,ld,ldd workarounds (so they will be packaged)
833 01-02-02 package.sh: fix package use for $INSTALLROOT != */$HOSTTYPE
834          package.sh: create intermediate recursion makefiles when needed
835          package.sh: add $SECONDS to the DEBUG trace prompt
836 01-01-01 ratz.c: #ifdef for uwin ncc
837          iffe.sh,package.sh: check PACKAGE_PATH for local installations
838          package.sh: add psrinfo for osf.alpha host cpu 
839          package.sh: change pax --meter probe; some hang on /dev/tty
840          package.sh: fix `install flat ARCH'
841          mamake: eliminate loops from scan order
842          C+probe: add probe_verbose -V for aix cc=xlc
843          cc.ibm.risc,ldd.ibm.risc: add
844          package.mk: list refs to top-level licenses only
845          package.mk: add local link table to change log html
846 00-12-25 package.sh: `no package archives' is a hard error, duh
847          package.sh: reorder host type logic for lame shells
848          mamake.c: getcwd => getwd for NeXT -- how about posix==default guys
849          iffe.sh: really gross workaround for NeXT -lposix stdout null's
850          iffe.sh: handle cc -E that insists on compiling
851 00-12-15 iffe.sh: ancient sh function call blows $*; call only when $# == 0
852          *.sh: `getopts 2>/dev/null` => `(getopts)2>/dev/null` for ancient sh
853          package.sh: fix LD_LIBRARY*_PATH initialization
854          cc.next.m68k: add for _POSIX_SOURCE and linker multiply defined syms
855 00-12-12 ratz: add --meter
856          package.sh: a few VPATH fixes
857          Makefile: don't override *.mips* cc if -version not accepted
858 00-12-11 package.mk: *.inx now contains name=value
859 00-12-07 package.sh: handle PC netscape . => _ pathname mangle
860          WWW.mk: .tar.gz => .tgz
861 00-11-27 package.sh: add checklicense() to do license checks at read time
862          package.mk: change component list from preformat to table
863 00-10-31 package.mk: *.pkg must assert closure
864          package.mk: add cc- variants to list.package.binary
865          package.sh: omit dups from package list
866          package.sh: invalid arg gives one line Usage
867          package.sh: relax checkaout checks for non-owners
868          package.sh: package use sets NPROC if not already set or [01]
869          proto.c: add $(INSTALLROOT)/include/ast hack
870 00-10-26 WWW.mk: add .SOURCE rhs to :WWWPAGE:
871 00-10-25 package: fix install
872          package.mk: add list.install
873 00-10-22 regress: fix VIEW to skip empty dirs
874 00-10-19 package.mk: $(PACKAGEROOT)/bin/nmake => $(PACKAGEROOT)/bin/manmake
875          iffe: validate #define identifiers
876 00-10-18 C+probe: mac os10 additions
877          package: add DYLD_LIBRARY_PATH initialization
878          add ldd.$(CC.HOSTTYPE)
879 00-10-01 iffe: handle -I* -L* options
880 00-09-21 mamake: add libxxx and xxx to makefile ordered prereqs
881 00-09-19 C+probe: add probe_longlong
882 00-09-11 package: drop manmake and $PACKAGEROOT/bin/nmake
883 00-09-08 iffe: verfiy that $cc is a C compiler
884 00-06-14 mamprobe: fix win32.* probe
885          mamake: fix bug that used lower view path for generation
886          package: don't clobber $PACKAGEROOT/bin/nmake
887 00-06-01 C+probe: fix stdinclude *again*
888          package: fix write delta source to use default pax format
889          package: add disambiguating bias for sgi.mips3 over sgi.mips4
890          package.mk: fix for directory content packages lib ast-locale
891 00-05-01 iffe: fix invalid _LIB_ macro identifier 
892 00-04-11 C+probe: uniq stdinclude and stdlib, fix usrinclude
893 00-04-01 regress: fix explicit OUTPUT bug that didn't compare with expected
894 00-03-17 package: all archives are .tgz for binary download
895          package: $(PACKAGEROOT)/LICENSES/* in source and binary archives
896          package: implement install and verify actions
897          iffe: add exp, pth file dir ..., fix lib - -lfoo, fix lib - - -la -lb
898          iffe: -L* must affect LD_LIBRARY* hacks for .exe tests -- yuk
899          package.mk: add *.pkg :INDEX:
900 00-03-07 package: add admin action
901 00-03-06 makefile: install optional make probe override script C+make+probe.lcl
902 00-02-14 --- release 1.0 ---
903          ratz: treat "foo/" as a dir, not a regular file
904          package: clarify source and binary installation instructions
905          package: fix so binary packages can install without cc
906          package: "ratz" now a non-archive package (the only one) for bootstrap
907          package: handle VPATH=a:b arg
908          package.mk: "ratz" package adjustments
909          Makefile: use :PACKAGE_INIT: to support binary INIT packages
910          WWW.mk: add :WWWALL:
911          C.probe: fix .so check that let .dll slip through
912          iffe: fix config sh var assignment for HAVE_member_IN_struct
913          iffe: fix config sh var assignment for symbol_DECLARED
914          package: delay PATH export until dll hack exports complete
915          package: don't forget binary package $(INSTALLROOT)/lib(32|64)
916          package: add delta change log for source packages
917 00-02-10 mamprobe: add mam_cc_DLLBIG
918          package: fix spelling typos
919          package: add html help output
920          package.mk: beef up source and binary help => html
921 00-02-08 package: mkdir man/man[138] in the new arch to cover MAM bug
922 00-01-28 package,release: add -rcount to release
923          package: fix linux "host cpu" and "host rating"
924          package: copy *.lic to $PACKAGEBIN for "make" and "write binary"
925          package: fix 'release change log' case match
926 00-01-24 package: add copyright action
927          mamprobe: add -D_BLD_DLL to mam_cc_DLL
928 00-01-11 package: tsort for package write
929          package: early verification that $CC works
930          package: add non-interactive command arg for use action
931          proto: fix -C intermediate mkdir()
932          mamprobe: unixware.i386 ksh workaround
933          C.probe: move hosttype to C.probe (with unixware.i386 workaround)
934          WWW.mk: fix mm2html option quoting
935          WWW.mk: add .SCAN.mm
936          WWW.mk: don't force static=1; grab dll's instead
937          *.sh: fix getopts test to handle botched implementations like osf.alpha
938          iffe.sh: fix read -r test
939 99-12-25 iffe: tweak verbose messages
940          iffe: hand code non-optget getopts parse
941          iffe: fix bash quoting bug again
942          iffe: do test -w . after option parse
943          package: fix PACKAGEROOT search
944 99-11-19 --- release 0.2 ---
945 99-11-19 first working package & friends
946 99-10-31 change from lib0ast to INIT; add MAM and package bootstrap
947          hostinfo: gobbled by package
948 99-10-01 iffe: add --config, yes{...}end no{...}end, fix read -r workaround
949 99-09-27 iffe: add --all --verbose, --* set options
950 99-09-22 regress: -v disables long line truncation
951 99-09-11 WWW.mk: WWWDIR and MM2HTMLINFO are now lists searched in $(HOME)
952 99-08-11 hostinfo: fix type sgi.mips4
953 99-06-24 WWW.mk: add
954 99-06-08 hostinfo.sh: ${TMPDIR:-/tmp}
955 99-06-07 TEST.mk: add
956 99-06-01 iffe: add `siz type' for _siz_type == sizeof(type)
957 99-05-11 hostinfo,iffe,regress,use: long options
958 99-05-01 C.probe: fix over aggressive stdinclude, e.g., /usr/include/machine
959 99-04-01 hostinfo: sgi.mips? -o32 and -n32 checks
960          iffe: check that . is writable
961 99-03-17 hostinfo: fix for cc not found
962          dl.c,hello.c,m.c: headers in conditionals to force .DONTCARE
963          C.probe: extra check for include dirs pulled in by <sys/types.h>
964 99-03-03 regress: add `UNIT - ...' for extra args
965          Makefile: add (_hosttype_) prereq for cc
966 99-01-23 hostinfo: tweak rating, use /proc/cpuinfo if there
967 99-01-11 C.probe: shlib before lib, /usr before /
968 98-12-25 iffe: work around win32.alpha intrinsic clash with -O
969 98-11-11 regress: fix UNIT PATH lookup
970 98-11-01 regress: add PROG
971 98-10-01 hostinfo: add unixware.*
972          use: export PACKAGE_* 
973 98-08-11 C.probe: add /usr/include check (for sco CC)
974          hostinfo: handle uwin uname update
975 98-05-01 regress: fix bug sometimes didn't list last test
976 98-04-01 hostinfo: add cc path arg
977          hostinfo: now works with /bin/sh
978          Makefile: strengthed -lm probe
979 98-01-23 Makefile: check for -ldl -lm
980          C.probe: handle gcc -v -E phony include dirs
981          iffe: fix lcl by dropping sort -u -- we need the real first
982          iffe: `mem x' to test if x is a non-opaque struct
983 98-01-11 $(INSTALLROOT)/lib32 for sgi.mips3
984          $(INSTALLROOT)/lib64 for sgi.mips4
985          add cc.hp.pa
986 98-01-01 cc.sgi.mips*: turn off ld library multiply defined
987 97-10-11 regress: add VIEW function for locating data
988 97-10-01 Makefile: -ldl test moved to libdll Makefile
989 97-08-11 regress: add MOVE
990          regress: add SAME
991          regress: use getopts
992          regress: `EXEC' repeats previous test
993 97-07-17 use: tweak PATH and LIBPATH bootstrap order
994          iffe: fix lcl bug that botched pathnames with embedded spaces
995 97-06-12 iffe: add npt `needs prototype' test
996 97-05-09 hostinfo: mvs.* => mvs.390
997          Makefile: cc.$(_hosttype_) workaround installed here
998          iffe: fix nolink{ ... }end
999          iffe: add [no]static{ ... }end for static link test
1000          C.probe: _probe_PATH => _probe_export which must be eval'd
1001 97-04-01 use: _RLD_ROOT set too
1002 97-03-17 mm2html: changed inner loop
1003          mm2html: handle .if|.ie|.el, .so
1004          mm2html: handle different man styles
1005          mm2html: differentiate mm/man in some non-obvious cases
1006          hostinfo: r5000 is not mips4
1007 97-02-14 hostinfo: validate type with cc
1008 96-12-25 C.probe: uwin tweaks
1009          iffe: use `...` instead of $(...) for alpha /bin/sh
1010          iffe: fix `typ' divide by 0
1011          iffe: `lcl' now drops X: prefix
1012          iffe: +l* -> -l*
1013          iffe: eval around ${...#%...} for bsd /bin/sh
1014          use: add sgi.mips LD_LIBRARY<abi>_PATH variants
1015          use: add -e to list exports
1016          iffe: lcl leaves leading [a-zA-Z]: for dos
1017          iffe: fix no{link|output|execute} logic
1018          C.probe: don't automatically add /usr/include for non-hosted compilers
1019          C.probe: don't automatically place /usr/include last
1020          C.probe: check gcc style -v -E for stdinclude usrinclude
1021 96-11-28 iffe: check BASH_VERSION for IFS botch
1022          iffe: typ long.xxx only if sizeof(long xxx) != sizeof(xxx)
1023          hostinfo: fix sgi.mips[234] tests
1024          hostinfo: fix ncr.i386 tests
1025 96-10-31 iffe: work around old bsh here doc bug by running separate sh
1026 96-10-11 iffe: *.iffe and *.iff for iffe src files
1027          hostinfo: tighten sgi.mips cpu type check
1028 96-10-01 C.probe: add probe_libdir to catch alpha /usr/shlib
1029 96-09-17 iffe: fix typ bug that failed for single id types!
1030 96-08-31 hostinfo: handle recent sgi hinv cpu changes
1031 96-07-17 make sure sizeof(long xxx)>sizeof(xxx) for typ long.xxx
1032 96-05-09 C.probe: drop multiple / in stdinclude
1033 96-02-29 use: package root must have bin and lib subdir
1034          mm2html: add
1035          C.probe: probe_members += -whole-archive for gcc
1036          iffe: add + fix the blasted `...'...\\...'...`
1037 96-01-31 use: add pkg dir
1038          hostinfo: add tandem
1039 96-01-01 hostinfo: windows_nt|windows[0-9][0-9] -> win32
1040 95-11-24 hostinfo: linux-aout.* for non-elf linux
1041 95-11-11 use: add aix LIBPATH
1042 95-10-11 hostinfo: no args prints type
1043 95-08-11 use: add
1044 95-05-09 save original PATH in _probe_PATH
1045          beef up library dir probe
1046 95-04-01 use c source suffix if it still preserves the dialect
1047          add hostinfo
1048          add lib/hostinfo/typemap user type map
1049          add sol.sun4 cpu count
1050          fix C.probe to properly handle C/C++ combined compiler drivers
1051          add NeXT to hostinfo
1052          bummer: mach has /usr/bin/hostinfo
1053 95-03-19 fix dialect executable test
1054 95-03-19 --- release 0.0 ---