X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=contrib%2Fasdf-module.mk;h=dba81ea337b4da97aecd8ccec2547da20d35a654;hb=d15afa61c4854eddb4b61e3d8772590db760c565;hp=e98fd00319a80a8ea17d5389002c1b16398e5205;hpb=91f82a754a26fd80f7afeaefff0e056678408678;p=sbcl.git diff --git a/contrib/asdf-module.mk b/contrib/asdf-module.mk index e98fd00..dba81ea 100644 --- a/contrib/asdf-module.mk +++ b/contrib/asdf-module.mk @@ -1,4 +1,3 @@ -CC=gcc # We need to extend flags to the C compiler and the linker # here. sb-posix, sb-grovel, and sb-bsd-sockets depends upon these @@ -11,19 +10,35 @@ UNAME:=$(shell uname -s) ifeq (SunOS,$(UNAME)) EXTRA_CFLAGS=-D_XOPEN_SOURCE=500 -D__EXTENSIONS__ + PATH:=/usr/xpg4/bin:${PATH} +endif +ifeq (CYGWIN,$(findstring CYGWIN,$(UNAME))) + EXTRA_CFLAGS=-mno-cygwin + # GCC 4.x doesn't accept -mno-cygwin. + CC:=gcc-3 + # SBCL can't read cygwin symlinks, and cygwin likes to symlink + # gcc. To further complicate things, SBCL can't handle cygwin + # paths, either. + CC:=$(shell cygpath -m $(shell readlink -fn $(shell which $(CC)))) +endif +ifeq (Linux,$(UNAME)) + EXTRA_CFLAGS=-D_GNU_SOURCE endif export CC SBCL EXTRA_CFLAGS EXTRA_LDFLAGS all: $(EXTRA_ALL_TARGETS) $(MAKE) -C ../asdf - $(SBCL) --eval '(defvar *system* "$(SYSTEM)")' --load ../asdf-stub.lisp --eval '(quit)' + $(SBCL) --eval '(defvar *system* "$(SYSTEM)")' --load ../asdf-stub.lisp --eval '(exit)' test: all - echo "(asdf:operate (quote asdf:load-op) :$(SYSTEM))" \ + echo "(pushnew :sb-testing-contrib *features*)" \ + "(asdf:operate (quote asdf:load-op) :$(SYSTEM))" \ "(asdf:operate (quote asdf:test-op) :$(SYSTEM))" | \ $(SBCL) --eval '(load "../asdf/asdf")' - +# KLUDGE: There seems to be no portable way to tell tar to not to +# preserve owner, so chown after installing for the current user. install: $(EXTRA_INSTALL_TARGETS) - tar cf - . | ( cd $(BUILD_ROOT)$(INSTALL_DIR) && tar xpvf - ) + tar cf - . | ( cd "$(BUILD_ROOT)$(INSTALL_DIR)" && tar xpvf - ) + find "$(BUILD_ROOT)$(INSTALL_DIR)" -exec chown `id -u`:`id -g` {} \;