summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorThomas Miedema <thomasmiedema@gmail.com>2015-05-27 20:54:36 +0200
committerThomas Miedema <thomasmiedema@gmail.com>2015-06-04 23:58:29 +0200
commit092082e7583c8170ae41ef8d01a554db34f91bb3 (patch)
treed9a119e4674f4eec3031bb052a16a88d7fd2cfe8 /Makefile
parent14652b519eca12411e92c28cd06de32612b0973a (diff)
downloadhaskell-092082e7583c8170ae41ef8d01a554db34f91bb3.tar.gz
Build: ./boot && ./configure && make sdist (#8723)
Make it possible to run `make sdist` right after configure, without completing a complete build first. Test Plan: I compared the contents of the created `.tar.bz2` files in the `sdistprep` directory, after running `make sdist` both before and after completing a full build, using `diff -r`. There weren't any differences (after applying the patches from D914). Note that the `.tar.bz2` files were not exactly the same size, but they aren't either when tarring and bzipping the same directory twice. It seems tarring and bzipping is not deterministic (on my system). Differential Revision: https://phabricator.haskell.org/D917
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile30
1 files changed, 29 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 9913803ebe..e6e6a90601 100644
--- a/Makefile
+++ b/Makefile
@@ -61,7 +61,29 @@ endif
endif
# No need to update makefiles for these targets:
-REALGOALS=$(filter-out binary-dist binary-dist-prep bootstrapping-files framework-pkg clean clean_% distclean maintainer-clean show echo help test fulltest fasttest,$(MAKECMDGOALS))
+# (the ones we're filtering out)
+REALGOALS=$(filter-out \
+ binary-dist \
+ binary-dist-prep \
+ sdist sdist-ghc \
+ sdist-ghc-prep \
+ sdist-windows-tarballs \
+ sdist-windows-tarballs-prep \
+ sdist-testsuite \
+ sdist-testsuite-prep \
+ bootstrapping-files \
+ framework-pkg \
+ clean \
+ clean_% \
+ distclean \
+ maintainer-clean \
+ show \
+ echo \
+ help \
+ test \
+ fulltest \
+ fasttest \
+ ,$(MAKECMDGOALS))
# configure touches certain files even if they haven't changed. This
# can mean a lot of unnecessary recompilation after a re-configure, so
@@ -101,6 +123,12 @@ else
$(MAKE) --no-print-directory -f ghc.mk unix-binary-dist-prep
endif
+.PHONY: sdist sdist-ghc sdist-ghc-prep sdist-windows-tarballs sdist-windows-tarballs-prep sdist-testsuite sdist-testsuite-prep
+# Just running `./boot && ./configure && make sdist` should work, so skip
+# phase 0 and 1 and don't build any dependency files.
+sdist sdist-ghc sdist-ghc-prep sdist-windows-tarballs sdist-windows-tarballs-prep sdist-testsuite sdist-testsuite-prep :
+ $(MAKE) --no-print-directory -f ghc.mk $@ NO_INCLUDE_DEPS=YES NO_INCLUDE_PKGDATA=YES
+
.PHONY: clean distclean maintainer-clean
clean distclean maintainer-clean:
$(MAKE) --no-print-directory -f ghc.mk $@ CLEANING=YES