INIT package

The INIT package is required by all other packages. It contains the package command, support scripts, and utilities. Components in this package:

INIT

The software is covered by this license:

Individual components may be covered by separate licenses; refer to the component source and/or binaries for more information.

A recent release change log is also included.


release change log


All recorded changes follow.


INIT changes


01-08-11 package.mk: handle single gz executable packages (e.g., for ksh)
	 package.sh: fix package install to require nmake only if no *.sum
	 iffe.sh: drop ancient menu and prompt actions; check ./hdr.h clash
01-07-17 package: fix use cross compile test to generate files in /tmp 
01-06-27 ratz: handle hard and soft links if possible
01-06-07 Makefile: fix :MAPLIB: for sco
01-05-31 crossexec.sh: add
	 iffe.sh: add -x crosstype to run crossexec
	 iffe.sh: exp test now handles pass{}end fail{}end yes{}end no{}end
	 package.sh: add package host canon external-host-type-name
	 package.sh: fix `use USER' lookup for shells that support ~USER
	 cc.*: add -dumpmachine to dump target HOSTTYPE
01-05-18 iffe.sh: drop $HOME/tmp/t.sh debug trace -- oops
01-05-01 mamake.c: scan() now handles :PACKAGE: foo:command
01-04-26 *.sh: expand [a-z][A-Z][0-9] for non-contiguous character codes
	 iffe.sh: fix run *.sh for shells that don't $* across . command
	 cc.mvs.390: recode for /bin/sh
01-04-25 package.mk: include non cc-g variants by default
	 package.sh: *[._]* => *?[_.]* for mvs.390 /bin/sh
01-04-24 TEST.mk: no tests for VARIANT=="DLL"
01-04-22 package.mk,package.sh: tarball text members are ascii encoded
01-04-18 package.mk: allow package name to be the same as one of its components
         cc.mvs.390: handle .C .cpp .cxx
         cc.mvs.390: compensate for -o that does not overwrite
01-04-01 regress: fix SAME that just skipped it -- we should regress regress!
	 iffe: fix bug that didn't emit _hdr_foo for internal hdr tests
	 iffe: fix lcl bug for cc -E that doesn't emit line syncs
	 ratz: add ascii=>ebcdic conversion for text archive members
	 mamake: fix buffer overlap bug that clobbered the probe file path
01-03-17 iffe: handle : separator as first arg
01-03-15 mamake.c,ratz.c,release.c: add <stdlib.h> and <string.h>
01-02-26 iffe.sh: fix bug that omitted runtime #define for `mac' op
01-02-22 cc.ibm.risc: handle SF_CLOSE clash in <sfio.h>
01-02-14 cc.sgi.mips3,cc.sgi.mips4: handle -mips2 -mips3 -mips4 for cross cc
	 C+probe: quote "$cc" when its an argument!
	 mamake: execute actions with $SHELL, ignored signals back to default
	 package.sh: nmake check error output to /dev/null
	 package.sh: fix INIT a.out updates for knr cc
	 package.sh: package list now handle large tgz dirs
	 package.sh: *-ok executables moved to ok/* for *.dll systems
	 iffe.sh: change "exec >&-" to "exec >/dev/null" else linux mkdir fails!
	 mamake: handle `bind -lx [dontcare]'
01-02-12 ratz.c: fix _PACKAGE_ast includes
	 package.sh: $HOSTTYPE env overrides if $PACKAGEROOT/arch/$HOSTTYPE/
	 package.sh: $CC ^HOSTTYPE=[A-Za-z_0-9.]*$ overrides HOSTTYPE
	 iffe.sh: fix dat code that used previous $tmp.exe
	 iffe.sh: fix dat code for _DLL imports
01-02-09 iffe.sh: add copy() for shells with the dissappearing here doc bug
01-02-08 Makefile: guard against null $(CC.HOSTTYPE)
01-02-06 Makefile: separate out cc,ld,ldd workarounds (so they will be packaged)
01-02-02 package.sh: fix package use for $INSTALLROOT != */$HOSTTYPE
	 package.sh: create intermediate recursion makefiles when needed
	 package.sh: add $SECONDS to the DEBUG trace prompt
