X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fghc.mk;h=55ebb84ac9b5df5f80741cbedf8e8efbf416533e;hp=357b51c5cc91eaeb773bf8521e03612302ad11b9;hb=066b369de2c6f7da03c88206288dca29ab061b31;hpb=9be618cdf99b04ce7eef6eeabc168b59174bb843 diff --git a/compiler/ghc.mk b/compiler/ghc.mk index 357b51c..55ebb84 100644 --- a/compiler/ghc.mk +++ b/compiler/ghc.mk @@ -96,6 +96,58 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo '#error Unknown target arch' >> $@ @echo '#endif' >> $@ @echo >> $@ +# Sync this with checkOS in configure.ac + @echo 'cTargetOS :: OS' >> $@ + @echo '#if linux_TARGET_OS' >> $@ + @echo 'cTargetOS = Linux' >> $@ + @echo '#elif freebsd_TARGET_OS' >> $@ + @echo 'cTargetOS = FreeBSD' >> $@ + @echo '#elif netbsd_TARGET_OS' >> $@ + @echo 'cTargetOS = NetBSD' >> $@ + @echo '#elif openbsd_TARGET_OS' >> $@ + @echo 'cTargetOS = OpenBSD' >> $@ + @echo '#elif dragonfly_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "dragonfly"' >> $@ + @echo '#elif osf1_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "osf"' >> $@ + @echo '#elif osf3_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "osf"' >> $@ + @echo '#elif hpux_TARGET_OS' >> $@ + @echo 'cTargetOS = HPUX' >> $@ + @echo '#elif linuxaout_TARGET_OS' >> $@ + @echo 'cTargetOS = Linux' >> $@ + @echo '#elif kfreebsdgnu_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "kfreebsdgnu"' >> $@ + @echo '#elif freebsd2_TARGET_OS' >> $@ + @echo 'cTargetOS = FreeBSD' >> $@ + @echo '#elif solaris2_TARGET_OS' >> $@ + @echo 'cTargetOS = Solaris' >> $@ + @echo '#elif cygwin32_TARGET_OS' >> $@ + @echo 'cTargetOS = Windows' >> $@ + @echo '#elif mingw32_TARGET_OS' >> $@ + @echo 'cTargetOS = Windows' >> $@ + @echo '#elif darwin_TARGET_OS' >> $@ + @echo 'cTargetOS = OSX' >> $@ + @echo '#elif gnu_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "gnu"' >> $@ + @echo '#elif nextstep2_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "nextstep"' >> $@ + @echo '#elif nextstep3_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "nextstep"' >> $@ + @echo '#elif sunos4_TARGET_OS' >> $@ + @echo 'cTargetOS = Solaris' >> $@ + @echo '#elif ultrix_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "ultrix"' >> $@ + @echo '#elif irix_TARGET_OS' >> $@ + @echo 'cTargetOS = IRIX' >> $@ + @echo '#elif aix_TARGET_OS' >> $@ + @echo 'cTargetOS = AIX' >> $@ + @echo '#elif haiku_TARGET_OS' >> $@ + @echo 'cTargetOS = OtherOS "haiku"' >> $@ + @echo '#else' >> $@ + @echo '#error Unknown target OS' >> $@ + @echo '#endif' >> $@ + @echo >> $@ @echo 'cProjectName :: String' >> $@ @echo 'cProjectName = "$(ProjectName)"' >> $@ @echo 'cProjectVersion :: String' >> $@ @@ -108,8 +160,6 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo 'cBooterVersion = "$(GhcVersion)"' >> $@ @echo 'cStage :: String' >> $@ @echo 'cStage = show (STAGE :: Int)' >> $@ - @echo 'cCcOpts :: [String]' >> $@ - @echo 'cCcOpts = words "$(CONF_CC_OPTS_STAGE$*)"' >> $@ @echo 'cGccLinkerOpts :: [String]' >> $@ @echo 'cGccLinkerOpts = words "$(CONF_GCC_LINKER_OPTS_STAGE$*)"' >> $@ @echo 'cLdLinkerOpts :: [String]' >> $@ @@ -134,12 +184,12 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo 'cLeadingUnderscore = "$(LeadingUnderscore)"' >> $@ @echo 'cRAWCPP_FLAGS :: String' >> $@ @echo 'cRAWCPP_FLAGS = "$(RAWCPP_FLAGS)"' >> $@ - @echo 'cGCC :: String' >> $@ - @echo 'cGCC = "$(WhatGccIsCalled)"' >> $@ @echo 'cMKDLL :: String' >> $@ @echo 'cMKDLL = "$(BLD_DLL)"' >> $@ @echo 'cLdIsGNULd :: String' >> $@ @echo 'cLdIsGNULd = "$(LdIsGNULd)"' >> $@ + @echo 'cLdHasBuildId :: String' >> $@ + @echo 'cLdHasBuildId = "$(LdHasBuildId)"' >> $@ @echo 'cLD_X :: String' >> $@ @echo 'cLD_X = "$(LD_X)"' >> $@ @echo 'cGHC_DRIVER_DIR :: String' >> $@ @@ -160,8 +210,6 @@ compiler/stage%/build/Config.hs : mk/config.mk mk/project.mk | $$(dir $$@)/. @echo 'cGHC_SYSMAN_PGM = "$(GHC_SYSMAN)"' >> $@ @echo 'cGHC_SYSMAN_DIR :: String' >> $@ @echo 'cGHC_SYSMAN_DIR = "$(GHC_SYSMAN_DIR)"' >> $@ - @echo 'cGHC_PERL :: String' >> $@ - @echo 'cGHC_PERL = "$(GHC_PERL)"' >> $@ @echo 'cDEFAULT_TMPDIR :: String' >> $@ @echo 'cDEFAULT_TMPDIR = "$(DEFAULT_TMPDIR)"' >> $@ @echo 'cRelocatableBuild :: Bool' >> $@ @@ -375,12 +423,6 @@ endif endif -ifeq "$(GhcWithNativeCodeGen)" "NO" -# XXX This should logically be a CPP option, but there doesn't seem to -# be a flag for that -compiler_CONFIGURE_OPTS += --ghc-option=-DOMIT_NATIVE_CODEGEN -endif - ifeq "$(TargetOS_CPP)" "openbsd" compiler_CONFIGURE_OPTS += --ld-options=-E endif @@ -491,6 +533,18 @@ compiler_stage1_HC_OPTS += $(GhcStage1HcOpts) compiler_stage2_HC_OPTS += $(GhcStage2HcOpts) compiler_stage3_HC_OPTS += $(GhcStage3HcOpts) +ifeq "$(GhcStage1DefaultNewCodegen)" "YES" +compiler_stage1_HC_OPTS += -DGHC_DEFAULT_NEW_CODEGEN +endif + +ifeq "$(GhcStage2DefaultNewCodegen)" "YES" +compiler_stage2_HC_OPTS += -DGHC_DEFAULT_NEW_CODEGEN +endif + +ifeq "$(GhcStage3DefaultNewCodegen)" "YES" +compiler_stage3_HC_OPTS += -DGHC_DEFAULT_NEW_CODEGEN +endif + ifneq "$(BINDIST)" "YES" compiler_stage2_TAGS_HC_OPTS = -package ghc