X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fghc.mk;h=0def1c1271eef11a66696ded7a739d19edcc8cf0;hb=2c1c4d3540e5671274d45a473f1d1da5d37f76c1;hp=44ac382f545a45d19a2e8dbe3a17abe49ce6f8d4;hpb=157964f0700f510c75bc10f3ebfc5cfce95b8227;p=ghc-hetmet.git diff --git a/compiler/ghc.mk b/compiler/ghc.mk index 44ac382..0def1c1 100644 --- a/compiler/ghc.mk +++ b/compiler/ghc.mk @@ -49,6 +49,8 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo '{-# LANGUAGE CPP #-}' >> $@ @echo 'module Config where' >> $@ @echo >> $@ + @echo 'import Distribution.System' >> $@ + @echo >> $@ @echo '#include "ghc_boot_platform.h"' >> $@ @echo >> $@ @echo 'cBuildPlatformString :: String' >> $@ @@ -58,6 +60,42 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo 'cTargetPlatformString :: String' >> $@ @echo 'cTargetPlatformString = TargetPlatform_NAME' >> $@ @echo >> $@ +# Sync this with checkArch in configure.ac + @echo 'cTargetArch :: Arch' >> $@ + @echo '#if i386_TARGET_ARCH' >> $@ + @echo 'cTargetArch = I386' >> $@ + @echo '#elif x86_64_TARGET_ARCH' >> $@ + @echo 'cTargetArch = X86_64' >> $@ + @echo '#elif powerpc_TARGET_ARCH' >> $@ + @echo 'cTargetArch = PPC' >> $@ + @echo '#elif powerpc64_TARGET_ARCH' >> $@ + @echo 'cTargetArch = PPC64' >> $@ + @echo '#elif sparc_TARGET_ARCH || sparc64_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Sparc' >> $@ + @echo '#elif arm_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Arm' >> $@ + @echo '#elif mips_TARGET_ARCH || mipseb_TARGET_ARCH || mipsel_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Mips' >> $@ + @echo '#elif 0' >> $@ + @echo 'cTargetArch = SH' >> $@ + @echo '#elif ia64_TARGET_ARCH' >> $@ + @echo 'cTargetArch = IA64' >> $@ + @echo '#elif s390_TARGET_ARCH' >> $@ + @echo 'cTargetArch = S390' >> $@ + @echo '#elif alpha_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Alpha' >> $@ + @echo '#elif hppa_TARGET_ARCH || hppa1_1_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Hppa' >> $@ + @echo '#elif rs6000_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Rs6000' >> $@ + @echo '#elif m68k_TARGET_ARCH' >> $@ + @echo 'cTargetArch = M68k' >> $@ + @echo '#elif vax_TARGET_ARCH' >> $@ + @echo 'cTargetArch = Vax' >> $@ + @echo '#else' >> $@ + @echo '#error Unknown target arch' >> $@ + @echo '#endif' >> $@ + @echo >> $@ @echo 'cProjectName :: String' >> $@ @echo 'cProjectName = "$(ProjectName)"' >> $@ @echo 'cProjectVersion :: String' >> $@ @@ -72,12 +110,14 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo 'cStage = show (STAGE :: Int)' >> $@ @echo 'cCcOpts :: [String]' >> $@ @echo 'cCcOpts = words "$(CONF_CC_OPTS_STAGE$*)"' >> $@ - @echo 'cLdOpts :: [String]' >> $@ - @echo 'cLdOpts = words "$(CONF_LD_OPTS_STAGE$*)"' >> $@ + @echo 'cGccLinkerOpts :: [String]' >> $@ + @echo 'cGccLinkerOpts = words "$(CONF_GCC_LINKER_OPTS_STAGE$*)"' >> $@ + @echo 'cLdLinkerOpts :: [String]' >> $@ + @echo 'cLdLinkerOpts = words "$(CONF_LD_LINKER_OPTS_STAGE$*)"' >> $@ @echo 'cIntegerLibrary :: String' >> $@ @echo 'cIntegerLibrary = "$(INTEGER_LIBRARY)"' >> $@ - @echo 'cSplitObjs :: String' >> $@ - @echo 'cSplitObjs = "$(SupportsSplitObjs)"' >> $@ + @echo 'cSupportsSplitObjs :: String' >> $@ + @echo 'cSupportsSplitObjs = "$(SupportsSplitObjs)"' >> $@ @echo 'cGhcWithInterpreter :: String' >> $@ @echo 'cGhcWithInterpreter = "$(GhcWithInterpreter)"' >> $@ @echo 'cGhcWithNativeCodeGen :: String' >> $@ @@ -497,7 +537,9 @@ compiler/stage1/inplace-pkg-config-munged: compiler/stage1/inplace-pkg-config < $< > $@ "$(compiler_stage1_GHC_PKG)" update --force $(compiler_stage1_GHC_PKG_OPTS) $@ -$(compiler_stage1_v_LIB) : compiler/stage1/inplace-pkg-config-munged +# We need to make sure the munged config is in the database before we +# try to configure ghc-bin +ghc/stage1/package-data.mk : compiler/stage1/inplace-pkg-config-munged endif endif