Change some HC_OPTS var handling
authorIan Lynagh <igloo@earth.li>
Sun, 16 Jan 2011 00:31:04 +0000 (00:31 +0000)
committerIan Lynagh <igloo@earth.li>
Sun, 16 Jan 2011 00:31:04 +0000 (00:31 +0000)
In particular, this means ghc gets built with -rtsopt, -threaded, etc again.

ghc/ghc.mk
rules/distdir-way-opts.mk
rules/package-config.mk

index 11d506b..ecce7c8 100644 (file)
@@ -14,9 +14,9 @@
 ghc_USES_CABAL = YES
 ghc_PACKAGE = ghc-bin
 
-ghc_stage1_HC_OPTS = $(GhcStage1HcOpts)
-ghc_stage2_HC_OPTS = $(GhcStage2HcOpts)
-ghc_stage3_HC_OPTS = $(GhcStage3HcOpts)
+ghc_stage1_MORE_HC_OPTS = $(GhcStage1HcOpts)
+ghc_stage2_MORE_HC_OPTS = $(GhcStage2HcOpts)
+ghc_stage3_MORE_HC_OPTS = $(GhcStage3HcOpts)
 
 ghc_stage2_CC_OPTS = -Iincludes
 ghc_stage3_CC_OPTS = -Iincludes
@@ -27,27 +27,29 @@ ghc_stage2_MKDEPENDC_OPTS = -DMAKING_GHC_BUILD_SYSTEM_DEPENDENCIES
 ghc_stage3_MKDEPENDC_OPTS = -DMAKING_GHC_BUILD_SYSTEM_DEPENDENCIES
 
 ifeq "$(GhcWithInterpreter)" "YES"
-ghc_stage2_HC_OPTS += -DGHCI
-ghc_stage3_HC_OPTS += -DGHCI
+ghc_stage2_MORE_HC_OPTS += -DGHCI
+ghc_stage3_MORE_HC_OPTS += -DGHCI
 endif
 
 ifeq "$(GhcDebugged)" "YES"
-ghc_HC_OPTS += -debug
+ghc_stage1_MORE_HC_OPTS += -debug
+ghc_stage2_MORE_HC_OPTS += -debug
+ghc_stage3_MORE_HC_OPTS += -debug
 endif
 
 ifeq "$(GhcDynamic)" "YES"
-ghc_stage2_HC_OPTS += -dynamic
-ghc_stage3_HC_OPTS += -dynamic
+ghc_stage2_MORE_HC_OPTS += -dynamic
+ghc_stage3_MORE_HC_OPTS += -dynamic
 endif
 
 ifeq "$(GhcThreaded)" "YES"
 # Use threaded RTS with GHCi, so threads don't get blocked at the prompt.
-ghc_stage2_HC_OPTS += -threaded
-ghc_stage3_HC_OPTS += -threaded
+ghc_stage2_MORE_HC_OPTS += -threaded
+ghc_stage3_MORE_HC_OPTS += -threaded
 endif
 
 ifeq "$(GhcProfiled)" "YES"
-ghc_stage2_HC_OPTS += -prof
+ghc_stage2_MORE_HC_OPTS += -prof
 endif
 
 ghc_stage1_MODULES = Main
@@ -67,11 +69,11 @@ ghc_stage2_PROG = ghc-stage2$(exeext)
 ghc_stage3_PROG = ghc-stage3$(exeext)
 
 # ToDo: perhaps use ghc-cabal to configure ghc-bin
-ghc_stage1_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage1_VERSION)
-ghc_stage2_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage2_VERSION)
-ghc_stage3_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage3_VERSION)
-ghc_stage2_HC_OPTS += -package haskeline
-ghc_stage3_HC_OPTS += -package haskeline
+ghc_stage1_MORE_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage1_VERSION)
+ghc_stage2_MORE_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage2_VERSION)
+ghc_stage3_MORE_HC_OPTS += -package $(compiler_PACKAGE)-$(compiler_stage3_VERSION)
+ghc_stage2_MORE_HC_OPTS += -package haskeline
+ghc_stage3_MORE_HC_OPTS += -package haskeline
 
 ghc_language_extension_flags = -XCPP \
                                -XPatternGuards \
