Fix some makefile logic, and remove the now unused *_USE_BOOT_LIBS vars
authorIan Lynagh <igloo@earth.li>
Fri, 11 Sep 2009 12:31:35 +0000 (12:31 +0000)
committerIan Lynagh <igloo@earth.li>
Fri, 11 Sep 2009 12:31:35 +0000 (12:31 +0000)
ghc/ghc.mk
rules/build-package-data.mk
rules/build-package.mk
rules/build-prog.mk
rules/package-config.mk

index a17a47e..46b2df5 100644 (file)
@@ -50,7 +50,6 @@ ghc_stage2_PROG = ghc-stage2$(exeext)
 ghc_stage3_PROG = ghc-stage3$(exeext)
 
 # ToDo: perhaps use ghc-cabal to configure ghc-bin
-ghc_stage1_USE_BOOT_LIBS = YES
 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)
index 949a7b4..81913dc 100644 (file)
 #
 # -----------------------------------------------------------------------------
 
-define build-package-data # args: $1 = dir, $2 = distdir
+define build-package-data
+# args:
+# $1 = dir
+# $2 = distdir
+# $3 = GHC stage to use (0 == bootstrapping compiler)
 
 ifeq "$$(filter p,$$(GhcLibWays))" "p"
 $1_$2_CONFIGURE_OPTS += --enable-library-profiling
@@ -44,7 +48,7 @@ endif
 $1/$2/package-data.mk $1/$2/inplace-pkg-config $1/$2/build/autogen/cabal_macros.h : $$(GHC_CABAL_INPLACE) $$($1_$2_GHC_PKG_DEP) $1/$$($1_PACKAGE).cabal $$(wildcard $1/configure) $$($1_$2_HC_CONFIG_DEP)
        "$$(GHC_CABAL_INPLACE)" configure --with-ghc="$$($1_$2_HC_CONFIG)" --with-ghc-pkg="$$($1_$2_GHC_PKG)" --with-gcc="$$(WhatGccIsCalled)" --configure-option=--with-cc="$$(WhatGccIsCalled)" $$($1_CONFIGURE_OPTS) $$($1_$2_CONFIGURE_OPTS) -- $2 $1
 ifeq "$$($1_$2_PROG)" ""
-ifeq "$$(ghc_ge_6102) $$($1_$2_USE_BOOT_LIBS)" "NO YES" # NOTE [1] below
+ifeq "$$(ghc_ge_6102) $3" "NO 0" # NOTE [1] below
            cat $1/$2/inplace-pkg-config | sed "s@^import-dirs:@import-dirs: $(TOP)/$1 $(TOP)/$1/src @" | "$$($1_$2_GHC_PKG)" update --force $$($1_$2_GHC_PKG_OPTS) -
 else
            "$$($1_$2_GHC_PKG)" update --force $$($1_$2_GHC_PKG_OPTS) $1/$2/inplace-pkg-config
index 817d325..9e1ab7a 100644 (file)
@@ -68,7 +68,6 @@ clean_$1_$2_config:
 
 # --- CONFIGURATION
 
-$1_$2_USE_BOOT_LIBS = YES
 $(call package-config,$1,$2,$3)
 
 ifneq "$$(NO_INCLUDE_PKGDATA)" "YES"
@@ -89,7 +88,7 @@ $(call all-target,$1_$2,$1/$2/package-data.mk)
 ifneq "$$(BINDIST)" "YES"
 # We have a rule for package-data.mk only when the package is
 # disabled, because we want the build to fail if we haven't run phase 0.
-$(call build-package-data,$1,$2)
+$(call build-package-data,$1,$2,$3)
 endif
 
 else
index 360248d..e4c0e6a 100644 (file)
@@ -66,7 +66,7 @@ $(call all-target,$1_$2,$1/$2/package-data.mk)
 # We have a rule for package-data.mk only when the package is
 # disabled, because we want the build to fail if we haven't run phase 0.
 ifneq "$(BINDIST)" "YES"
-$(call build-package-data,$1,$2)
+$(call build-package-data,$1,$2,$3)
 endif
 
 else
index e1c5632..726a441 100644 (file)
@@ -27,11 +27,9 @@ $1_$2_HC_MK_DEPEND = $$($1_$2_HC)
 # on cygwin we get a dep on c:/ghc/..., and make gets confused by the :
 $1_$2_HC_MK_DEPEND_DEP =
 $1_$2_HC_DEP =
-ifeq "$$($1_$2_USE_BOOT_LIBS)" "YES"
 $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)
-endif
 else
 $1_$2_ghc_ge_609 = YES
 $1_$2_HC_PKGCONF =