From: Cyrus H. <sl...@us...> - 2010-06-03 04:40:00
|
Update of /cvsroot/sbcl/sbcl/src/code In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv12780/src/code Modified Files: foreign.lisp Log Message: 1.0.39.3: support building on darwin x86 and x86-64 without the dlshim * x86 config -mmacosx-version-min cleanup * remove dlshim feature in make-config.sh * fix extern-alien-name and ldso naming conventions * kludge in load-cold-foreign-symbol-table to strip off the leading #\_ from the nm parsing * change dependency on ldso stubs for dlopen and friends to be #!-dlshim instead of #!-darwin * remove Config.x86-64-darwin9+ and replace with makefile conditionals * add :dlshim feature for darwin in make-config.sh and rework the darwin9+ stuff * make grovel-headers.c load genesis/config.h first so that we can use the LISP_FEATURE_xxx conditionals earlier Index: foreign.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/code/foreign.lisp,v retrieving revision 1.45 retrieving revision 1.46 diff -u -d -r1.45 -r1.46 --- foreign.lisp 9 Oct 2008 20:48:24 -0000 1.45 +++ foreign.lisp 3 Jun 2010 04:39:51 -0000 1.46 @@ -16,8 +16,8 @@ (defun extern-alien-name (name) (handler-case - #!+elf (coerce name 'base-string) - #!+(or mach-o win32) (concatenate 'base-string "_" name) + #!+(or elf (and mach-o (not dlshim))) (coerce name 'base-string) + #!+(or (and mach-o dlshim) win32) (concatenate 'base-string "_" name) (error () (error "invalid external alien name: ~S" name)))) @@ -35,8 +35,9 @@ (values (or (gethash extern table) (gethash (concatenate 'base-string - #!+(and darwin (or x86 x86-64 ppc)) "_ldso_stub__" - #!-(and darwin (or x86 x86-64 ppc)) "ldso_stub__" + #!+(and mach-o dlshim) "_ldso_stub_" + #!+(and mach-o (not dlshim)) "ldso_stub__" + #!-mach-o "ldso_stub__" extern) table))))) (defun find-foreign-symbol-address (name) |