X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fasdf-module.mk;h=dc6a07a1c021a745a13dcb8cf42c2d23483a80a1;hb=833de5ad442a652031c4297cf5490db599dcdde5;hp=6179c56858af6f392dfb591642e72bacff420178;hpb=93c941d86b264637de20aa1b713757b704d4c1a6;p=sbcl.git diff --git a/contrib/asdf-module.mk b/contrib/asdf-module.mk index 6179c56..dc6a07a 100644 --- a/contrib/asdf-module.mk +++ b/contrib/asdf-module.mk @@ -1,17 +1,32 @@ CC=gcc -export CC -all: +# 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 +ifeq (CYGWIN,$(findstring CYGWIN,$(UNAME))) + EXTRA_CFLAGS=-mno-cygwin +endif + +export CC SBCL EXTRA_CFLAGS EXTRA_LDFLAGS + +all: $(EXTRA_ALL_TARGETS) $(MAKE) -C ../asdf - echo "(asdf:operate 'asdf:load-op :$(SYSTEM) :force t)" | \ - $(SBCL) --eval '(load "../asdf/asdf")' + $(SBCL) --eval '(defvar *system* "$(SYSTEM)")' --load ../asdf-stub.lisp --eval '(quit)' test: all - echo "(asdf:operate (quote asdf:load-op) :$(SYSTEM)) "\ + echo "(asdf:operate (quote asdf:load-op) :$(SYSTEM))" \ "(asdf:operate (quote asdf:test-op) :$(SYSTEM))" | \ $(SBCL) --eval '(load "../asdf/asdf")' -install: - tar cf - . | ( cd $(INSTALL_DIR) && tar xpvf - ) - ( cd $(SBCL_HOME)/systems && ln -fs ../$(SYSTEM)/$(SYSTEM).asd . ) +install: $(EXTRA_INSTALL_TARGETS) + tar cf - . | ( cd "$(BUILD_ROOT)$(INSTALL_DIR)" && tar xpvf - )