On 07/04/11 08:23, Ben Spencer wrote: > On Mon, Jul 04, 2011 at 12:10:19AM +0200, Dirk Sondermann wrote: >> As a more convenient alternative, you may apply the patch posted by >> Ben Spencer on March 22 on this list. Since make-image.lisp.in has >> changed in the meantime, I've attached an updated version of that >> patch. > > Unfortunately this makes it build but the resulting binary doesn't work: > > ben@arctor:~/src/stumpwm$ ./stumpwm > module 'syscalls' requires package OS.
I've combined your patch with the creation of a temporary linking set using clisp-link. The resulting binary now actually works. For building stumpwm on Debian wheezy with this patch, in addition to the packages clisp and clisp-module-clx also clisp-dev has to be installed. -- Dirk
diff --git a/Makefile.in b/Makefile.in index c7512d7..4d23b37 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,11 +1,11 @@ LISP=@LISP_PROGRAM@ -clisp_BUILDOPTS=-K full -on-error exit ./make-image.lisp +clisp_BUILDOPTS=-on-error exit ./make-image.lisp sbcl_BUILDOPTS=--load ./make-image.lisp ccl_BUILDOPTS=--load ./make-image.lisp ecl_BUILDOPTS=-norc -shell ./make-image.lisp -clisp_INFOOPTS=-K full -on-error exit -x "(require 'asdf '(\"asdf.lisp\")) (load \"stumpwm.asd\") (load \"@PPCRE_PATH@/cl-ppcre.asd\") (asdf:operate 'asdf:load-op :stumpwm) (load (compile-file \"manual.lisp\")) (stumpwm::generate-manual) (ext:exit)" +clisp_INFOOPTS=-on-error exit -x "(require 'asdf '(\"asdf.lisp\")) (load \"stumpwm.asd\") (load \"@PPCRE_PATH@/cl-ppcre.asd\") (asdf:operate 'asdf:load-op :stumpwm) (load (compile-file \"manual.lisp\")) (stumpwm::generate-manual) (ext:exit)" sbcl_INFOOPTS=--eval "(progn (require 'asdf) (require 'stumpwm) (load \"manual.lisp\"))" --eval "(progn (stumpwm::generate-manual) (sb-ext:quit))" ccl_INFOOPTS=--eval "(progn (require 'asdf) (require 'stumpwm))" --load manual.lisp --eval "(progn (stumpwm::generate-manual) (quit))" ecl_INFOOPTS=-eval "(progn (require 'asdf) (load \"@PPCRE_PATH@/cl-ppcre.asd\") (require 'stumpwm) (load \"manual.lisp\"))" -eval "(progn (stumpwm::generate-manual) (ext:quit))" @@ -33,10 +33,10 @@ stumpwm.info: stumpwm.texi makeinfo stumpwm.texi # FIXME: This rule is too hardcoded -stumpwm.texi: stumpwm.texi.in +stumpwm.texi: stumpwm.texi.in @LISP_CORE@ $(LISP) $(@LISP@_INFOOPTS) -stumpwm: $(FILES) +stumpwm: $(FILES) @LISP_CORE@ $(LISP) $(@LISP@_BUILDOPTS) release: @@ -58,6 +58,7 @@ clean: rm -f *.fasl *.fas *.lib *.*fsl rm -f *.log *.fns *.fn *.aux *.cp *.ky *.log *.toc *.pg *.tp *.vr *.vrs rm -f stumpwm stumpwm.texi stumpwm.info + rm -fr clisp-core/ install: stumpwm.info stumpwm test -z "$(destdir)$(bindir)" || mkdir -p "$(destdir)$(bindir)" @@ -71,4 +72,7 @@ uninstall: install-info --info-dir="$(destdir)$(infodir)" --remove "$(destdir)$(infodir)/stumpwm.info" rm "$(destdir)$(infodir)/stumpwm.info" +clisp-core: + MAKE=: clisp-link add "`clisp -b`/base" $@ "`clisp -b`/clx/new-clx" + # End of file diff --git a/configure.ac b/configure.ac index 5c65917..bf122f6 100644 --- a/configure.ac +++ b/configure.ac @@ -6,6 +6,7 @@ AC_INIT(Stump Window Manager, 0.9.8-git, sabe...@gmail.com) AC_SUBST(CONTRIB_DIR) AC_SUBST(LISP_PROGRAM) +AC_SUBST(LISP_CORE) AC_SUBST(LISP) AC_SUBST(PPCRE_PATH) @@ -105,6 +106,16 @@ fi if test "$LISP" = "clisp"; then AC_CHECK_FILE([$PPCRE_PATH/cl-ppcre.asd],,AC_MSG_ERROR([Cannot find ppcre. When using clisp you must specify its location using --with-ppcre])) + AC_MSG_CHECKING([whether clisp is built with dynamic modules support]) + result=$($LISP_PROGRAM -q -q -x '(nth-value 0 (find-symbol "DYNLOAD-MODULES" "SYS"))') + if test "x$result" = "xNIL"; then + AC_MSG_RESULT([no]) + LISP_PROGRAM="$LISP_PROGRAM -K full" + else + AC_MSG_RESULT([yes]) + LISP_CORE="clisp-core" + LISP_PROGRAM="$LISP_PROGRAM -K `pwd`/$LISP_CORE" + fi fi # XXX How to do an OR ?
_______________________________________________ Stumpwm-devel mailing list Stumpwm-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/stumpwm-devel