X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=c3c421a2ce877354de4724aead9d397dacbfbaaf;hb=08cbd87617fca8930e37cc5f7100f0e05a0c025f;hp=290db85a2207df47c0ca5824c61b266ebdf786a3;hpb=429dc9a048f5533143fb5c9908b09d3155496e9b;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index 290db85..c3c421a 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -178,7 +178,7 @@ endif # Whether to use libffi for adjustors (foreign import "wrapper") or # not. If we have built-in support (rts/Adjustor.c) then we use that, # otherwise we fall back on libffi, which is slightly slower. -ArchHasAdjustorSupport=$(strip $(if $(findstring $(HostArch_CPP),i386 x86_64 powerpc,),YES,NO)) +ArchHasAdjustorSupport = $(if $(findstring $(HostArch_CPP),i386 x86_64),YES,NO) ifeq "$(ArchHasAdjustorSupport)" "YES" UseLibFFIForAdjustors=NO else @@ -291,15 +291,16 @@ PackageSourceURL = http://darcs.haskell.org/packages/$(PACKAGE)/%{FILE} # doing object-file splitting ArchSupportsSplitObjs=$(strip $(if $(filter $(TargetArch_CPP),i386 x86_64 powerpc sparc),YES,NO)) +# Object splitting is disabled on darwin due to #4013 +OsSupportsSplitObjs=$(strip $(if $(filter $(TargetOS_CPP),mingw32 cygwin32 linux solaris2 freebsd dragonfly netbsd openbsd),YES,NO)) # lazy test, so that $(GhcUnregisterised) can be set in build.mk -SupportsSplitObjs=$(strip $(if $(filter YES,$(ArchSupportsSplitObjs)),\ - $(if $(filter NO,$(BootingFromHc)),\ - $(if $(filter NO,$(GhcUnregisterised)),\ - YES,\ - NO),\ - NO),\ - NO)) +SupportsSplitObjs=$(strip \ + $(if $(and $(filter YES,$(ArchSupportsSplitObjs)),\ + $(filter YES,$(OsSupportsSplitObjs)),\ + $(filter NO,$(BootingFromHc)),\ + $(filter NO,$(GhcUnregisterised))),\ + YES,NO)) # By default, enable SplitObjs for the libraries if this build supports it SplitObjs=$(SupportsSplitObjs) @@ -535,7 +536,8 @@ endif endif # C compiler and linker flags from configure (e.g. -m to select -# correct C compiler backend). +# correct C compiler backend). The stage number is the stage of GHC +# that is being used to compile with. CONF_CC_OPTS_STAGE0 = @CONF_CC_OPTS_STAGE0@ CONF_CC_OPTS_STAGE1 = @CONF_CC_OPTS_STAGE1@ CONF_CC_OPTS_STAGE2 = @CONF_CC_OPTS_STAGE2@