summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Lynagh <ian@well-typed.com>2012-10-25 14:55:23 +0100
committerIan Lynagh <ian@well-typed.com>2012-10-25 14:55:23 +0100
commit86e247968f6b29fd482f9991b0e3a6ec1cc2e265 (patch)
tree15e8cf63f851d460a0bbb73bbebe98cda780d1cc
parent38aeca27e7f395bb307e3c22b39feafa7690a1ad (diff)
downloadhaskell-86e247968f6b29fd482f9991b0e3a6ec1cc2e265.tar.gz
Fix the transformers-building code, and move it from validate to ghc.mk
This makes life easier, as ghc.mk has access to HADDOCK_DOCS and DYNAMIC_BY_DEFAULT, so knows the right way to build it.
-rw-r--r--ghc.mk24
-rwxr-xr-xvalidate23
2 files changed, 25 insertions, 22 deletions
diff --git a/ghc.mk b/ghc.mk
index cdf306946c..3f8d971732 100644
--- a/ghc.mk
+++ b/ghc.mk
@@ -1306,6 +1306,30 @@ bootstrapping-files: $(libffi_HEADERS)
.DELETE_ON_ERROR:
# -----------------------------------------------------------------------------
+
+ifeq "$(HADDOCK_DOCS)" "YES"
+BINDIST_HADDOCK_FLAG = --with-haddock="$(BINDIST_PREFIX)/bin/haddock"
+endif
+ifeq "$(DYNAMIC_BY_DEFAULT)" "YES"
+BINDIST_LIBRARY_FLAGS = --enable-shared --disable-library-vanilla
+else
+BINDIST_LIBRARY_FLAGS = --enable-library-vanilla --disable-shared
+endif
+BINDIST_LIBRARY_FLAGS += --disable-library-prof
+
+.PHONY: validate_build_transformers
+validate_build_transformers:
+ cd libraries/transformers && "$(BINDIST_PREFIX)/bin/ghc" --make Setup
+ cd libraries/transformers && ./Setup configure --with-ghc="$(BINDIST_PREFIX)/bin/ghc" $(BINDIST_HADDOCK_FLAG) $(BINDIST_LIBRARY_FLAGS) --global --builddir=dist-bindist --prefix="$(BINDIST_PREFIX)"
+ cd libraries/transformers && ./Setup build --builddir=dist-bindist
+ifeq "$(HADDOCK_DOCS)" "YES"
+ cd libraries/transformers && ./Setup haddock --builddir=dist-bindist
+endif
+ cd libraries/transformers && ./Setup install --builddir=dist-bindist
+ cd libraries/transformers && ./Setup clean --builddir=dist-bindist
+ cd libraries/transformers && rm -f Setup Setup.exe Setup.hi Setup.o
+
+# -----------------------------------------------------------------------------
# Numbered phase targets
.PHONY: phase_0_builds
diff --git a/validate b/validate
index cc53df9cf4..931c9016c2 100755
--- a/validate
+++ b/validate
@@ -115,28 +115,7 @@ if [ $speed != "FAST" ]; then
#
bindistdir="bindisttest/install dir"
- # This is a hack to make
- # HADDOCK_DOCS = NO
- # work when validating.
- if grep -q "^HADDOCK_DOCS.*=.*NO" mk/validate.mk
- then
- unset WITH_HADDOCK
- DO_HADDOCK=NO
- else
- WITH_HADDOCK=--with-haddock="$thisdir/$bindistdir/bin/haddock"
- DO_HADDOCK=YES
- fi
-
- cd libraries/transformers
- "$thisdir/$bindistdir/bin/ghc" --make Setup
-
- ./Setup configure --with-ghc="$thisdir/$bindistdir/bin/ghc" ${WITH_HADDOCK+"$WITH_HADDOCK"} --global --builddir=dist-bindist --prefix="$thisdir/$bindistdir"
- ./Setup build --builddir=dist-bindist
- [ "$DO_HADDOCK" = "YES" ] && ./Setup haddock --builddir=dist-bindist
- ./Setup install --builddir=dist-bindist
- ./Setup clean --builddir=dist-bindist
- rm -f Setup Setup.exe Setup.hi Setup.o
- cd $thisdir
+ $make validate_build_transformers BINDIST_PREFIX="$thisdir/$bindistdir"
fi
fi # testsuite-only