@@ -79,9 +81,9 @@ ghc_language_extension_flags = -XCPP \
                                -XUnboxedTuples \
                                -XFlexibleInstances \
                                -XMagicHash
-ghc_stage1_HC_OPTS += $(ghc_language_extension_flags)
-ghc_stage2_HC_OPTS += $(ghc_language_extension_flags)
-ghc_stage3_HC_OPTS += $(ghc_language_extension_flags)
+ghc_stage1_MORE_HC_OPTS += $(ghc_language_extension_flags)
+ghc_stage2_MORE_HC_OPTS += $(ghc_language_extension_flags)
+ghc_stage3_MORE_HC_OPTS += $(ghc_language_extension_flags)
 
 ghc_stage1_SHELL_WRAPPER = YES
 ghc_stage2_SHELL_WRAPPER = YES
index 5fd8253..7a83f50 100644 (file)
@@ -20,7 +20,10 @@ define distdir-way-opts # args: $1 = dir, $2 = distdir, $3 = way, $4 = stage
 #                                 configure-time
 #   - SRC_HC_OPTS                  source-tree-wide options from build.mk
 #                                 (optimisation, heap settings)
-#   - libraries/base_HC_OPTS       options from libraries/base for all ways
+#   - libraries/base_HC_OPTS       options from Cabal for libraries/base
+#                                  for all ways
+#   - libraries/base_MORE_HC_OPTS  options from elsewhere in the build
+#                                  system for libraries/base for all ways
 #   - libraries/base_v_HC_OPTS     options from libraries/base for way v
 #   - WAY_v_HC_OPTS                options for this way
 #   - EXTRA_HC_OPTS                options from the command-line
@@ -48,6 +51,7 @@ $1_$2_$3_MOST_HC_OPTS = \
  $$(foreach pkg,$$($1_$2_DEPS),-package $$(pkg)) \
  $$(if $$(findstring YES,$$($1_$2_SplitObjs)),$$(if $$(findstring dyn,$3),,-split-objs),) \
  $$($1_$2_HC_OPTS) \
+ $$($1_$2_MORE_HC_OPTS) \
  $$($1_$2_EXTRA_HC_OPTS) \
  $$($1_$2_$3_HC_OPTS) \
  $$($$(basename $$<)_HC_OPTS) \
index 871fde6..f111e1e 100644 (file)
@@ -31,9 +31,9 @@ $1_$2_HC_DEP =
 $1_$2_HC_PKGCONF = -package-conf $$(BOOTSTRAPPING_CONF)
 $1_$2_GHC_PKG_OPTS = --package-conf=$$(BOOTSTRAPPING_CONF)
 $1_$2_CONFIGURE_OPTS += --package-db=$$(TOP)/$$(BOOTSTRAPPING_CONF)
-$1_$2_HC_OPTS += -no-user-package-conf
+$1_$2_MORE_HC_OPTS += -no-user-package-conf
 ifeq "$(ghc_ge_613)" "YES"
-$1_$2_HC_OPTS += -rtsopts
+$1_$2_MORE_HC_OPTS += -rtsopts
 endif
 else
 $1_$2_ghc_ge_613 = YES
@@ -48,8 +48,8 @@ $1_$2_GHC_PKG_OPTS =
 $1_$2_HC_MK_DEPEND = $$(GHC_STAGE1)
 $1_$2_HC_MK_DEPEND_DEP = $$($1_$2_HC_MK_DEPEND)
 $1_$2_HC_DEP = $$($1_$2_HC)
-$1_$2_HC_OPTS += -no-user-package-conf
-$1_$2_HC_OPTS += -rtsopts
+$1_$2_MORE_HC_OPTS += -no-user-package-conf
+$1_$2_MORE_HC_OPTS += -rtsopts
 endif
 
 # Useful later