1.0.45.9: fix building on recent linux
authorCyrus Harmon <ch-sbcl@bobobeach.com>
Thu, 20 Jan 2011 18:21:37 +0000 (18:21 +0000)
committerCyrus Harmon <ch-sbcl@bobobeach.com>
Thu, 20 Jan 2011 18:21:37 +0000 (18:21 +0000)
 * Recent linux changes caused waitpid foreign symbol to go away so add it to
   undefineds and ldso-stubs
 * Recent linux linker default flags changes (--as-needed?) caused dlopen and
   friends to not be found at link time. Fix the tools-for-build/Makefile
   to pick up the build options from Config and fix grovel-features.sh to
   put the libs in LDLIBS instead of LDFLAGS

src/runtime/undefineds.h
tools-for-build/Makefile
tools-for-build/grovel-features.sh
tools-for-build/ldso-stubs.lisp
version.lisp-expr

index f492ab9..da1f076 100644 (file)
@@ -211,6 +211,7 @@ F(vfork)
 F(vhangup)
 #endif
 F(wait)
+F(waitpid)
 #if !defined(SOLARIS) ||  defined(SOLARIS25)
 F(wait3)
 #endif
index 2f10a8b..a2d2c1d 100644 (file)
@@ -7,11 +7,12 @@
 # provided with absolutely no warranty. See the COPYING and CREDITS
 # files for more information.
 
--include genesis/Makefile.features
--include Config
+include ../src/runtime/genesis/Makefile.features
+include ../src/runtime/Config
 
 CPPFLAGS:=-I../src/runtime
-LDFLAGS:=$(LDFLAGS) $(OS_LIBS)
+LDFLAGS:=$(LDFLAGS)
+LDLIBS:=$(OS_LIBS)
 
 all: grovel-headers determine-endianness where-is-mcontext \
         modify-ldt-struct-name sigaction-sa-nodefer-works-test
index bfae723..4d5a964 100644 (file)
@@ -9,7 +9,7 @@ cd ./tools-for-build > /dev/null
 featurep() {
     bin="$1-test"
     rm -f $bin
-    $GNUMAKE $bin -I ../src/runtime > /dev/null 2>&1 && echo "input" | ./$bin> /dev/null 2>&1
+    $GNUMAKE $bin -I ../src/runtime ${make_flags} > /dev/null 2>&1 && echo "input" | ./$bin> /dev/null 2>&1
     if [ "$?" = 104 ]
     then
         printf " :$1"
index 1164a5c..471859e 100644 (file)
@@ -295,6 +295,7 @@ ldso_stub__ ## fct: ;                  \\
                    "unlink"
                    "utimes"
                    "wait3"
+                   "waitpid"
                    "write")
                  ;; These aren't needed on the X86 because they're microcoded into the
                  ;; FPU, so the Lisp VOPs can implement them directly without having to
index 49cb989..7eee84e 100644 (file)
@@ -20,4 +20,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.45.8"
+"1.0.45.9"