01-01-01 ratz.c: #ifdef for uwin ncc
	 iffe.sh,package.sh: check PACKAGE_PATH for local installations
	 package.sh: add psrinfo for osf.alpha host cpu 
	 package.sh: change pax --meter probe; some hang on /dev/tty
	 package.sh: fix `install flat ARCH'
	 mamake: eliminate loops from scan order
	 C+probe: add probe_verbose -V for aix cc=xlc
	 cc.ibm.risc,ldd.ibm.risc: add
	 package.mk: list refs to top-level licenses only
	 package.mk: add local link table to change log html
00-12-25 package.sh: `no package archives' is a hard error, duh
	 package.sh: reorder host type logic for lame shells
	 mamake.c: getcwd => getwd for NeXT -- how about posix==default guys
	 iffe.sh: really gross workaround for NeXT -lposix stdout null's
	 iffe.sh: handle cc -E that insists on compiling
00-12-15 iffe.sh: ancient sh function call blows $*; call only when $# == 0
	 *.sh: `getopts 2>/dev/null` => `(getopts)2>/dev/null` for ancient sh
	 package.sh: fix LD_LIBRARY*_PATH initialization
	 cc.next.m68k: add for _POSIX_SOURCE and linker multiply defined syms
00-12-12 ratz: add --meter
	 package.sh: a few VPATH fixes
	 Makefile: don't override *.mips* cc if -version not accepted
00-12-11 package.mk: *.inx now contains name=value
00-12-07 package.sh: handle PC netscape . => _ pathname mangle
	 WWW.mk: .tar.gz => .tgz
00-11-27 package.sh: add checklicense() to do license checks at read time
	 package.mk: change component list from preformat to table
00-10-31 package.mk: *.pkg must assert closure
	 package.mk: add cc- variants to list.package.binary
	 package.sh: omit dups from package list
	 package.sh: invalid arg gives one line Usage
	 package.sh: relax checkaout checks for non-owners
	 package.sh: package use sets NPROC if not already set or [01]
	 proto.c: add $(INSTALLROOT)/include/ast hack
00-10-26 WWW.mk: add .SOURCE rhs to :WWWPAGE:
00-10-25 package: fix install
	 package.mk: add list.install
00-10-22 regress: fix VIEW to skip empty dirs
00-10-19 package.mk: $(PACKAGEROOT)/bin/nmake => $(PACKAGEROOT)/bin/manmake
	 iffe: validate #define identifiers
00-10-18 C+probe: mac os10 additions
	 package: add DYLD_LIBRARY_PATH initialization
	 add ldd.$(CC.HOSTTYPE)
00-10-01 iffe: handle -I* -L* options
00-09-21 mamake: add libxxx and xxx to makefile ordered prereqs
00-09-19 C+probe: add probe_longlong
00-09-11 package: drop manmake and $PACKAGEROOT/bin/nmake
00-09-08 iffe: verfiy that $cc is a C compiler
00-06-14 mamprobe: fix win32.* probe
	 mamake: fix bug that used lower view path for generation
	 package: don't clobber $PACKAGEROOT/bin/nmake
00-06-01 C+probe: fix stdinclude *again*
	 package: fix write delta source to use default pax format
	 package: add disambiguating bias for sgi.mips3 over sgi.mips4
	 package.mk: fix for directory content packages lib ast-locale
