From: Nikodemus S. <de...@us...> - 2010-09-01 15:46:27
|
Update of /cvsroot/sbcl/sbcl/src/cold In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv737/src/cold Modified Files: shared.lisp Log Message: 1.0.42.17: better host lisp fasl-type logic * Patch by "nixeagle", lp#592903. Use COMPILE-FILE-PATHNAME to figure out the right pathname-type. Index: shared.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/cold/shared.lisp,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- shared.lisp 5 May 2009 20:02:12 -0000 1.41 +++ shared.lisp 1 Sep 2010 15:46:18 -0000 1.42 @@ -33,24 +33,6 @@ (defvar *host-obj-prefix*) (defvar *target-obj-prefix*) -;;; suffixes for filename stems when cross-compiling -(defvar *host-obj-suffix* - (or - ;; On some xc hosts, it's impossible to LOAD a fasl file unless it - ;; has the same extension that the host uses for COMPILE-FILE - ;; output, so we have to be careful to use the xc host's preferred - ;; extension. - ;; - ;; FIXME: This is a little ugly and annoying to maintain. And - ;; there's very likely some way to rearrange the build process so - ;; that we never explicitly refer to host object file suffixes, - ;; only to the result of CL:COMPILE-FILE-PATHNAME. - #+lispworks ".ufsl" ; as per Lieven Marchand sbcl-devel 2002-02-01 - #+(and openmcl (not darwin)) ".pfsl" - #+(and openmcl darwin) ".dfsl" - ;; On most xc hosts, any old extension works, so we use an - ;; arbitrary one. - ".lisp-obj")) (defvar *target-obj-suffix* ;; Target fasl files are LOADed (actually only quasi-LOADed, in ;; GENESIS) only by SBCL code, and it doesn't care about particular @@ -242,7 +224,14 @@ (multiple-value-bind (obj-prefix obj-suffix) (ecase mode - (:host-compile (values *host-obj-prefix* *host-obj-suffix*)) + (:host-compile + ;; On some xc hosts, it's impossible to LOAD a fasl file unless it + ;; has the same extension that the host uses for COMPILE-FILE + ;; output, so we have to be careful to use the xc host's preferred + ;; extension. + (values *host-obj-prefix* + (concatenate 'string "." + (pathname-type (compile-file-pathname stem))))) (:target-compile (values *target-obj-prefix* (if (find :assem flags) *target-assem-obj-suffix* |