Give each stage its own Config.hs
authorIan Lynagh <igloo@earth.li>
Thu, 19 Aug 2010 22:47:09 +0000 (22:47 +0000)
committerIan Lynagh <igloo@earth.li>
Thu, 19 Aug 2010 22:47:09 +0000 (22:47 +0000)
This also means the file is generated in a dist directory, not a
source directory.

compiler/ghc.mk

index 5387c8b..60123e9 100644 (file)
@@ -38,12 +38,12 @@ compiler_stage3_MKDEPENDC_OPTS = -DMAKING_GHC_BUILD_SYSTEM_DEPENDENCIES
 compiler_stage1_C_FILES_NODEPS = compiler/parser/cutils.c
 
 ifneq "$(BINDIST)" "YES"
 compiler_stage1_C_FILES_NODEPS = compiler/parser/cutils.c
 
 ifneq "$(BINDIST)" "YES"
-compiler/stage1/package-data.mk : $(compiler_CONFIG_HS)
-compiler/stage2/package-data.mk : $(compiler_CONFIG_HS)
-compiler/stage3/package-data.mk : $(compiler_CONFIG_HS)
+compiler/stage1/package-data.mk : compiler/stage1/build/Config.hs
+compiler/stage2/package-data.mk : compiler/stage2/build/Config.hs
+compiler/stage3/package-data.mk : compiler/stage3/build/Config.hs
 endif
 
 endif
 
-$(compiler_CONFIG_HS) : mk/config.mk mk/project.mk
+compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/.
        "$(RM)" $(RM_OPTS) $@
        @echo 'Creating $@ ... '
        @echo '{-# LANGUAGE CPP #-}'                                        >> $@
        "$(RM)" $(RM_OPTS) $@
        @echo 'Creating $@ ... '
        @echo '{-# LANGUAGE CPP #-}'                                        >> $@
@@ -140,7 +140,8 @@ else
 endif
        @echo done.
 
 endif
        @echo done.
 
-$(eval $(call clean-target,compiler,config_hs,$(compiler_CONFIG_HS)))
+# XXX 2010-08-19: This is a legacy clean. Remove later.
+$(eval $(call clean-target,compiler,config_hs,compiler/main/Config.hs))
 
 # -----------------------------------------------------------------------------
 # Create platform includes
 
 # -----------------------------------------------------------------------------
 # Create platform includes