00-05-01 iffe: fix invalid _LIB_ macro identifier 
00-04-11 C+probe: uniq stdinclude and stdlib, fix usrinclude
00-04-01 regress: fix explicit OUTPUT bug that didn't compare with expected
00-03-17 package: all archives are .tgz for binary download
	 package: $(PACKAGEROOT)/LICENSES/* in source and binary archives
	 package: implement install and verify actions
	 iffe: add exp, pth file dir ..., fix lib - -lfoo, fix lib - - -la -lb
	 iffe: -L* must affect LD_LIBRARY* hacks for .exe tests -- yuk
	 package.mk: add *.pkg :INDEX:
00-03-07 package: add admin action
00-03-06 makefile: install optional make probe override script C+make+probe.lcl
00-02-14 --- release 1.0 ---
	 ratz: treat "foo/" as a dir, not a regular file
	 package: clarify source and binary installation instructions
	 package: fix so binary packages can install without cc
	 package: "ratz" now a non-archive package (the only one) for bootstrap
	 package: handle VPATH=a:b arg
	 package.mk: "ratz" package adjustments
	 Makefile: use :PACKAGE_INIT: to support binary INIT packages
	 WWW.mk: add :WWWALL:
	 C.probe: fix .so check that let .dll slip through
	 iffe: fix config sh var assignment for HAVE_member_IN_struct
	 iffe: fix config sh var assignment for symbol_DECLARED
	 package: delay PATH export until dll hack exports complete
	 package: don't forget binary package $(INSTALLROOT)/lib(32|64)
	 package: add delta change log for source packages
00-02-10 mamprobe: add mam_cc_DLLBIG
	 package: fix spelling typos
	 package: add html help output
	 package.mk: beef up source and binary help => html
00-02-08 package: mkdir man/man[138] in the new arch to cover MAM bug
00-01-28 package,release: add -rcount to release
	 package: fix linux "host cpu" and "host rating"
	 package: copy *.lic to $PACKAGEBIN for "make" and "write binary"
	 package: fix 'release change log' case match
00-01-24 package: add copyright action
	 mamprobe: add -D_BLD_DLL to mam_cc_DLL
00-01-11 package: tsort for package write
	 package: early verification that $CC works
	 package: add non-interactive command arg for use action
	 proto: fix -C intermediate mkdir()
	 mamprobe: unixware.i386 ksh workaround
	 C.probe: move hosttype to C.probe (with unixware.i386 workaround)
	 WWW.mk: fix mm2html option quoting
	 WWW.mk: add .SCAN.mm
	 WWW.mk: don't force static=1; grab dll's instead
	 *.sh: fix getopts test to handle botched implementations like osf.alpha
	 iffe.sh: fix read -r test
99-12-25 iffe: tweak verbose messages
	 iffe: hand code non-optget getopts parse
	 iffe: fix bash quoting bug again
	 iffe: do test -w . after option parse
	 package: fix PACKAGEROOT search
99-11-19 --- release 0.2 ---
99-11-19 first working package & friends
99-10-31 change from lib0ast to INIT; add MAM and package bootstrap
	 hostinfo: gobbled by package
99-10-01 iffe: add --config, yes{...}end no{...}end, fix read -r workaround
99-09-27 iffe: add --all --verbose, --* set options
99-09-22 regress: -v disables long line truncation
99-09-11 WWW.mk: WWWDIR and MM2HTMLINFO are now lists searched in $(HOME)
99-08-11 hostinfo: fix type sgi.mips4
99-06-24 WWW.mk: add
99-06-08 hostinfo.sh: ${TMPDIR:-/tmp}
99-06-07 TEST.mk: add
99-06-01 iffe: add `siz type' for _siz_type == sizeof(type)
99-05-11 hostinfo,iffe,regress,use: long options
99-05-01 C.probe: fix over aggressive stdinclude, e.g., /usr/include/machine
99-04-01 hostinfo: sgi.mips? -o32 and -n32 checks
	 iffe: check that . is writable
99-03-17 hostinfo: fix for cc not found
	 dl.c,hello.c,m.c: headers in conditionals to force .DONTCARE
	 C.probe: extra check for include dirs pulled in by <sys/types.h>
99-03-03 regress: add `UNIT - ...' for extra args
	 Makefile: add (_hosttype_) prereq for cc
99-01-23 hostinfo: tweak rating, use /proc/cpuinfo if there
99-01-11 C.probe: shlib before lib, /usr before /
98-12-25 iffe: work around win32.alpha intrinsic clash with -O
98-11-11 regress: fix UNIT PATH lookup
98-11-01 regress: add PROG
98-10-01 hostinfo: add unixware.*
	 use: export PACKAGE_* 
98-08-11 C.probe: add /usr/include check (for sco CC)
	 hostinfo: handle uwin uname update
98-05-01 regress: fix bug sometimes didn't list last test
98-04-01 hostinfo: add cc path arg
	 hostinfo: now works with /bin/sh
	 Makefile: strengthed -lm probe
98-01-23 Makefile: check for -ldl -lm
	 C.probe: handle gcc -v -E phony include dirs
	 iffe: fix lcl by dropping sort -u -- we need the real first
	 iffe: `mem x' to test if x is a non-opaque struct
98-01-11 $(INSTALLROOT)/lib32 for sgi.mips3
	 $(INSTALLROOT)/lib64 for sgi.mips4
	 add cc.hp.pa
98-01-01 cc.sgi.mips*: turn off ld library multiply defined
97-10-11 regress: add VIEW function for locating data
97-10-01 Makefile: -ldl test moved to libdll Makefile
97-08-11 regress: add MOVE
	 regress: add SAME
	 regress: use getopts
	 regress: `EXEC' repeats previous test
97-07-17 use: tweak PATH and LIBPATH bootstrap order
	 iffe: fix lcl bug that botched pathnames with embedded spaces
97-06-12 iffe: add npt `needs prototype' test
97-05-09 hostinfo: mvs.* => mvs.390
	 Makefile: cc.$(_hosttype_) workaround installed here
	 iffe: fix nolink{ ... }end
	 iffe: add [no]static{ ... }end for static link test
	 C.probe: _probe_PATH => _probe_export which must be eval'd
97-04-01 use: _RLD_ROOT set too
97-03-17 mm2html: changed inner loop
	 mm2html: handle .if|.ie|.el, .so
	 mm2html: handle different man styles
	 mm2html: differentiate mm/man in some non-obvious cases
	 hostinfo: r5000 is not mips4
97-02-14 hostinfo: validate type with cc
96-12-25 C.probe: uwin tweaks
	 iffe: use `...` instead of $(...) for alpha /bin/sh
	 iffe: fix `typ' divide by 0
	 iffe: `lcl' now drops X: prefix
	 iffe: +l* -> -l*
	 iffe: eval around ${...#%...} for bsd /bin/sh
	 use: add sgi.mips LD_LIBRARY<abi>_PATH variants
	 use: add -e to list exports
	 iffe: lcl leaves leading [a-zA-Z]: for dos
	 iffe: fix no{link|output|execute} logic
	 C.probe: don't automatically add /usr/include for non-hosted compilers
	 C.probe: don't automatically place /usr/include last
	 C.probe: check gcc style -v -E for stdinclude usrinclude
96-11-28 iffe: check BASH_VERSION for IFS botch
	 iffe: typ long.xxx only if sizeof(long xxx) != sizeof(xxx)
	 hostinfo: fix sgi.mips[234] tests
	 hostinfo: fix ncr.i386 tests
96-10-31 iffe: work around old bsh here doc bug by running separate sh
96-10-11 iffe: *.iffe and *.iff for iffe src files
	 hostinfo: tighten sgi.mips cpu type check
96-10-01 C.probe: add probe_libdir to catch alpha /usr/shlib
96-09-17 iffe: fix typ bug that failed for single id types!
96-08-31 hostinfo: handle recent sgi hinv cpu changes
96-07-17 make sure sizeof(long xxx)>sizeof(xxx) for typ long.xxx
96-05-09 C.probe: drop multiple / in stdinclude
96-02-29 use: package root must have bin and lib subdir
	 mm2html: add
	 C.probe: probe_members += -whole-archive for gcc
	 iffe: add + fix the blasted `...'.....'...`
96-01-31 use: add pkg dir
	 hostinfo: add tandem
96-01-01 hostinfo: windows_nt|windows[0-9][0-9] -> win32
95-11-24 hostinfo: linux-aout.* for non-elf linux
95-11-11 use: add aix LIBPATH
95-10-11 hostinfo: no args prints type
95-08-11 use: add
95-05-09 save original PATH in _probe_PATH
	 beef up library dir probe
95-04-01 use c source suffix if it still preserves the dialect
	 add hostinfo
	 add lib/hostinfo/typemap user type map
	 add sol.sun4 cpu count
	 fix C.probe to properly handle C/C++ combined compiler drivers
	 add NeXT to hostinfo
	 bummer: mach has /usr/bin/hostinfo
95-03-19 fix dialect executable test
95-03-19 --- release 0.0 ---


August 23, 2001