X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Makefile;h=3bd6b726680df3ac265ce9ee17e2df2fdd3a8849;hb=081d294c2a4a9e886e96ab50cf43718b54696646;hp=d2cd6b885359c661019c960f1a20cb51f810b155;hpb=06781a444251b6aabfd9079f85ebcfa794f9db23;p=ghc-hetmet.git diff --git a/Makefile b/Makefile index d2cd6b8..3bd6b72 100644 --- a/Makefile +++ b/Makefile @@ -88,7 +88,7 @@ endif # Sanity check that all the boot libraries are in the tree, to catch # failure to run darcs-all. check-packages : - @ds=`grep "^[^# ][^ ]* *[^ ][^ ]*$$" packages | sed "s/ .*//"`;\ + @ds=`grep "^[^# ][^ ]* *[^ ][^ ]* *[^ ][^ ]*$$" packages | sed "s/ .*//"`;\ for d in $$ds; do \ if test ! -d $$d; then \ echo "Looks like you're missing $$d,"; \ @@ -284,7 +284,7 @@ install-docs :: binary-dist:: -rm -rf $(BIN_DIST_DIR) - -$(RM) $(BIN_DIST_TARBALL) + -$(RM) $(BIN_DIST_TAR_BZ2) ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32" @@ -299,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_TAR_BZ2) ) + ( cd $(BIN_DIST_TOPDIR_ABS); bunzip2 -c $(BIN_DIST_TAR_BZ2) | tar tf - | sed "s/^ghc-$(ProjectVersion)/fptools/" | sort >$(FPTOOLS_TOP_ABS)/bin-manifest-$(ProjectVersion) ) + else .PHONY: binary-dist @@ -389,22 +397,15 @@ 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) +PUBLISH_FILES = $(BIN_DIST_TAR_BZ2) # Upload the distribution and documentation ifneq "$(ISCC)" "" @@ -595,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