X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=b478997b62be9ff9d82ebc2b8f13a38abbb60159;hb=648979d03f9b27f7f813d3a08bf30bf0f17c54ee;hp=e271cb198488d3106882976d0bed2a9c7cb3d32b;hpb=5775d5142da227d65fb86994d363eb16841ee642;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index e271cb1..b478997 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -294,13 +294,14 @@ 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)) +OsSupportsSplitObjs=$(strip $(if $(filter $(TargetOS_CPP),mingw32 cygwin32 linux darwin solaris2 freebsd dragonfly netbsd openbsd),YES,NO)) +SplitObjsBroken = @SplitObjsBroken@ # lazy test, so that $(GhcUnregisterised) can be set in build.mk SupportsSplitObjs=$(strip \ $(if $(and $(filter YES,$(ArchSupportsSplitObjs)),\ $(filter YES,$(OsSupportsSplitObjs)),\ + $(filter NO,$(SplitObjsBroken)),\ $(filter NO,$(BootingFromHc)),\ $(filter NO,$(GhcUnregisterised))),\ YES,NO)) @@ -545,9 +546,12 @@ endif CONF_CC_OPTS_STAGE0 = @CONF_CC_OPTS_STAGE0@ CONF_CC_OPTS_STAGE1 = @CONF_CC_OPTS_STAGE1@ CONF_CC_OPTS_STAGE2 = @CONF_CC_OPTS_STAGE2@ -CONF_LD_OPTS_STAGE0 = @CONF_LD_OPTS_STAGE0@ -CONF_LD_OPTS_STAGE1 = @CONF_LD_OPTS_STAGE1@ -CONF_LD_OPTS_STAGE2 = @CONF_LD_OPTS_STAGE2@ +CONF_GCC_LINKER_OPTS_STAGE0 = @CONF_GCC_LINKER_OPTS_STAGE0@ +CONF_GCC_LINKER_OPTS_STAGE1 = @CONF_GCC_LINKER_OPTS_STAGE1@ +CONF_GCC_LINKER_OPTS_STAGE2 = @CONF_GCC_LINKER_OPTS_STAGE2@ +CONF_LD_LINKER_OPTS_STAGE0 = @CONF_LD_LINKER_OPTS_STAGE0@ +CONF_LD_LINKER_OPTS_STAGE1 = @CONF_LD_LINKER_OPTS_STAGE1@ +CONF_LD_LINKER_OPTS_STAGE2 = @CONF_LD_LINKER_OPTS_STAGE2@ CONF_CPP_OPTS_STAGE0 = @CONF_CPP_OPTS_STAGE0@ CONF_CPP_OPTS_STAGE1 = @CONF_CPP_OPTS_STAGE1@ CONF_CPP_OPTS_STAGE2 = @CONF_CPP_OPTS_STAGE2@ @@ -556,6 +560,12 @@ ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux" CONF_CC_OPTS += -G0 endif +# The .hsc files aren't currently safe for cross-compilation on Windows: +# libraries\haskeline\.\System\Console\Haskeline\Backend\Win32.hsc:160 +# directive "let" is not safe for cross-compilation +ifneq "$(Windows)" "YES" +SRC_HSC2HS_OPTS += --cross-safe +endif SRC_HSC2HS_OPTS += $(addprefix --cflag=,$(filter-out -O,$(SRC_CC_OPTS) $(CONF_CC_OPTS_STAGE0))) SRC_HSC2HS_OPTS += $(foreach d,$(GMP_INCLUDE_DIRS),-I$(d)) @@ -621,9 +631,7 @@ TR = tr SHELL = /bin/sh HaveDtrace = @HaveDtrace@ -# There are problems with dtrace on 64bit 10.5. For now at least, we -# just turn dtrace off unless you override USE_DTRACE -USE_DTRACE = NO +USE_DTRACE = $(HaveDtrace) DTRACE = @DtraceCmd@ LD = @LdCmd@