X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fasdf-module.mk;h=e98fd00319a80a8ea17d5389002c1b16398e5205;hb=22a6702974b7d6ff4e8f2b3b7b5ff446fc632de0;hp=9c98ea425c609096d8576ae998437d6120058ac5;hpb=44dbdff97fbcc1e5b12e1330da92c5a3dcb94a3b;p=sbcl.git diff --git a/contrib/asdf-module.mk b/contrib/asdf-module.mk index 9c98ea4..e98fd00 100644 --- a/contrib/asdf-module.mk +++ b/contrib/asdf-module.mk @@ -1,12 +1,23 @@ CC=gcc -export CC SBCL + +# We need to extend flags to the C compiler and the linker +# here. sb-posix, sb-grovel, and sb-bsd-sockets depends upon these +# being set on x86_64. Setting these in their Makefiles is not +# adequate since, while we're building contrib, they can be compiled +# directly via ASDF from a non-C-aware module which has these tricky +# ones as dependencies. + +UNAME:=$(shell uname -s) + +ifeq (SunOS,$(UNAME)) + EXTRA_CFLAGS=-D_XOPEN_SOURCE=500 -D__EXTENSIONS__ +endif + +export CC SBCL EXTRA_CFLAGS EXTRA_LDFLAGS all: $(EXTRA_ALL_TARGETS) $(MAKE) -C ../asdf - $(SBCL) --eval '(load "../asdf/asdf")' \ - --eval "(setf asdf::*central-registry* '((MERGE-PATHNAMES \"systems/\" (TRUENAME (SB-EXT:POSIX-GETENV \"SBCL_HOME\")))))" \ - --eval "(asdf:operate 'asdf:load-op :$(SYSTEM))" \ - --eval "(quit)" + $(SBCL) --eval '(defvar *system* "$(SYSTEM)")' --load ../asdf-stub.lisp --eval '(quit)' test: all echo "(asdf:operate (quote asdf:load-op) :$(SYSTEM))" \ @@ -16,4 +27,3 @@ test: all install: $(EXTRA_INSTALL_TARGETS) tar cf - . | ( cd $(BUILD_ROOT)$(INSTALL_DIR) && tar xpvf - ) - ( cd $(BUILD_ROOT)$(SBCL_HOME)/systems && ln -fs ../$(SYSTEM)/$(SYSTEM).asd . )