Add a .hc building rules for bootstrapping
[ghc-hetmet.git] / ghc / ghc.mk
index 2f6fb80..c931394 100644 (file)
@@ -33,16 +33,15 @@ ghc_stage2_HC_OPTS += -threaded
 ghc_stage3_HC_OPTS += -threaded
 endif
 
-ifeq "$(BuildSharedLibs)" "YES"
-ghc_HC_OPTS += -dynamic
-endif
-
 # XXX ToDp
 # ifeq "$(GhcProfiled)" "YES"
 
 ghc_stage1_MODULES = Main
 
-ghc_stage2_MODULES = $(ghc_stage1_MODULES) GhciMonad GhciTags InteractiveUI
+ghc_stage2_MODULES = $(ghc_stage1_MODULES)
+ifeq "$(GhcWithInterpreter)" "YES"
+ghc_stage2_MODULES += GhciMonad GhciTags InteractiveUI
+endif
 ghc_stage3_MODULES = $(ghc_stage2_MODULES)
 
 ghc_stage1_PROG = ghc-stage1$(exeext)
@@ -108,6 +107,11 @@ ghc/stage1/build/tmp/$(ghc_stage1_PROG) : $(compiler_stage1_v_LIB)
 ghc/stage2/build/tmp/$(ghc_stage2_PROG) : $(compiler_stage2_v_LIB)
 ghc/stage3/build/tmp/$(ghc_stage3_PROG) : $(compiler_stage3_v_LIB)
 
+# Modules here import HsVersions.h, so we need ghc_boot_platform.h
+$(ghc_stage1_depfile) : compiler/stage1/$(PLATFORM_H)
+$(ghc_stage2_depfile) : compiler/stage2/$(PLATFORM_H)
+$(ghc_stage3_depfile) : compiler/stage3/$(PLATFORM_H)
+
 all_ghc_stage1 : $(GHC_STAGE1)
 all_ghc_stage2 : $(GHC_STAGE2)
 all_ghc_stage3 : $(GHC_STAGE3)