Remove long rotted configure support for Windows DLLs
[ghc-hetmet.git] / mk / ways.mk
1 #
2 # Options for compiling in different `ways'. 
3
4 # To configure up your own way, have a look at some of the standard ways
5 # such as profiling, and create your own set of WAY_*_OPTS defs below.
6 # After having done that, add your way string to WAYS, and after having
7 # run the configure script, the different projects will add the new way
8 # to the list of ways they support.
9 #
10
11 #
12 # Definitions of the different ways:
13 #   
14 #   * their name:
15 #          - tag, e.g., p
16 #          - description, e.g., profiling
17 #   * what they mean to the driver:
18 #          - WAY_p_HC_OPTS gives the list of command-line options
19 #            to the driver.
20 #
21
22 #
23 # The ways currently defined.
24 #
25 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
26
27 #
28 # The following ways currently have treated specially, p t mg,
29 # as the driver script treats these guys specially and needs to carefully be told
30 # about the options for these. Hence, we hide the required command line options
31 # for these in the driver, as this is the only place they are needed.
32
33 # If you want to add to these default options, fill in the variables below:
34
35 # Way 'v':
36 WAY_v_NAME=vanilla
37 WAY_v_HC_OPTS= 
38
39 # Way 'p':
40 WAY_p_NAME=profiling
41 WAY_p_HC_OPTS= -prof
42
43 # Way 't':
44 WAY_t_NAME=ticky-ticky profiling
45 WAY_t_HC_OPTS= -ticky
46
47 # Way 'l':
48 WAY_l_NAME=event logging
49 WAY_l_HC_OPTS= -eventlog
50
51 # Way `mp': 
52 WAY_mp_NAME=parallel
53 WAY_mp_HC_OPTS=-parallel
54
55 # Way `mg': 
56 WAY_mg_NAME=GranSim
57 WAY_mg_HC_OPTS=-gransim
58
59 #
60 # These ways apply to the RTS only:
61 #
62
63 # Way 'thr':
64 WAY_thr_NAME=threaded
65 WAY_thr_HC_OPTS=-optc-DTHREADED_RTS
66
67 # Way 'thr_p':
68 WAY_thr_p_NAME=threaded profiled
69 WAY_thr_p_HC_OPTS=-optc-DTHREADED_RTS -prof
70
71 # Way 'thr_l':
72 WAY_thr_l_NAME=threaded event logging
73 WAY_thr_l_HC_OPTS=-optc-DTHREADED_RTS -eventlog
74
75 # Way 'debug':
76 WAY_debug_NAME=debug
77 WAY_debug_HC_OPTS=-optc-DDEBUG
78
79 # Way 'debug_p':
80 WAY_debug_p_NAME=debug profiled
81 WAY_debug_p_HC_OPTS=-optc-DDEBUG -prof
82
83 # Way 'debug_t':
84 WAY_debug_t_NAME=debug ticky-ticky profiling
85 WAY_debug_t_HC_OPTS= -ticky -optc-DDEBUG
86
87 # Way 'thr_debug':
88 WAY_thr_debug_NAME=threaded
89 WAY_thr_debug_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG
90
91 # Way 'thr_debug_p':
92 WAY_thr_debug_p_NAME=threaded debug profiling
93 WAY_thr_debug_p_HC_OPTS=-optc-DTHREADED_RTS -optc-DDEBUG -prof
94
95 # Way 'dyn': build dynamic shared libraries
96 WAY_dyn_NAME=dyn
97 WAY_dyn_HC_OPTS=-fPIC -dynamic
98
99 # Way 'thr_dyn':
100 WAY_thr_dyn_NAME=thr_dyn
101 WAY_thr_dyn_HC_OPTS=-fPIC -dynamic -optc-DTHREADED_RTS
102
103 # Way 'thr_debug_dyn':
104 WAY_thr_debug_dyn_NAME=thr_dyn
105 WAY_thr_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DTHREADED_RTS -optc-DDEBUG
106
107 # Way 'debug_dyn':
108 WAY_debug_dyn_NAME=thr_dyn
109 WAY_debug_dyn_HC_OPTS=-fPIC -dynamic -optc-DDEBUG