From: qrczak Date: Fri, 26 Jan 2001 14:54:52 +0000 (+0000) Subject: [project @ 2001-01-26 14:54:52 by qrczak] X-Git-Tag: Approximately_9120_patches~2808 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=f48e65910d14147a478070d50f78aa84e65285d2;hp=14ca0c8202392ad6ce2c7e6456e29c559254afd4;p=ghc-hetmet.git [project @ 2001-01-26 14:54:52 by qrczak] Fix generating HS*.o: don't confuse make by changing timestamps. --- diff --git a/mk/target.mk b/mk/target.mk index 6384a55..2aaf39a 100644 --- a/mk/target.mk +++ b/mk/target.mk @@ -359,19 +359,23 @@ SRC_HC_OPTS += -split-objs define BUILD_LIB $(RM) $@ -( echo $(STUBOBJS) ; $(FIND) $(patsubst %.$(way_)o,%,$(LIBOBJS)) -name '*.$(way_)o' -print ) | xargs ar q $@ +(echo $(STUBOBJS); $(FIND) $(patsubst %.$(way_)o,%,$(LIBOBJS)) -name '*.$(way_)o') | xargs ar q $@ $(RANLIB) $@ endef # Extra stuff for compiling Haskell files with $(SplitObjs): -HC_SPLIT_PRE= \ - $(RM) $@ ; if [ ! -d $(basename $@) ]; then mkdir $(basename $@); else \ - $(FIND) $(basename $@) -name '*.$(way_)o' -print | xargs $(RM) __rm_food ; fi -HC_SPLIT_POST = touch $@ +HC_SPLIT_PRE = \ + $(RM) $@; if [ ! -d $(basename $@) ]; then mkdir $(basename $@); else \ + $(FIND) $(basename $@) -name '*.$(way_)o' | xargs $(RM) __rm_food; fi +ifeq "$(GhcWithInterpreter)" "YES" +HC_SPLIT_POST = ld -r -x -o $@ $(basename $@)/*.$(way_)o +else +HC_SPLIT_POST = touch $@ +endif -SRC_HC_PRE_OPTS += $(HC_SPLIT_PRE) ; -SRC_HC_POST_OPTS += $(HC_SPLIT_POST) ; +SRC_HC_PRE_OPTS += $(HC_SPLIT_PRE); +SRC_HC_POST_OPTS += $(HC_SPLIT_POST); # # If (Haskell) object files are split, cleaning up @@ -422,13 +426,6 @@ GHCI_LIBOBJS = $(LIBOBJS) endif $(GHCI_LIBRARY) :: $(GHCI_LIBOBJS) -ifneq "$(HS_SRCS)" "" -ifeq "$(SplitObjs)" "YES" - $(foreach obj,$(GHCI_LIBOBJS), \ - ld -r -x -o $(obj) \ - $(patsubst %.$(way_)o,%,$(obj))/*.$(way_)o &&) true -endif -endif ld -r -x -o $@ $(GHCI_LIBOBJS) $(STUBOBJS) CLEAN_FILES += $(GHCI_LIBRARY)