X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2FMakefile;h=216e5f8a30376d0513bd9c480c40bbfd59f67320;hp=c7d4169372f9d58e233bd8df7e6dc01f4da0d5c5;hb=e4417dcd4679da9c6b18c02ff667199c572bed89;hpb=980b5c2e1259c6059639cb7defe672a0b77d3b0b diff --git a/compiler/Makefile b/compiler/Makefile index c7d4169..216e5f8 100644 --- a/compiler/Makefile +++ b/compiler/Makefile @@ -308,7 +308,7 @@ else @echo "cRelocatableBuild = False" >> $(CONFIG_HS) endif @echo "cLibFFI :: Bool" >> $(CONFIG_HS) -ifeq "$(UseLibFFI)" "YES" +ifeq "$(UseLibFFIForAdjustors)" "YES" @echo "cLibFFI = True" >> $(CONFIG_HS) else @echo "cLibFFI = False" >> $(CONFIG_HS) @@ -433,7 +433,7 @@ SRC_HC_OPTS += -Istage$(stage) ALL_DIRS = \ utils basicTypes types hsSyn prelude rename typecheck deSugar coreSyn \ vectorise specialise simplCore stranal stgSyn simplStg codeGen main \ - profiling parser cprAnalysis ndpFlatten iface cmm + profiling parser cprAnalysis iface cmm # Make sure we include Config.hs even if it doesn't exist yet... ALL_SRCS += $(CONFIG_HS) @@ -457,11 +457,6 @@ ALL_DIRS += javaGen SRC_HC_OPTS += -DJAVA endif -ifeq ($(UseLibFFI),YES) -SRC_HC_OPTS += -DUSE_LIBFFI -SRC_HSC2HS_OPTS += -DUSE_LIBFFI -endif - ifeq "$(BootingFromHc)" "YES" # HC files are always from a self-booted compiler bootstrapped = YES @@ -517,6 +512,9 @@ ifeq "$(GhcDebugged)" "YES" SRC_LD_OPTS += -debug endif +SRC_HC_OPTS += -I$(FPTOOLS_TOP)/libffi/build/include +SRC_HSC2HS_OPTS += -I$(FPTOOLS_TOP)/libffi/build/include + ALL_DIRS += ghci # If we are going to use dynamic libraries instead of .o files for ghci, @@ -529,23 +527,23 @@ else EXCLUDED_SRCS += ghci/keepCAFsForGHCi.c endif -# Enable readline if either: -# - we're building stage 1 and $(GhcHasReadline)="YES" -# - we're building stage 2/3, and we have built the readline package +# Enable editline if either: +# - we're building stage 1 and $(GhcHasEditline)="YES" +# - we're building stage 2/3, and we have built the editline package # -# But we don't enable readline on Windows, because readline is fairly -# broken there. +# But we don't enable editline on Windows, as Windows terminals have +# editline-like support builtin. # ifneq "$(TARGETPLATFORM)" "i386-unknown-mingw32" ifeq "$(stage)" "1" -ifeq "$(GhcHasReadline)" "YES" -SRC_HC_OPTS += -package readline -DUSE_READLINE -PKG_DEPENDS += readline +ifeq "$(GhcHasEditline)" "YES" +SRC_HC_OPTS += -package editline -DUSE_EDITLINE +PKG_DEPENDS += editline endif else -ifeq "$(wildcard $(FPTOOLS_TOP_ABS)/libraries/readline/unbuildable)" "" -SRC_HC_OPTS += -package readline -DUSE_READLINE -PKG_DEPENDS += readline +ifeq "$(wildcard $(FPTOOLS_TOP_ABS)/libraries/editline/unbuildable)" "" +SRC_HC_OPTS += -package editline -DUSE_EDITLINE +PKG_DEPENDS += editline endif endif # stage=1 endif # not windows @@ -771,6 +769,13 @@ endif SRC_LD_OPTS += -no-link-chk +ifeq "$(GhcUnregisterised)" "NO" +ifeq "$(HOSTPLATFORM)" "ia64-unknown-linux" +# needed for generating proper relocation in large binaries: trac #856 +SRC_LD_OPTS += -optl-Wl,--relax +endif +endif + # ----------------------------------------------------------------------------- # create ghc-inplace, a convenient way to run ghc from the build tree... # See comments in $(FPTOOLS_TOP)/utils/ghc-pkg/Makefile for why we use