diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-09-21 13:00:24 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-09-21 13:00:24 +0000 |
commit | cd5099a029e06fb974c37cf453a87e5cf5e0fc29 (patch) | |
tree | b88ae0e76f06edca17637e91fb990ad7b6cfd11f /mk/ways.mk | |
parent | 53c7c4675406f3c49533009b1666d6c4532cc8c4 (diff) | |
download | haskell-cd5099a029e06fb974c37cf453a87e5cf5e0fc29.tar.gz |
move way-related stuff into a separate file
This fixes at least one problem: libHSffi-ghc<version>.so wasn't being
cleaned, because $(dyn_libsuf) wasn't defined while cleaning.
Diffstat (limited to 'mk/ways.mk')
-rw-r--r-- | mk/ways.mk | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/mk/ways.mk b/mk/ways.mk new file mode 100644 index 0000000000..deba1d5df8 --- /dev/null +++ b/mk/ways.mk @@ -0,0 +1,109 @@ +# +# Options for compiling in different `ways'. +# +# To configure up your own way, have a look at some of the standard ways +# such as profiling, and create your own set of WAY_*_OPTS defs below. +# After having done that, add your way string to WAYS, and after having +# run the configure script, the different projects will add the new way +# to the list of ways they support. +# + +# +# Definitions of the different ways: +# +# * their name: +# - tag, e.g., p +# - description, e.g., profiling +# * what they mean to the driver: +# - WAY_p_HC_OPTS gives the list of command-line options +# to the driver. +# + +# +# The ways currently defined. +# +ALL_WAYS=v p t l s mp mg debug dyn thr thr_l debug_dyn thr_dyn thr_debug_dyn thr_p thr_debug debug_p thr_debug_p + +# +# The following ways currently have treated specially, p t mg, +# as the driver script treats these guys specially and needs to carefully be told +# about the options for these. Hence, we hide the required command line options +# for these in the driver, as this is the only place they are needed. +# +# If you want to add to these default options, fill in the variables below: + +# Way 'v': +WAY_v_NAME=vanilla +WAY_v_HC_OPTS= + +# Way 'p': +WAY_p_NAME=profiling +WAY_p_HC_OPTS= -prof + +# Way 't': +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 + +# Way `mg': +WAY_mg_NAME=GranSim +WAY_mg_HC_OPTS=-gransim + +# +# These ways apply to the RTS only: +# + +# Way 'thr': +WAY_thr_NAME=threaded +WAY_thr_HC_OPTS=-optc-DTHREADED_RTS + +# Way 'thr_p': +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 + +# Way 'debug_p': +WAY_debug_p_NAME=debug profiled +WAY_debug_p_HC_OPTS=-optc-DDEBUG -prof + +# Way 'debug_t': +WAY_debug_t_NAME=debug ticky-ticky profiling +WAY_debug_t_HC_OPTS= -ticky -optc-DDEBUG + +# Way 'thr_debug': +WAY_thr_debug_NAME=threaded +WAY_thr_debug_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG + +# Way 'thr_debug_p': +WAY_thr_debug_p_NAME=threaded debug profiling +WAY_thr_debug_p_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -prof + +# Way 'dyn': build dynamic shared libraries +WAY_dyn_NAME=dyn +WAY_dyn_HC_OPTS=-fPIC -dynamic + +# Way 'thr_dyn': +WAY_thr_dyn_NAME=thr_dyn +WAY_thr_dyn_HC_OPTS=-fPIC -dynamic -optc-DTHREADED_RTS + +# Way 'thr_debug_dyn': +WAY_thr_debug_dyn_NAME=thr_dyn +WAY_thr_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DTHREADED_RTS -optc-DDEBUG + +# Way 'debug_dyn': +WAY_debug_dyn_NAME=thr_dyn +WAY_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DDEBUG |