Tweak slam.sh to be slightly more configurable regarding the host binary
Developers building with an existing SBCL as a host, which is not
installed as "sbcl" in the path, or which needs a --core option, can
now set XC_LISP and XC_CORE prior to invoking slam.sh. Previously,
such a host could only be used with slam.sh after custom
modifications to the script.
* Use --no-userinit and --no-sysinit instead of version.lisp-expr as
the default inits for self-building: they have been around long
enough now that it should not stop anyone from building, and makes
for a somewhat less magical looking "//Build options: ..." line in
the build log.
Merge patch from James Bielman fixing self-build under Win32.
... a little bit of an accident ensued; I ran
canonicalize-whitespace on .sh files, which seemed to
work (except on wc.sh) until it scribbled all over
make.sh, confusing the shell interpreter utterly.
... the resulting files have built the system, nevertheless.
Make OpenMCL a suitable slamming host:
... fix slam.sh
... :if-exists :supersede for *output-files-for-genesis*
Since OpenMCL builds still work, announce clisp as a suitable host
for the cross-compiler.
Work around bug 194 in MIN/MAX type checking by using explicit
UNLESS instead of THE. (This is loosely based on
Matthew Danish's patch from sbcl-devel, which showed
that the explicit type tests in CHECK-TYPE worked where
THE did not. I also tried a few experiments based
on APD's IDENTITY wrapper workaround for bug 194, but
I wasn't immediately successful, and I'm not all that
motivated to debug clever workarounds instead of just
working to fix a real bug.)
more tests of MIN and MAX
tried to clarify slam.sh in response to emu question on IRC
changed --noprogrammer behavior to support people building
interactive cores noninteractively...
...renamed --noprogrammer to --disable-debugger
...defined SB-EXT:DISABLE-DEBUGGER and SB-EXT:ENABLE-DEBUGGER
more ARGUMENT-to-ARG abbreviation, mostly from egrepping
'def[^ ]* \(*[^ ]*argument'...
renamed DEFSTRUCT ARGUMENT to DEFSTRUCT ARG
removed BUGS 130 as per CSR sbcl-devel 2002-01-16
cut DB's slam.sh notes from CLiki SBCL internals slam.sh
page, pasted them into slam.sh comments, and rewrote
added first draft of tests/*clocc-ansi* stuff
applied Alexey Dejneka's fixes from sbcl-devel 2001-10-13..
..exported RETURN-PC-SAVE-OFFSET from SB!VM as per
"broken debugger" message
..fixed PARSE-COMPILED-DEBUG-BLOCKS along the lines of
"debugger errors" message (DEBUG-FUNCTION vs.
INDEX is in SB-INT now, so it doesn't need package prefixes
anywhere any more.
exported SC-OFFSET from SB-C
merged MNA "cleanups" patch from sbcl-devel 2001-08-31
got rid of INDEXV-USER-SPECIFIED-P completely, since MNA
points out that it's unused
got rid of ignored FORM arg in definition of %PRIMITIVE, too
fixed bug 24: COMPILE-FILE handles READER-ERROR now, instead
of dropping you into the debugger.
READ-FOR-COMPILE-FILE now fills the role of the old
deleted now-unused NORMAL-READ-ERROR, IGNORE-ERROR-FORM,
made slam.sh use a crude make-ish timestamp hack to choose
which files to re-cross-compile
(This version seems not to be flaky any more, and so should
be the end of the flaky1 branch: I'm just checking
it in in preparation for "cvs update -j flaky1" or some
such thing to merge the changes back into the main
tweaked run-tests.sh machinery to use an absolute path for
SBCL, on general principles and specifically so that
Dan Barlow's new ENSURE-DIRECTORIES-EXIST tests can run
made (UNIX-NAMESTRING "") equivalent to (UNIX-NAMESTRING "."),
as the simplest way to make ENSURE-DIRECTORIES-EXIST
work for relative pathnames. (As per Dan's 2001-05-18
sbcl-devel mail, it can't be ANSI conforming until
*DEFAULT-PATHNAME-DEFAULTS* is made ANSI, and that's
too messy for now, so just do the simple thing.)
dropped search list support from UNIX-NAMESTRING while I was
at it, since search lists ain't supported no more
removed undocumented hardly-used EXECUTABLE-ONLY arg from
UNIX-NAMESTRING, moving the "is it executable?" test
removed REMOVEME stuff
(This system state is seriously screwed up. It did build,
both on Linux and on OpenBSD, but signalled an
error after writing out sbcl.core on OpenBSD, and
although it runs a little both on Linux and on
OpenBSD, it hangs in the regression tests. It
also has some temporary hacks marked REMOVEME,
including one which suppresses PURIFY when
building the system (!).)
made the system build on OpenBSD again..
..stubbed stuff out as a quick fix to the problem of FFI to
tried to make the system run on OpenBSD again..
..initialized current_dynamic_space, since it's now used
instead of DYNAMIC_SPACE_START in PURIFY
..added new assertions about GENCGC alloc_region stuff being
reset when it should be
renamed Lisp-level struct stat stuff to struct wrapped_stat
tried to tidy up Lisp-level stat stuff; removed mysterious
(STRING= NAME "") behavior from UNIX-STAT
added slam.sh to help in low-level compile-and-try cycle
pulled alloc_region-is-reset logic out into separate
functions, and added more assertions on it (hunting
for a bug which broke the old assertions)
renamed gc_alloc_large to gc_alloc_possibly_large, and
enabled various GC checks, e.g. gencgc_zero_check=1
deleted unused (and bizarre..) gencgc_verify_zero_fill()
turned off PURIFY in order to get the system to build, since
PURIFY seems to be misbehaving (leaving INIT-FUNCTION
above the cutoff address..)