X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Makefile;h=d5b925d854edef313312bb0cb1113e59848cd94a;hb=60b50498ce499e879cd7d72f5386c1c633c692ff;hp=157fd31482b68b180e103aa5d988f48be5d906f1;hpb=e6d754fa58e9ba2f6d990c4975f474615592a9c9;p=ghc-hetmet.git diff --git a/Makefile b/Makefile index 157fd31..d5b925d 100644 --- a/Makefile +++ b/Makefile @@ -131,8 +131,6 @@ stage1 : $(GCC_LIB_DEP) check-all $(MAKE) --no-print-directory -C $$i $(MFLAGS) all; \ if [ $$? -eq 0 -o $$x_on_err -eq 0 ] ; then true; else exit 1; fi; \ done - $(MAKE) -C ghc stage=1 boot - $(MAKE) -C ghc stage=1 $(MAKE) -C rts boot $(MAKE) -C rts $(MAKE) -C libraries all @@ -151,14 +149,10 @@ stage2 : check-all ifeq "$(HADDOCK_DOCS)" "YES" $(MAKE) -C compiler stage=2 doc endif - $(MAKE) -C ghc stage=2 boot - $(MAKE) -C ghc stage=2 stage3 : check-all $(MAKE) -C compiler stage=3 boot $(MAKE) -C compiler stage=3 - $(MAKE) -C ghc stage=3 boot - $(MAKE) -C ghc stage=3 bootstrap : bootstrap2 @@ -305,6 +299,14 @@ binary-dist:: $(MKDIRHIER) $(BIN_DIST_DIR)/icons cp distrib/hsicon.ico $(BIN_DIST_DIR)/icons +# Tar up the distribution and build a manifest +binary-dist :: tar-binary-dist + +.PHONY: tar-binary-dist +tar-binary-dist: + ( cd $(BIN_DIST_TOPDIR_ABS); tar cf - $(BIN_DIST_NAME) | bzip2 > $(BIN_DIST_TARBALL) ) + ( cd $(BIN_DIST_TOPDIR_ABS); bunzip2 -c $(BIN_DIST_TARBALL) | tar tf - | sed "s/^ghc-$(ProjectVersion)/fptools/" | sort >$(FPTOOLS_TOP_ABS)/bin-manifest-$(ProjectVersion) ) + else .PHONY: binary-dist @@ -395,21 +397,14 @@ endif $(RM) -f $(BIN_DIST_NAME) ln -s . $(BIN_DIST_NAME) - tar cf $(BIN_DIST_TAR) -T $(BIN_DIST_LIST) +# h means "follow symlinks", e.g. if aclocal.m4 is a symlink to a source +# tree then we want to include the real file, not a symlink to it + tar hcf $(BIN_DIST_TAR) -T $(BIN_DIST_LIST) cd $(BIN_DIST_PREP_DIR) && tar rf $(BIN_DIST_TAR) $(BIN_DIST_NAME) bzip2 < $(BIN_DIST_TAR) > $(BIN_DIST_TAR_BZ2) tar tf $(BIN_DIST_TAR) | sort > bin-manifest-$(ProjectVersion) endif -# XXX Presumably we still need to do this for Windows? -## Tar up the distribution and build a manifest -#binary-dist :: tar-binary-dist -# -#.PHONY: tar-binary-dist -#tar-binary-dist: -# ( cd $(BIN_DIST_TOPDIR_ABS); tar cf - $(BIN_DIST_NAME) | bzip2 >$(BIN_DIST_TARBALL) ) -# ( cd $(BIN_DIST_TOPDIR_ABS); bunzip2 -c $(BIN_DIST_TARBALL) | tar tf - | sed "s/^ghc-$(ProjectVersion)/fptools/" | sort >$(FPTOOLS_TOP_ABS)/bin-manifest-$(ProjectVersion) ) - PUBLISH_FILES = $(BIN_DIST_TARBALL) # Upload the distribution and documentation @@ -601,7 +596,7 @@ DIST_CLEAN_FILES += config.cache config.status mk/config.h mk/stamp-h \ docs/users_guide/ug-book.xml extra-gcc-opts # don't clean config.mk: it's needed when cleaning stuff later on -LATE_DIST_CLEAN_FILES += mk/config.mk +LATE_DIST_CLEAN_FILES += mk/config.mk mk/are-validating.mk # VERSION is shipped in a source dist MAINTAINER_CLEAN_FILES += VERSION