diff --git a/Makefile.in b/Makefile.in index c7512d7..2157952 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,11 +1,11 @@ address@hidden@ -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) $(@address@hidden) -stumpwm: $(FILES) +stumpwm: $(FILES) @LISP_CORE@ $(LISP) $(@address@hidden) 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=: with_dynamic_modules=no @LISP_LINK@ add "`$(LISP) -b`/base" $@ "`$(LISP) -b`/clx/new-clx" + # End of file diff --git a/configure.ac b/configure.ac index 5c65917..2a286b5 100644 --- a/configure.ac +++ b/configure.ac @@ -6,6 +6,8 @@ AC_INIT(Stump Window Manager, 0.9.8-git, address@hidden) AC_SUBST(CONTRIB_DIR) AC_SUBST(LISP_PROGRAM) +AC_SUBST(LISP_CORE) +AC_SUBST(LISP_LINK) AC_SUBST(LISP) AC_SUBST(PPCRE_PATH) @@ -105,6 +107,17 @@ 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_LINK="$LISP_PROGRAM-link" + LISP_PROGRAM="$LISP_PROGRAM -K `pwd`/$LISP_CORE" + fi fi # XXX How to do an OR ?