From 1cc3e482389a6552cfa0c921659d2866cc2ed3f5 Mon Sep 17 00:00:00 2001 From: Francois-Rene Rideau <tunes@google.com> Date: Wed, 16 Jan 2013 17:47:18 -0500 Subject: [PATCH] More ECL bundle fixes. --- bundle.lisp | 17 ++++++++++------- generate-asdf.asd | 2 +- test/make-hello-world.lisp | 2 ++ test/script-support.lisp | 4 ++-- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/bundle.lisp b/bundle.lisp index 353fd6ab2..6ca940245 100644 --- a/bundle.lisp +++ b/bundle.lisp @@ -115,7 +115,7 @@ ((or null string) bundle-type) ((eql :fasl) #-(or ecl mkcl) (compile-file-type) #+(or ecl mkcl) "fasb") #+ecl - ((member :binary :dll :lib :static-library :program :object) + ((member :binary :dll :lib :static-library :program :object :program) (compile-file-type :type bundle-type)) ((eql :binary) "image") ((eql :dll) (cond ((os-unix-p) "so") ((os-windows-p) "dll"))) @@ -216,8 +216,8 @@ (defun* bundlable-file-p (pathname) (let ((type (pathname-type pathname))) (declare (ignorable type)) - (or #+ecl (or (equal type (compile-file-type :object)) - (equal type (compile-file-type :static-library))) + (or #+ecl (or (equal type (compile-file-type :type :object)) + (equal type (compile-file-type :type :static-library))) #+mkcl (equal type (compile-file-type :fasl-p nil)) #+(or allegro clisp clozure cmu lispworks sbcl scl xcl) (equal type (compile-file-type))))) @@ -482,10 +482,13 @@ #+ecl (defmethod perform ((o bundle-op) (c system)) - (let* ((object-files (remove "fas" (input-files o c) - :key #'pathname-type :test #'string=)) - (output (output-files o c))) - (apply #'c::builder (bundle-type o) (first output) + (let* ((object-files (input-files o c)) + (output (output-files o c)) + (bundle (first output)) + (kind (bundle-type o)) + (init-name (c::compute-init-name bundle :kind kind))) + (apply #'c::builder kind (first output) + :init-name init-name :lisp-files (append object-files (bundle-op-lisp-files o)) (append (bundle-op-build-args o) (when (typep o 'program-op) diff --git a/generate-asdf.asd b/generate-asdf.asd index 48d47fa22..c4b593aa8 100644 --- a/generate-asdf.asd +++ b/generate-asdf.asd @@ -8,7 +8,7 @@ :class :concatenated-source-system ;; :include-dependencies t :translate-output-p nil - :concatenated-source-file "build/asdf.lisp" + :concatenated-source-file "build/asdf" :version (:read-file-form "version.lisp-expr") :serial t :depends-on (:asdf-driver) diff --git a/test/make-hello-world.lisp b/test/make-hello-world.lisp index f9e0c1d32..68956513b 100644 --- a/test/make-hello-world.lisp +++ b/test/make-hello-world.lisp @@ -1,6 +1,8 @@ ;;; -*- Lisp -*- (load "script-support.lisp") (load-asdf) +#+ecl (require :cmp) (with-test () + (register-directory *asdf-directory*) ;; we need asdf-driver, and ECL can dump. (operate 'program-op :hello-world-example)) diff --git a/test/script-support.lisp b/test/script-support.lisp index 9c807e99e..4e0df0a88 100644 --- a/test/script-support.lisp +++ b/test/script-support.lisp @@ -258,8 +258,8 @@ is bound, write a message and exit on an error. If ((or sb-c::simple-compiler-note sb-kernel:redefinition-warning) #'muffle-warning) #+(and ecl (not ecl-bytecmp)) - ((or c:compiler-note c::compiler-debug-note - c:compiler-warning) ;; ECL emits more serious warnings than it should. + ((or c::compiler-note c::compiler-debug-note + c::compiler-warning) ;; ECL emits more serious warnings than it should. #'muffle-warning) #+mkcl ((or compiler:compiler-note) #'muffle-warning) -- GitLab