X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=85625e36de70bd2932d13beb0559f0adafaf7e45;hb=d19f868a2fbfb583e57d9c47b97c0cdb3a95ae57;hp=e3e0d4e57e68ec04531d25633c37ec007d299dcc;hpb=90a2c9cb2e8fe1b4e156a4c78179ea9eb1adaaf2;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index e3e0d4e..85625e3 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -32,6 +32,11 @@ # a section corresponding to each of the main .mk files # included by boilerplate.mk (see boilerplate.mk for a list). +ifneq "$(findstring 3.7, $(MAKE_VERSION))" "" +ifeq "$(findstring 3.79.1, $(MAKE_VERSION))" "" +$(error GNU make version 3.79.1 or later is required.) +endif +endif ################################################################################ # @@ -255,7 +260,11 @@ GhcUnregisterised=NO # Target platforms supported: # i386, powerpc # sparc has bitrotted -ifneq "$(findstring $(HostArch_CPP), i386 x86_64 powerpc)" "" +# AIX is not supported +ArchSupportsNCG=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 powerpc))) +OsSupportsNCG=$(strip $(patsubst $(HostOS_CPP), YES, $(patsubst aix,,$(HostOS_CPP)))) + +ifeq "$(OsSupportsNCG)$(ArchSupportsNCG)" "YESYES" GhcWithNativeCodeGen=YES else GhcWithNativeCodeGen=NO @@ -265,14 +274,12 @@ endif GhcWithJavaGen=NO HaveLibDL = @HaveLibDL@ -HaveRtldNext = @HaveRtldNext@ -HaveRtldLocal = @HaveRtldLocal@ # Whether to include GHCi in the compiler. Depends on whether the RTS linker # has support for this OS/ARCH combination. OsSupportsGHCi=$(strip $(patsubst $(HostOS_CPP), YES, $(findstring $(HostOS_CPP), mingw32 cygwin32 linux solaris2 freebsd netbsd openbsd darwin))) -ArchSupportsGHCi=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 powerpc powerpc64 sparc sparc64))) +ArchSupportsGHCi=$(strip $(patsubst $(HostArch_CPP), YES, $(findstring $(HostArch_CPP), i386 x86_64 powerpc powerpc64 sparc sparc64))) ifeq "$(OsSupportsGHCi)$(ArchSupportsGHCi)" "YESYES" GhcWithInterpreter=YES @@ -374,7 +381,7 @@ endif # For an optimised RTS (you probably don't want to change these; we build # a debugging RTS by default now. Use -debug to get it). -GhcRtsHcOpts=-O2 +GhcRtsHcOpts=-optc-O2 GhcRtsCcOpts=-fomit-frame-pointer # Include the front panel code? Needs GTK+. @@ -1043,7 +1050,7 @@ WAY_u_HC_OPTS=-unreg # Way `s': WAY_s_NAME=threads (for SMP) -WAY_s_HC_OPTS=-smp +WAY_s_HC_OPTS=-smp -optc-DTHREADED_RTS # Way `mp': WAY_mp_NAME=parallel @@ -1079,7 +1086,7 @@ WAY_debug_u_HC_OPTS=-optc-DDEBUG -unreg # Way 'debug_s': WAY_debug_s_NAME=debug SMP -WAY_debug_s_HC_OPTS=-optc-DDEBUG -smp +WAY_debug_s_HC_OPTS=-optc-DDEBUG -optc-DTHREADED_RTS -smp # Way 'thr_debug': WAY_thr_debug_NAME=threaded