FIX unregisterised build
[ghc-hetmet.git] / mk / config.mk.in
index 6f16dd5..b83fb92 100644 (file)
@@ -385,8 +385,11 @@ endif
 #   thr_debug_p : debugging threaded profiled
 #   t          : ticky-ticky profiling
 #   debug_t    : debugging ticky-ticky profiling
+#   l           : event logging
+#   thr_l       : threaded and event logging
+#   thr_debug_l        : threaded and debugging and event logging
 #
-GhcRTSWays=
+GhcRTSWays=l
 
 # Usually want the debug version
 ifeq "$(BootingFromHc)" "NO"
@@ -400,7 +403,8 @@ endif
 # Want the threaded versions unless we're unregisterised
 # Defer the check until later by using $(if..), because GhcUnregisterised might
 # be set in build.mk, which hasn't been read yet.
-GhcRTSWays += $(if $(findstring NO, $(GhcUnregisterised)),thr thr_p thr_debug,)
+GhcRTSWays += $(if $(findstring NO, $(GhcUnregisterised)),thr thr_debug thr_l,)
+GhcRTSWays += $(if $(findstring p, $(GhcLibWays)),$(if $(findstring NO, $(GhcUnregisterised)),thr_p,),)
 
 # We can only build GHCi threaded if we have a threaded RTS:
 GhcThreaded = $(if $(findstring thr,$(GhcRTSWays)),YES,NO)
@@ -441,14 +445,19 @@ PackageSourceURL = http://darcs.haskell.org/packages/$(PACKAGE)/%{FILE}
 #              system needs to do other special magic if you are
 #              doing object-file splitting
 
+ArchSupportsSplitObjs=$(strip $(if $(filter $(TargetArch_CPP),i386 x86_64 powerpc sparc),YES,NO))
+
 # lazy test, so that $(GhcUnregisterised) can be set in build.mk
-SplitObjs=$(strip $(if $(filter $(TargetArch_CPP),i386 x86_64 powerpc sparc),\
-                   $(if $(filter YES,$(BootingFromHC)),\
-                     NO,\
-                     $(if $(filter NO,$(GhcUnregisterised)),\
-                       YES,\
-                       NO)),\
-                   NO))
+SupportsSplitObjs=$(strip $(if $(filter YES,$(ArchSupportsSplitObjs)),\
+                   $(if $(filter NO,$(BootingFromHc)),\
+                     $(if $(filter NO,$(GhcUnregisterised)),\
+                       YES,\
+                       NO),\
+                      NO),\
+                    NO))
+
+# By default, enable SplitObjs for the libraries if this build supports it
+SplitObjs=$(SupportsSplitObjs)
 
 # Math library
 LIBM=@LIBM@
@@ -1243,6 +1252,10 @@ WAY_p_HC_OPTS= -prof
 WAY_t_NAME=ticky-ticky profiling
 WAY_t_HC_OPTS= -ticky
 
+# Way 'l':
+WAY_l_NAME=event logging
+WAY_l_HC_OPTS= -eventlog
+
 # Way `mp': 
 WAY_mp_NAME=parallel
 WAY_mp_HC_OPTS=-parallel
@@ -1263,6 +1276,10 @@ WAY_thr_HC_OPTS=-optc-DTHREADED_RTS
 WAY_thr_p_NAME=threaded profiled
 WAY_thr_p_HC_OPTS=-optc-DTHREADED_RTS -prof
 
+# Way 'thr_l':
+WAY_thr_l_NAME=threaded event logging
+WAY_thr_l_HC_OPTS=-optc-DTHREADED_RTS -eventlog
+
 # Way 'debug':
 WAY_debug_NAME=debug
 WAY_debug_HC_OPTS=-optc-DDEBUG
@@ -1283,6 +1300,10 @@ WAY_thr_debug_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG
 WAY_thr_debug_p_NAME=threaded debug profiling
 WAY_thr_debug_p_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -prof
 
+# Way 'thr_debug_l':
+WAY_thr_debug_l_NAME=threaded debug event logging
+WAY_thr_debug_l_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -eventlog
+
 # Way 'dyn': build dynamic shared libraries
 WAY_dyn_NAME=dyn
 WAY_dyn_HC_OPTS=-fPIC -dynamic