X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2FMakefile;h=9f2b1b05d10054f6eb136956a55d4d8eb02ee7e6;hb=4d7ecf304ab398c4aed110822cd934cb6dc071e3;hp=9416d7728bdb54b78d66eda6c6b71dacaf8b322f;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1;p=ghc-hetmet.git diff --git a/utils/Makefile b/utils/Makefile index 9416d77..9f2b1b0 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -1,15 +1,19 @@ TOP=.. include $(TOP)/mk/boilerplate.mk -ifneq "$(BIN_DIST_NAME)" "" +ifeq "$(DOING_BIN_DIST)" "YES" # We're doing a binary-dist, descend into a subset of the dirs. -SUBDIRS = hp2ps unlit +SUBDIRS = mkdirhier hp2ps parallel unlit runghc hpc pwd else ifeq "$(BootingFromHc)" "YES" -SUBDIRS = mkdependC mkdirhier runstdtest genapply genprimopcode ghc-pkg unlit +SUBDIRS = mkdependC mkdirhier runstdtest genapply genprimopcode unlit else -SUBDIRS = mkdependC mkdirhier runstdtest ghc-pkg hasktags hp2ps hsc2hs lndir \ - parallel prof unlit genprimopcode genapply runghc +SUBDIRS = mkdependC mkdirhier runstdtest hp2ps \ + installPackage parallel unlit genprimopcode genapply runghc hpc pwd +endif +ifneq "$(TARGETPLATFORM)" "i386-unknown-mingw32" +# lndir doesn't build on Windows +SUBDIRS += lndir endif endif @@ -36,4 +40,45 @@ endif # unlikely to want it desperately. It is easy to build once you have # a Haskell compiler and if you want it. +binary-dist: + $(INSTALL_DIR) $(BIN_DIST_DIR)/utils + $(INSTALL_DATA) Makefile $(BIN_DIST_DIR)/utils/ + set -e; for d in $(SUBDIRS); do $(MAKE) -C $$d binary-dist; done + include $(TOP)/mk/target.mk + +# genprimopcode is needed to boot in ghc/compiler... +ifneq "$(BootingFromHc)" "YES" +boot :: + $(MAKE) -C genprimopcode +endif + +WITH_BOOTSTRAPPING_COMPILER = ghc-pkg hsc2hs + +WITH_STAGE1 = ghc-pkg hasktags +ifneq "$(NO_INSTALL_HSC2HS)" "YES" +WITH_STAGE1 += hsc2hs +endif + +# sort removes duplicates - we don't actually care about the order +WITH_EITHER = $(sort $(WITH_BOOTSTRAPPING_COMPILER) $(WITH_STAGE1)) + +with-bootstrapping-compiler: \ + $(foreach P,$(WITH_BOOTSTRAPPING_COMPILER),with-bootstrapping-compiler.$P) + +with-stage-1: $(foreach P,$(WITH_STAGE1),with-stage-1.$P) + +install:: $(foreach P,$(WITH_STAGE1),install.$P) + +$(foreach P,$(WITH_BOOTSTRAPPING_COMPILER),with-bootstrapping-compiler.$P): \ +with-bootstrapping-compiler.%: + $(MAKE) -C $* with-bootstrapping-compiler + +$(foreach P,$(WITH_STAGE1),with-stage-1.$P): \ +with-stage-1.%: + $(MAKE) -C $* with-stage-1 + +$(foreach P,$(WITH_STAGE1),install.$P): \ +install.%: + $(MAKE) -C $* install +