0.7.11.4:
authorWilliam Harold Newman <william.newman@airmail.net>
Sat, 4 Jan 2003 15:51:02 +0000 (15:51 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Sat, 4 Jan 2003 15:51:02 +0000 (15:51 +0000)
Try harder to find GNU make (instead of first running
make-host-1.sh, then bailing out in make-target-1.sh)
as per Fufie, rudi, and Krystof on #lisp. (Google says
"don't be evil", and while we're not that good, at
least we can try not to be too annoying.:-)
Make chill.lisp not die on short package names. (inspired by
Rudi Schlatte's patch sbcl-devel 2003-01-04)

INSTALL
make-target-1.sh
src/cold/chill.lisp
version.lisp-expr

diff --git a/INSTALL b/INSTALL
index fe184fb..028e1ba 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -111,10 +111,10 @@ To build the system binaries:
   1. Make sure that you have enough RAM+swap to build SBCL, as
      per the CAUTION note above. (As of version 0.6.0, the most
      memory-intensive operation in make.sh is the second call to
-     GENESIS, which makes the Lisp image grow to nearly 128 Mb RAM+swap.
-  2. If the GNU make command is not available under the name "gmake",
-     then define the environment variable GNUMAKE to a name where it can
-     be found.
+     GENESIS, which makes the Lisp image grow to around 128 Mb RAM+swap.
+  2. If the GNU make command is not available under the names "gmake"
+     or "make", then define the environment variable GNUMAKE to a name
+     where it can be found.
   3. If you like, you can tweak the *FEATURES* set for the resulting
      Lisp system, enabling or disabling features like documentation
      strings or extra debugging code. The preferred way to do this is
index a526732..8d44f4b 100644 (file)
 echo //entering make-target-1.sh
 
 # the GNU dialect of "make" -- easier to find or port it than to
-# try to figure out how to port to the local dialect..
-gnumake=${GNUMAKE:-gmake}
+# try to figure out how to port to the local dialect...
+if [ "$GNUMAKE" != "" ] ; then
+  # The user is evidently trying to tell us something.
+  gnumake="$GNUMAKE"
+elif [ -x `which gmake` ] ; then
+  # "gmake" is the preferred name in *BSD.
+  gnumake=gmake
+else
+  # All the world's a Linux, and all its users weary of cautious
+  # BSDish worries that "make" might not be GNU make; and at this
+  # point we've already spent quite a while in make-host-1.sh, so
+  # they're naturally unamused when we bail out complaining we don't
+  # know where GNU make is. So since it's not really any worse to guess
+  # wrong here than to fail by not trying, just guess that "make" is
+  # GNU make and hope for the best.
+  gnumake=make
+fi
 
 # Build the runtime system and symbol table (.nm) file.
 #
@@ -36,6 +51,6 @@ cd ../..
 # Use a little C program to grab stuff from the C header files and
 # smash it into Lisp source code.
 cd tools-for-build
-$gnumake grovel_headers
+$gnumake grovel_headers || exit 1
 cd ..
 tools-for-build/grovel_headers > output/stuff-groveled-from-headers.lisp
index 92b19c9..3f95a41 100644 (file)
@@ -40,7 +40,8 @@
        (nicknames (package-nicknames package))
        (warm-name-prefix "SB-")
        (cold-name-prefix "SB!"))
-    (when (string= name warm-name-prefix :end1 (length warm-name-prefix))
+    (when (and (> (length name) (length warm-name-prefix))
+              (string= name warm-name-prefix :end1 (length warm-name-prefix)))
       (let* ((stem (subseq name (length cold-name-prefix)))
             (cold-name (concatenate 'simple-string cold-name-prefix stem)))
        (rename-package package name (cons cold-name nicknames))))))
index a9edd74..0b5bc62 100644 (file)
@@ -18,4 +18,4 @@
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
 
-"0.7.11.3"
+"0.7.11.4"