From 210a34a1509426a3306fdc1c3cc69142967712b6 Mon Sep 17 00:00:00 2001 From: Cyrus Harmon Date: Thu, 20 Jan 2011 18:21:37 +0000 Subject: [PATCH] 1.0.45.9: fix building on recent linux * 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 | 1 + tools-for-build/Makefile | 7 ++++--- tools-for-build/grovel-features.sh | 2 +- tools-for-build/ldso-stubs.lisp | 1 + version.lisp-expr | 2 +- 5 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/runtime/undefineds.h b/src/runtime/undefineds.h index f492ab9..da1f076 100644 --- a/src/runtime/undefineds.h +++ b/src/runtime/undefineds.h @@ -211,6 +211,7 @@ F(vfork) F(vhangup) #endif F(wait) +F(waitpid) #if !defined(SOLARIS) || defined(SOLARIS25) F(wait3) #endif diff --git a/tools-for-build/Makefile b/tools-for-build/Makefile index 2f10a8b..a2d2c1d 100644 --- a/tools-for-build/Makefile +++ b/tools-for-build/Makefile @@ -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 diff --git a/tools-for-build/grovel-features.sh b/tools-for-build/grovel-features.sh index bfae723..4d5a964 100644 --- a/tools-for-build/grovel-features.sh +++ b/tools-for-build/grovel-features.sh @@ -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" diff --git a/tools-for-build/ldso-stubs.lisp b/tools-for-build/ldso-stubs.lisp index 1164a5c..471859e 100644 --- a/tools-for-build/ldso-stubs.lisp +++ b/tools-for-build/ldso-stubs.lisp @@ -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 diff --git a/version.lisp-expr b/version.lisp-expr index 49cb989..7eee84e 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -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" -- 1.7.10.4