diff options
author | Thomas Miedema <thomasmiedema@gmail.com> | 2015-07-10 19:15:49 +0200 |
---|---|---|
committer | Thomas Miedema <thomasmiedema@gmail.com> | 2015-07-14 00:31:05 +0200 |
commit | 392ff06d4bc47bcd731404a48355d8b165609293 (patch) | |
tree | 4236924693cb96c6ca1aa75096cdc81ff37bcb3c | |
parent | 47ebe267e8f78eee68333ba12a83d4fa6d763c3b (diff) | |
download | haskell-392ff06d4bc47bcd731404a48355d8b165609293.tar.gz |
Build system: do not build stm and parallel by default
stm and parallel have an 'extra' tag in the ./packages file, so would get
added to PACKAGES_STAGE2 by default, and subsequently build by the stage2
compiler.
With this patch, this happens only when you set BUILD_EXTRA_PKGS=YES in
build.mk. A normal validate still builds (and tests) the 'extra'
packages, but they are skipped for `validate --fast`. Maybe this brings
us closer to finishing within the 50 minute Travis limit as well.
We can later try to give random, primitive and vector an 'extra' tag as
well (now they have a 'dph' tag), but some tests will probably fail at
first.
Differential Revision: https://phabricator.haskell.org/D1065
-rw-r--r-- | ghc.mk | 14 | ||||
-rw-r--r-- | mk/build.mk.sample | 4 | ||||
-rw-r--r-- | mk/config.mk.in | 2 | ||||
-rwxr-xr-x | validate | 5 |
4 files changed, 17 insertions, 8 deletions
@@ -435,16 +435,14 @@ define addExtraPackage ifeq "$2" "-" # Do nothing; this package is already handled above else ifeq "$2" "dph" -## DPH-specific clause -ifeq "$$(GhcProfiled)" "YES" -# Ignore package: The DPH packages need TH, which is incompatible with -# a profiled GHC -else ifneq "$$(BUILD_DPH)" "YES" -# Ignore package: DPH was disabled -else +ifeq "$$(BUILD_DPH) $$(GhcProfiled)" "YES NO" +# The DPH packages need TH, which is incompatible with a profiled GHC. +PACKAGES_STAGE2 += $1 +endif +else ifeq "$2" "extra" +ifeq "$$(BUILD_EXTRA_PKGS)" "YES" PACKAGES_STAGE2 += $1 endif -## end of DPH-specific clause else PACKAGES_STAGE2 += $1 endif diff --git a/mk/build.mk.sample b/mk/build.mk.sample index 3f9770226b..19a59ae5c9 100644 --- a/mk/build.mk.sample +++ b/mk/build.mk.sample @@ -69,6 +69,10 @@ V = 1 # working on stage 2 and want to freeze stage 1 and the libraries for # a while. +# Build the "extra" packages (see ./packages). This enables more tests. See: +# https://ghc.haskell.org/trac/ghc/wiki/Building/RunningTests/Running#AdditionalPackages +#BUILD_EXTRA_PKGS=YES + # Uncomment the following line to enable building DPH #BUILD_DPH=YES diff --git a/mk/config.mk.in b/mk/config.mk.in index bcdebbf113..175aa06bf2 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -773,6 +773,8 @@ endif # Build DPH? BUILD_DPH = NO +# Build the "extra" packages (see ./packages)? +BUILD_EXTRA_PKGS = NO ################################################################################ # @@ -171,6 +171,11 @@ echo "ValidateSpeed=$speed" >> mk/are-validating.mk echo "ValidateHpc=$hpc" >> mk/are-validating.mk echo "V=0" >> mk/are-validating.mk # Less gunk +if [ $speed != "FAST" ]; then + # Build the "extra" packages (see ./packages), to enable more tests. + echo "BUILD_EXTRA_PKGS=YES" >> mk/are-validating.mk +fi + if [ $use_dph -eq 1 ]; then echo "BUILD_DPH=YES" >> mk/are-validating.mk else |