summaryrefslogtreecommitdiff
path: root/compiler/Makefile
diff options
context:
space:
mode:
authorSimon Marlow <marlowsd@gmail.com>2009-07-03 07:45:27 +0000
committerSimon Marlow <marlowsd@gmail.com>2009-07-03 07:45:27 +0000
commitab1d5052de53479377c961d1e966f0cf0b82c592 (patch)
treef36d0353c7789ac10900e3466bfb7fb30eacbe74 /compiler/Makefile
parent8b87f1916a010bf35163bae5925cb1e1fa37a94d (diff)
downloadhaskell-ab1d5052de53479377c961d1e966f0cf0b82c592.tar.gz
Improved infrastructure for fast-rebuilding of parts of the tree
e.g. cd compiler make FAST=YES stage1/build/HscTypes.o builds just the specified .o file, without rebuilding dependencies, and omitting some of the makefile phases. FAST=YES works anywhere, to omit depenencies and phases. 'make fast' is shorthand for 'make all FAST=YES'.
Diffstat (limited to 'compiler/Makefile')
-rw-r--r--compiler/Makefile8
1 files changed, 5 insertions, 3 deletions
diff --git a/compiler/Makefile b/compiler/Makefile
index 7618f680a1..cde254ae78 100644
--- a/compiler/Makefile
+++ b/compiler/Makefile
@@ -15,16 +15,18 @@ TOP = ..
SPEC_TARGETS = 1 2 3
include $(TOP)/mk/sub-makefile.mk
+FAST_MAKE_OPTS += compiler_stage1_NO_BUILD_DEPS=YES compiler_stage2_NO_BUILD_DEPS=YES compiler_stage3_NO_BUILD_DEPS=YES
+
.PHONY: 1 2 3
1:
- +$(TOPMAKE) stage=1 all_ghc_stage1 compiler_stage1_NO_BUILD_DEPS=YES OMIT_PHASE_1=YES OMIT_PHASE_2=YES OMIT_PHASE_3=YES
+ +$(TOPMAKE) stage=1 all_ghc_stage1 $(FAST_MAKE_OPTS)
2:
- +$(TOPMAKE) stage=2 all_ghc_stage2 compiler_stage2_NO_BUILD_DEPS=YES OMIT_PHASE_1=YES OMIT_PHASE_2=YES OMIT_PHASE_3=YES
+ +$(TOPMAKE) stage=2 all_ghc_stage2 $(FAST_MAKE_OPTS)
3:
- +$(TOPMAKE) stage=3 all_ghc_stage3 compiler_stage3_NO_BUILD_DEPS=YES OMIT_PHASE_1=YES OMIT_PHASE_2=YES OMIT_PHASE_3=YES
+ +$(TOPMAKE) stage=3 all_ghc_stage3 $(FAST_MAKE_OPTS)
.PHONY: extra-help
help : extra-help