summaryrefslogtreecommitdiff
path: root/rules/build-package.mk
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2011-09-13 13:49:15 +0100
committerSimon Marlow <marlowsd@gmail.com>2011-09-16 14:03:12 +0100
commit493146ac822f05cebacf819d2f6a396f6e11d704 (patch)
tree8ce35f4cfdb34ab7824e190142efdb50b9d5d821 /rules/build-package.mk
parent3137073c530414304bbe498f16105f066aa593e3 (diff)
downloadhaskell-493146ac822f05cebacf819d2f6a396f6e11d704.tar.gz
Add some missing dependencies; should fix make after re-configure
Every Haskell compilation in a package should depend on the package-data.mk file for that package. Then, if a package's version number is bumped, we will recompile all the modules in the package so that their interface files get the new version number. This should mean that a simple 'make' will succeed in a couple of scenarios where it didn't before: 1. re-configuring bumps the version number of GHC, so everything in the ghc package (stages 1 & 2) must be recompiled. 2. bumping the version of one of the boot packages does not require a make clean any more. I have tested (1) but not (2). LAX_DEPENDENCIES=YES disabled these new dependencies too.
Diffstat (limited to 'rules/build-package.mk')
-rw-r--r--rules/build-package.mk4
1 files changed, 4 insertions, 0 deletions
diff --git a/rules/build-package.mk b/rules/build-package.mk
index c15a8c5c50..32556579cb 100644
--- a/rules/build-package.mk
+++ b/rules/build-package.mk
@@ -85,6 +85,10 @@ include $1/$2/package-data.mk
else ifeq "$(phase)" "final"
include $1/$2/package-data.mk
endif
+# Each Haskell compilation in this package will depend on the
+# package-data.mk file because e.g. if the version of the package
+# changes we need to recompile everything in it.
+$1_$2_PKGDATA_DEP = $1/$2/package-data.mk
endif
# We don't bother splitting the bootstrap packages (built with stage 0)