X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fconfig.mk.in;h=5a66706e74cd856e8b43d1fb7836a028b07cdad0;hb=61fc6ff4b527d8dd9294ea1a65f5ef7e71d5dbf6;hp=1cdc1b9cec8e7e1d5665919982daef5d6501ac57;hpb=f97dcf9fc2ea2a419087bca53f2fea811c5181a9;p=ghc-hetmet.git diff --git a/mk/config.mk.in b/mk/config.mk.in index 1cdc1b9..5a66706 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -187,7 +187,7 @@ IncludeExampleDirsInBuild=NO # # Which ways should DocBook XML documents be built? -# options are: dvi ps pdf html +# options are: dvi ps pdf html chm HxS # XMLDocWays= @@ -255,7 +255,7 @@ GhcUnregisterised=NO # Target platforms supported: # i386, powerpc # sparc has bitrotted -ifneq "$(findstring $(HostArch_CPP), i386 powerpc)" "" +ifneq "$(findstring $(HostArch_CPP), i386 x86_64 powerpc)" "" GhcWithNativeCodeGen=YES else GhcWithNativeCodeGen=NO @@ -265,12 +265,14 @@ endif GhcWithJavaGen=NO HaveLibDL = @HaveLibDL@ -HaveRtldNext = @HaveRtldNext@ -HaveRtldLocal = @HaveRtldLocal@ -# Include GHCi in the compiler. Default to NO for the time being. +# Whether to include GHCi in the compiler. Depends on whether the RTS linker +# has support for this OS/ARCH combination. -ifneq "$(findstring $(HostOS_CPP), mingw32 cygwin32 linux solaris2 freebsd netbsd openbsd darwin)" "" +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 x86_64 powerpc powerpc64 sparc sparc64))) + +ifeq "$(OsSupportsGHCi)$(ArchSupportsGHCi)" "YESYES" GhcWithInterpreter=YES else GhcWithInterpreter=NO @@ -309,7 +311,7 @@ endif ifeq "$(BootingFromHc)" "YES" GhcRTSWays= else -GhcRTSWays=thr thr_p debug +GhcRTSWays=thr thr_p debug thr_debug endif # Option flags to pass to GHC when it's compiling modules in @@ -344,11 +346,14 @@ StripLibraries=NO # Don't use -split-objs in in GhcLibHcOpts, because the build # system needs to do other special magic if you are # doing object-file splitting +ifneq "$(findstring $(HostArch_CPP), i386 x86_64 powerpc sparc)" "" +SplitObjs=YES +else +SplitObjs=NO +endif # Don't split object files for libs if we're building DLLs, or booting from # .hc files. -SplitObjs=YES - ifeq "$(DLLized)" "YES" SplitObjs=NO endif @@ -358,7 +363,7 @@ endif ifeq "$(GhcUnregisterised)" "YES" SplitObjs=NO endif -ifeq "$(TARGETPLATFORM)" "ia64-unknown-linux" +ifeq "$(TargetArch_CPP)" "ia64" SplitObjs=NO endif @@ -366,8 +371,8 @@ endif # Options for GHC's RTS # For an optimised RTS (you probably don't want to change these; we build -# a debugging RTS by default now. Use -package rts_debug to get it). -GhcRtsHcOpts=-O2 +# a debugging RTS by default now. Use -debug to get it). +GhcRtsHcOpts=-optc-O2 GhcRtsCcOpts=-fomit-frame-pointer # Include the front panel code? Needs GTK+. @@ -467,6 +472,9 @@ NoFibWays = $(GhcLibWays) # Haskell compiler options for nofib NoFibHcOpts = -O +# Number of times to run each program +NoFibRuns = 5 + # ============================================================================== # # END OF PROJECT-SPECIFIC STUFF @@ -1033,7 +1041,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 @@ -1067,6 +1075,10 @@ WAY_debug_p_HC_OPTS=-optc-DDEBUG -prof WAY_debug_u_NAME=debug unregisterised WAY_debug_u_HC_OPTS=-optc-DDEBUG -unreg +# Way 'debug_s': +WAY_debug_s_NAME=debug SMP +WAY_debug_s_HC_OPTS=-optc-DDEBUG -optc-DTHREADED_RTS -smp + # Way 'thr_debug': WAY_thr_debug_NAME=threaded WAY_thr_debug_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG