X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=driver%2FMakefile;h=016eab2f4484d3158b8109f2d641d222a60532f8;hb=3710a4ef1ca665fe4ed705a6b0f4400d680c7b54;hp=3a87ab43c504f2d30569176e29305e17e092e069;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1;p=ghc-hetmet.git diff --git a/driver/Makefile b/driver/Makefile index 3a87ab4..016eab2 100644 --- a/driver/Makefile +++ b/driver/Makefile @@ -7,22 +7,30 @@ TOP=.. include $(TOP)/mk/boilerplate.mk -SUBDIRS = mangler split ghc ghci +SUBDIRS = mangler split ghc ghc-pkg ghci runhaskell -boot all :: package.conf.inplace package.conf +INPLACE_PKG_CONF = $(INPLACE_DATA_DIR)/package.conf +# Used to signal that we are inplace, as opposed to installed: +INPLACE_FILE = $(INPLACE_DATA_DIR)/inplace -package.conf.inplace : - echo "[]" > $@ +boot all :: + $(MKDIRHIER) $(INPLACE_DATA_DIR) + test -f $(INPLACE_PKG_CONF) || echo "[]" > $(INPLACE_PKG_CONF) + touch $(INPLACE_FILE) -package.conf : - echo "[]" > $@ - -override datadir = $(libdir) -INSTALL_DATAS += package.conf ghc-usage.txt ghci-usage.txt +INSTALL_DATAS += ghc-usage.txt ghci-usage.txt # Since cleaning effectively uninstalls all the packages, we must # remove the stamp files that the build system uses to avoid unnecessarily -# re-installing packages. -CLEAN_FILES += package.conf* stamp-pkg-conf* +# re-installing the RTS +CLEAN_FILES += stamp-pkg-conf-rts + +binary-dist: +ifeq "$(WHERE_AM_I)" "" + echo "I don't know where I am" >&2 + exit 1 +endif + for FILE in Makefile $(INSTALL_DATAS); do echo $(WHERE_AM_I)/$$FILE >> $(BIN_DIST_LIST); done + set -e; for d in $(SUBDIRS); do $(MAKE) -C $$d binary-dist WHERE_AM_I=$(WHERE_AM_I)/$$d; done include $(TOP)/mk/target.mk