add TLS access benchmark
[wxWidgets.git] / tests / benchmarks / makefile.gcc
1 # =========================================================================
2 #     This makefile was generated by
3 #     Bakefile 0.2.3 (http://www.bakefile.org)
4 #     Do not modify, all changes will be overwritten!
5 # =========================================================================
6
7 include ../../build/msw/config.gcc
8
9 # -------------------------------------------------------------------------
10 # Do not modify the rest of this file!
11 # -------------------------------------------------------------------------
12
13 ### Variables: ###
14
15 CPPDEPS = -MT$@ -MF$@.d -MD
16 WX_RELEASE_NODOT = 29
17 COMPILER_PREFIX = gcc
18 OBJS = \
19         $(COMPILER_PREFIX)_$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
20 LIBDIRNAME = .\..\..\lib\$(COMPILER_PREFIX)_$(LIBTYPE_SUFFIX)$(CFG)
21 SETUPHDIR = \
22         $(LIBDIRNAME)\$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)
23 BENCH_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \
24         $(GCCFLAGS) -DHAVE_W32API_H -D__WXMSW__ $(__WXUNIV_DEFINE_p) \
25         $(__DEBUG_DEFINE_p) $(__EXCEPTIONS_DEFINE_p) $(__RTTI_DEFINE_p) \
26         $(__THREAD_DEFINE_p) $(__UNICODE_DEFINE_p) $(__MSLU_DEFINE_p) \
27         $(__GFXCTX_DEFINE_p) -I$(SETUPHDIR) -I.\..\..\include -W -Wall -I. \
28         $(__DLLFLAG_p) -DwxUSE_GUI=0 $(__RTTIFLAG_5) $(__EXCEPTIONSFLAG_6) \
29         -Wno-ctor-dtor-privacy $(CPPFLAGS) $(CXXFLAGS)
30 BENCH_OBJECTS =  \
31         $(OBJS)\bench_bench.o \
32         $(OBJS)\bench_strings.o \
33         $(OBJS)\bench_tls.o
34
35 ### Conditionally set variables: ###
36
37 ifeq ($(GCC_VERSION),2.95)
38 GCCFLAGS = -fvtable-thunks
39 endif
40 ifeq ($(USE_GUI),0)
41 PORTNAME = base
42 endif
43 ifeq ($(USE_GUI),1)
44 PORTNAME = msw
45 endif
46 ifeq ($(BUILD),debug)
47 ifeq ($(DEBUG_FLAG),default)
48 WXDEBUGFLAG = d
49 endif
50 endif
51 ifeq ($(DEBUG_FLAG),1)
52 WXDEBUGFLAG = d
53 endif
54 ifeq ($(UNICODE),1)
55 WXUNICODEFLAG = u
56 endif
57 ifeq ($(WXUNIV),1)
58 WXUNIVNAME = univ
59 endif
60 ifeq ($(SHARED),1)
61 WXDLLFLAG = dll
62 endif
63 ifeq ($(SHARED),0)
64 LIBTYPE_SUFFIX = lib
65 endif
66 ifeq ($(SHARED),1)
67 LIBTYPE_SUFFIX = dll
68 endif
69 ifeq ($(MONOLITHIC),0)
70 EXTRALIBS_FOR_BASE = 
71 endif
72 ifeq ($(MONOLITHIC),1)
73 EXTRALIBS_FOR_BASE =  
74 endif
75 ifeq ($(BUILD),debug)
76 __OPTIMIZEFLAG_2 = -O0
77 endif
78 ifeq ($(BUILD),release)
79 __OPTIMIZEFLAG_2 = -O2
80 endif
81 ifeq ($(USE_RTTI),0)
82 __RTTIFLAG_5 = -fno-rtti
83 endif
84 ifeq ($(USE_RTTI),1)
85 __RTTIFLAG_5 = 
86 endif
87 ifeq ($(USE_EXCEPTIONS),0)
88 __EXCEPTIONSFLAG_6 = -fno-exceptions
89 endif
90 ifeq ($(USE_EXCEPTIONS),1)
91 __EXCEPTIONSFLAG_6 = 
92 endif
93 ifeq ($(WXUNIV),1)
94 __WXUNIV_DEFINE_p = -D__WXUNIVERSAL__
95 endif
96 ifeq ($(BUILD),debug)
97 ifeq ($(DEBUG_FLAG),default)
98 __DEBUG_DEFINE_p = -D__WXDEBUG__
99 endif
100 endif
101 ifeq ($(DEBUG_FLAG),1)
102 __DEBUG_DEFINE_p = -D__WXDEBUG__
103 endif
104 ifeq ($(USE_EXCEPTIONS),0)
105 __EXCEPTIONS_DEFINE_p = -DwxNO_EXCEPTIONS
106 endif
107 ifeq ($(USE_RTTI),0)
108 __RTTI_DEFINE_p = -DwxNO_RTTI
109 endif
110 ifeq ($(USE_THREADS),0)
111 __THREAD_DEFINE_p = -DwxNO_THREADS
112 endif
113 ifeq ($(UNICODE),0)
114 __UNICODE_DEFINE_p = -DwxUSE_UNICODE=0
115 endif
116 ifeq ($(UNICODE),1)
117 __UNICODE_DEFINE_p = -D_UNICODE
118 endif
119 ifeq ($(MSLU),1)
120 __MSLU_DEFINE_p = -DwxUSE_UNICODE_MSLU=1
121 endif
122 ifeq ($(USE_GDIPLUS),1)
123 __GFXCTX_DEFINE_p = -DwxUSE_GRAPHICS_CONTEXT=1
124 endif
125 ifeq ($(SHARED),1)
126 __DLLFLAG_p = -DWXUSINGDLL
127 endif
128 ifeq ($(MONOLITHIC),0)
129 __WXLIB_BASE_p = \
130         -lwxbase$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
131 endif
132 ifeq ($(MONOLITHIC),1)
133 __WXLIB_MONO_p = \
134         -lwx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)
135 endif
136 ifeq ($(MSLU),1)
137 __UNICOWS_LIB_p = -lunicows
138 endif
139 ifeq ($(USE_GDIPLUS),1)
140 __GDIPLUS_LIB_p = -lgdiplus
141 endif
142 ifeq ($(BUILD),debug)
143 ifeq ($(DEBUG_INFO),default)
144 __DEBUGINFO = -g
145 endif
146 endif
147 ifeq ($(BUILD),release)
148 ifeq ($(DEBUG_INFO),default)
149 __DEBUGINFO = 
150 endif
151 endif
152 ifeq ($(DEBUG_INFO),0)
153 __DEBUGINFO = 
154 endif
155 ifeq ($(DEBUG_INFO),1)
156 __DEBUGINFO = -g
157 endif
158 ifeq ($(USE_THREADS),0)
159 __THREADSFLAG = 
160 endif
161 ifeq ($(USE_THREADS),1)
162 __THREADSFLAG = -mthreads
163 endif
164
165
166 all: $(OBJS)
167 $(OBJS):
168         -if not exist $(OBJS) mkdir $(OBJS)
169
170 ### Targets: ###
171
172 all: $(OBJS)\bench.exe
173
174 clean: 
175         -if exist $(OBJS)\*.o del $(OBJS)\*.o
176         -if exist $(OBJS)\*.d del $(OBJS)\*.d
177         -if exist $(OBJS)\bench.exe del $(OBJS)\bench.exe
178
179 $(OBJS)\bench.exe: $(BENCH_OBJECTS)
180         $(CXX) -o $@ $(BENCH_OBJECTS) $(LDFLAGS) $(__DEBUGINFO) $(__THREADSFLAG) -L$(LIBDIRNAME)   $(__WXLIB_BASE_p)  $(__WXLIB_MONO_p) -lwxzlib$(WXDEBUGFLAG) -lwxregex$(WXUNICODEFLAG)$(WXDEBUGFLAG) -lwxexpat$(WXDEBUGFLAG) $(EXTRALIBS_FOR_BASE) $(__UNICOWS_LIB_p) $(__GDIPLUS_LIB_p) -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32
181
182 $(OBJS)\bench_bench.o: ./bench.cpp
183         $(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
184
185 $(OBJS)\bench_strings.o: ./strings.cpp
186         $(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
187
188 $(OBJS)\bench_tls.o: ./tls.cpp
189         $(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
190
191 .PHONY: all clean
192
193
194 SHELL := $(COMSPEC)
195
196 # Dependencies tracking:
197 -include $(OBJS)/*.d