[commit: ghc] master: Build system: do not build stm and parallel by default (392ff06)
git at git.haskell.org
git at git.haskell.org
Tue Jul 14 08:25:01 UTC 2015
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/392ff06d4bc47bcd731404a48355d8b165609293/ghc
>---------------------------------------------------------------
commit 392ff06d4bc47bcd731404a48355d8b165609293
Author: Thomas Miedema <thomasmiedema at gmail.com>
Date: Fri Jul 10 19:15:49 2015 +0200
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
>---------------------------------------------------------------
392ff06d4bc47bcd731404a48355d8b165609293
ghc.mk | 14 ++++++--------
mk/build.mk.sample | 4 ++++
mk/config.mk.in | 2 ++
validate | 5 +++++
4 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/ghc.mk b/ghc.mk
index 219cdc7..db077bc 100644
--- a/ghc.mk
+++ b/ghc.mk
@@ -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 3f97702..19a59ae 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 bcdebbf..175aa06 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
################################################################################
#
diff --git a/validate b/validate
index fbf3c1b..e72a578 100755
--- a/validate
+++ b/validate
@@ -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
More information about the ghc-commits
mailing list