wxMessageBox off the main thread lost result code.
[wxWidgets.git] / build / bakefiles / multilib.bkl
1 <?xml version="1.0" ?>
2
3 <makefile>
4
5     <define-rule name="wxshortcut" extends="phony">
6         <template>
7             <set var="name">$(id.replace('wx',''))</set>
8             <set var="namedll">
9                 <if cond="SHARED=='1'">$(name)dll</if>
10             </set>
11             <set var="namelib">
12                 <if cond="SHARED=='0'">$(name)lib</if>
13             </set>
14             <depends>$(namedll)</depends>
15             <depends>$(namelib)</depends>
16         </template>
17     </define-rule>
18
19     <!-- ================================================================= -->
20     <!--                            wxBase library                         -->
21     <!-- ================================================================= -->
22
23     <dll id="basedll" template="wx_base_dll"
24          cond="SHARED=='1' and MONOLITHIC=='0'">
25         <define>WXMAKINGDLL_BASE</define>
26         <define>wxUSE_BASE=1</define>
27         <sources>$(BASE_SRC) $(BASE_AND_GUI_SRC)</sources>
28         <msvc-headers>$(BASE_CMN_HDR) $(BASE_PLATFORM_HDR)</msvc-headers>
29     </dll>
30
31     <lib id="baselib" template="wx_base_lib"
32          cond="SHARED=='0' and MONOLITHIC=='0'">
33         <define>wxUSE_BASE=1</define>
34         <sources>$(BASE_SRC) $(BASE_AND_GUI_SRC)</sources>
35         <msvc-headers>$(BASE_CMN_HDR) $(BASE_PLATFORM_HDR)</msvc-headers>
36     </lib>
37
38     <wxshortcut id="wxbase" cond="MONOLITHIC=='0'"/>
39
40     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">base=baselib+basedll</set>
41
42
43     <!-- ================================================================= -->
44     <!--                             wxNet library                         -->
45     <!-- ================================================================= -->
46
47     <dll id="netdll" template="wx_base_dll"
48          cond="SHARED=='1' and MONOLITHIC=='0'">
49         <define>WXUSINGDLL</define>
50         <define>WXMAKINGDLL_NET</define>
51         <sources>$(NET_SRC)</sources>
52         <msvc-headers>$(NET_CMN_HDR) $(NET_PLATFORM_HDR)</msvc-headers>
53         <library>basedll</library>
54     </dll>
55
56     <lib id="netlib" template="wx_base_lib"
57          cond="SHARED=='0' and MONOLITHIC=='0'">
58         <sources>$(NET_SRC)</sources>
59         <msvc-headers>$(NET_CMN_HDR) $(NET_PLATFORM_HDR)</msvc-headers>
60     </lib>
61
62     <wxshortcut id="wxnet" cond="MONOLITHIC=='0'"/>
63
64     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">net=netlib+netdll</set>
65
66
67     <!-- ================================================================= -->
68     <!--                           Main GUI library                        -->
69     <!-- ================================================================= -->
70
71     <dll id="coredll" template="wx_dll"
72          cond="SHARED=='1' and USE_GUI=='1' and MONOLITHIC=='0'">
73         <define>WXUSINGDLL</define>
74         <define>WXMAKINGDLL_CORE</define>
75         <define>wxUSE_BASE=0</define>
76         <sources>$(BASE_AND_GUI_SRC) $(CORE_SRC)</sources>
77         <msvc-headers>$(ALL_GUI_HEADERS)</msvc-headers>
78         <library>basedll</library>
79     </dll>
80
81     <lib id="corelib" template="wx_lib"
82          cond="SHARED=='0' and USE_GUI=='1' and MONOLITHIC=='0'">
83         <define>wxUSE_BASE=0</define>
84         <sources>$(BASE_AND_GUI_SRC) $(CORE_SRC)</sources>
85         <msvc-headers>$(ALL_GUI_HEADERS)</msvc-headers>
86     </lib>
87
88     <wxshortcut id="wxcore" cond="MONOLITHIC=='0' and USE_GUI=='1'"/>
89
90     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">core=corelib+coredll</set>
91
92
93     <!-- ================================================================= -->
94     <!--                     "Advanced" controls library                   -->
95     <!-- ================================================================= -->
96
97     <dll id="advdll" template="wx_dll"
98          cond="SHARED=='1' and USE_GUI=='1' and MONOLITHIC=='0'">
99         <define>WXUSINGDLL</define>
100         <define>WXMAKINGDLL_ADV</define>
101         <sources>$(ADVANCED_SRC) $(PLUGIN_ADV_SRC)</sources>
102         <msvc-headers>$(ADVANCED_HDR)</msvc-headers>
103         <library>coredll</library>
104         <library>basedll</library>
105         <ldlibs>$(PLUGIN_ADV_EXTRALIBS)</ldlibs>
106     </dll>
107
108     <lib id="advlib" template="wx_lib"
109          cond="SHARED=='0' and USE_GUI=='1' and MONOLITHIC=='0'">
110         <sources>$(ADVANCED_SRC) $(PLUGIN_ADV_SRC)</sources>
111         <msvc-headers>$(ADVANCED_HDR)</msvc-headers>
112     </lib>
113
114     <wxshortcut id="wxadv" cond="MONOLITHIC=='0' and USE_GUI=='1'"/>
115
116     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">adv=advlib+advdll</set>
117
118
119     <!-- ================================================================= -->
120     <!--                     wxMedia classes library                       -->
121     <!-- ================================================================= -->
122
123     <dll id="mediadll" template="wx_dll"
124          cond="SHARED=='1' and USE_MEDIA=='1' and USE_GUI=='1' and MONOLITHIC=='0'">
125         <define>WXUSINGDLL</define>
126         <define>WXMAKINGDLL_MEDIA</define>
127         <sources>$(MEDIA_SRC)</sources>
128         <msvc-headers>$(MEDIA_HDR)</msvc-headers>
129         <library>coredll</library>
130         <library>basedll</library>
131         <ldlibs>$(EXTRALIBS_MEDIA)</ldlibs>
132     </dll>
133
134     <lib id="medialib" template="wx_lib"
135          cond="SHARED=='0' and USE_MEDIA=='1' and USE_GUI=='1' and MONOLITHIC=='0'">
136         <sources>$(MEDIA_SRC)</sources>
137         <msvc-headers>$(MEDIA_HDR)</msvc-headers>
138     </lib>
139
140     <wxshortcut id="wxmedia" cond="MONOLITHIC=='0' and USE_GUI=='1' and USE_MEDIA=='1'"/>
141
142     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">media=medialib+mediadll</set>
143
144
145     <!-- ================================================================ -->
146     <!--                               wxHTML                             -->
147     <!-- ================================================================ -->
148
149     <dll id="htmldll" template="wx_dll"
150          cond="SHARED=='1' and USE_GUI=='1' and USE_HTML=='1' and MONOLITHIC=='0'">
151         <define>WXUSINGDLL</define>
152         <define>WXMAKINGDLL_HTML</define>
153         <sources>$(HTML_SRC)</sources>
154         <library>coredll</library>
155         <library>basedll</library>
156         <ldlibs>$(EXTRALIBS_HTML)</ldlibs>
157         <msvc-headers>$(HTML_HDR)</msvc-headers>
158     </dll>
159
160     <!-- use this to conditonally link against htmldll with <library>: -->
161     <set var="htmldll_library_link">
162         <if cond="SHARED=='1' and USE_GUI=='1' and USE_HTML=='1' and MONOLITHIC=='0'">htmldll</if>
163     </set>
164
165     <lib id="htmllib" template="wx_lib"
166          cond="SHARED=='0' and USE_GUI=='1' and USE_HTML=='1' and MONOLITHIC=='0'">
167         <sources>$(HTML_SRC)</sources>
168         <msvc-headers>$(HTML_HDR)</msvc-headers>
169     </lib>
170
171     <wxshortcut id="wxhtml" cond="MONOLITHIC=='0' and USE_HTML=='1'"/>
172
173     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">html=htmllib+htmldll</set>
174
175     <!-- ================================================================ -->
176     <!--                               wxWEBVIEW                          -->
177     <!-- ================================================================ -->
178
179     <dll id="webviewdll" template="wx_dll"
180          cond="SHARED=='1' and USE_GUI=='1' and USE_WEBVIEW=='1' and MONOLITHIC=='0'">
181         <define>WXUSINGDLL</define>
182         <define>WXMAKINGDLL_WEBVIEW</define>
183         <sources>$(WEBVIEW_SRC)</sources>
184         <library>coredll</library>
185         <library>basedll</library>
186         <msvc-headers>$(WEBVIEW_HDR)</msvc-headers>
187     </dll>
188
189     <lib id="webviewlib" template="wx_lib"
190          cond="SHARED=='0' and USE_GUI=='1' and USE_WEBVIEW=='1' and MONOLITHIC=='0'">
191         <sources>$(WEBVIEW_SRC)</sources>
192         <msvc-headers>$(WEBVIEW_HDR)</msvc-headers>
193     </lib>
194
195     <wxshortcut id="wxwebview" cond="MONOLITHIC=='0' and USE_WEBVIEW=='1'"/>
196
197     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">webview=webviewlib+webviewdll</set>
198
199     <!-- ================================================================ -->
200     <!--                             OpenGL                               -->
201     <!-- ================================================================ -->
202
203     <!-- included by wx.bkl from opengl.bkl -->
204
205     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">gl=gllib+gldll</set>
206
207
208     <!-- ================================================================ -->
209     <!--                               QA                                 -->
210     <!-- ================================================================ -->
211
212     <dll id="qadll" template="wx_dll"
213          cond="SHARED=='1' and USE_GUI=='1' and USE_QA=='1' and MONOLITHIC=='0'">
214         <define>WXUSINGDLL</define>
215         <define>WXMAKINGDLL_QA</define>
216         <sources>$(QA_SRC)</sources>
217         <msvc-headers>$(QA_HDR)</msvc-headers>
218         <library>coredll</library>
219         <library>basedll</library>
220         <library>xmldll</library>
221     </dll>
222
223     <lib id="qalib" template="wx_lib"
224          cond="SHARED=='0' and USE_GUI=='1' and USE_QA=='1' and MONOLITHIC=='0'">
225         <sources>$(QA_SRC)</sources>
226         <msvc-headers>$(QA_HDR)</msvc-headers>
227     </lib>
228
229     <wxshortcut id="wxqa" cond="MONOLITHIC=='0' and USE_QA=='1'"/>
230
231     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">qa=qalib+qadll</set>
232
233     <!-- ================================================================ -->
234     <!--                              XML                                 -->
235     <!-- ================================================================ -->
236
237     <dll id="xmldll" template="wx_base_dll"
238          cond="SHARED=='1' and MONOLITHIC=='0'">
239         <define>WXUSINGDLL</define>
240         <define>WXMAKINGDLL_XML</define>
241         <sources>$(XML_SRC)</sources>
242         <msvc-headers>$(XML_HDR)</msvc-headers>
243         <library>basedll</library>
244         <ldlibs>$(EXTRALIBS_XML)</ldlibs>
245     </dll>
246
247     <lib id="xmllib" template="wx_base_lib"
248          cond="SHARED=='0' and MONOLITHIC=='0'">
249         <sources>$(XML_SRC)</sources>
250         <msvc-headers>$(XML_HDR)</msvc-headers>
251     </lib>
252
253     <wxshortcut id="wxxml" cond="MONOLITHIC=='0'"/>
254
255     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">xml=xmllib+xmldll</set>
256
257     <!-- ================================================================ -->
258     <!--                            XRC                                   -->
259     <!-- ================================================================ -->
260
261     <dll id="xrcdll" template="wx_dll"
262          cond="SHARED=='1' and USE_XRC=='1' and MONOLITHIC=='0'">
263         <define>WXUSINGDLL</define>
264         <define>WXMAKINGDLL_XRC</define>
265         <sources>$(XRC_SRC)</sources>
266         <library>$(htmldll_library_link)</library>
267         <library>advdll</library>
268         <library>coredll</library>
269         <library>xmldll</library>
270         <library>basedll</library>
271         <msvc-headers>$(XRC_HDR)</msvc-headers>
272     </dll>
273
274     <lib id="xrclib" template="wx_lib"
275          cond="SHARED=='0' and USE_XRC=='1' and MONOLITHIC=='0'">
276         <sources>$(XRC_SRC)</sources>
277         <msvc-headers>$(XRC_HDR)</msvc-headers>
278     </lib>
279
280     <wxshortcut id="wxxrc" cond="MONOLITHIC=='0' and USE_XRC=='1'"/>
281
282     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">xrc=xrclib+xrcdll</set>
283
284     <!-- ================================================================ -->
285     <!--                            AUI                                   -->
286     <!-- ================================================================ -->
287
288     <dll id="auidll" template="wx_dll"
289          cond="SHARED=='1' and USE_AUI=='1' and MONOLITHIC=='0'">
290         <define>WXUSINGDLL</define>
291         <define>WXMAKINGDLL_AUI</define>
292         <sources>$(AUI_SRC)</sources>
293         <library>advdll</library>
294         <library>coredll</library>
295         <library>basedll</library>
296         <msvc-headers>$(AUI_HDR)</msvc-headers>
297     </dll>
298
299     <lib id="auilib" template="wx_lib"
300          cond="SHARED=='0' and USE_AUI=='1' and MONOLITHIC=='0'">
301         <sources>$(AUI_SRC)</sources>
302         <msvc-headers>$(AUI_HDR)</msvc-headers>
303     </lib>
304     
305     <wxshortcut id="wxaui" cond="MONOLITHIC=='0' and USE_AUI=='1'"/>
306
307     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">aui=auilib+auidll</set>
308     
309     <!-- ================================================================ -->
310     <!--                            RIBBON                                -->
311     <!-- ================================================================ -->
312
313     <dll id="ribbondll" template="wx_dll"
314          cond="SHARED=='1' and USE_RIBBON=='1' and MONOLITHIC=='0'">
315         <define>WXUSINGDLL</define>
316         <define>WXMAKINGDLL_RIBBON</define>
317         <sources>$(RIBBON_SRC)</sources>
318         <library>advdll</library>
319         <library>coredll</library>
320         <library>basedll</library>
321         <msvc-headers>$(RIBBON_HDR)</msvc-headers>
322     </dll>
323
324     <lib id="ribbonlib" template="wx_lib"
325          cond="SHARED=='0' and USE_RIBBON=='1' and MONOLITHIC=='0'">
326         <sources>$(RIBBON_SRC)</sources>
327         <msvc-headers>$(RIBBON_HDR)</msvc-headers>
328     </lib>
329     
330     <wxshortcut id="wxribbon" cond="MONOLITHIC=='0' and USE_RIBBON=='1'"/>
331
332     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">ribbon=ribbonlib+ribbondll</set>
333
334     <!-- ================================================================ -->
335     <!--                            PROPGRID                              -->
336     <!-- ================================================================ -->
337
338     <dll id="propgriddll" template="wx_dll"
339          cond="SHARED=='1' and USE_PROPGRID=='1' and MONOLITHIC=='0'">
340         <define>WXUSINGDLL</define>
341         <define>WXMAKINGDLL_PROPGRID</define>
342         <sources>$(PROPGRID_SRC)</sources>
343         <library>advdll</library>
344         <library>coredll</library>
345         <library>basedll</library>
346         <msvc-headers>$(PROPGRID_HDR)</msvc-headers>
347     </dll>
348
349     <lib id="propgridlib" template="wx_lib"
350          cond="SHARED=='0' and USE_PROPGRID=='1' and MONOLITHIC=='0'">
351         <sources>$(PROPGRID_SRC)</sources>
352         <msvc-headers>$(PROPGRID_HDR)</msvc-headers>
353     </lib>
354     
355     <wxshortcut id="wxpropgrid" cond="MONOLITHIC=='0' and USE_PROPGRID=='1'"/>
356
357     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">propgrid=propgridlib+propgriddll</set>
358
359     <!-- ================================================================ -->
360     <!--                            RICHTEXT                              -->
361     <!-- ================================================================ -->
362
363     <dll id="richtextdll" template="wx_dll"
364          cond="SHARED=='1' and USE_RICHTEXT=='1' and MONOLITHIC=='0'">
365         <define>WXUSINGDLL</define>
366         <define>WXMAKINGDLL_RICHTEXT</define>
367         <sources>$(RICHTEXT_SRC)</sources>
368         <library>advdll</library>
369         <library>$(htmldll_library_link)</library>
370         <library>xmldll</library>
371         <library>coredll</library>
372         <library>basedll</library>
373         <msvc-headers>$(RICHTEXT_HDR)</msvc-headers>
374     </dll>
375
376     <lib id="richtextlib" template="wx_lib"
377          cond="SHARED=='0' and USE_RICHTEXT=='1' and MONOLITHIC=='0'">
378         <sources>$(RICHTEXT_SRC)</sources>
379         <msvc-headers>$(RICHTEXT_HDR)</msvc-headers>
380     </lib>
381     
382     <wxshortcut id="wxrichtext" cond="MONOLITHIC=='0' and USE_RICHTEXT=='1'"/>
383
384     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">richtext=richtextlib+richtextdll</set>
385
386     <!-- ================================================================ -->
387     <!--                            STC                                   -->
388     <!-- ================================================================ -->
389
390     <template id="stc_base" template="wxscintilla_cppflags">
391         <library>wxscintilla</library>
392     </template>
393
394     <dll id="stcdll" template="wx_dll,stc_base"
395          cond="SHARED=='1' and USE_STC=='1' and MONOLITHIC=='0'">
396         <define>WXUSINGDLL</define>
397         <define>WXMAKINGDLL_STC</define>
398         <sources>$(STC_SRC)</sources>
399         <library>coredll</library>
400         <library>basedll</library>
401         <msvc-headers>$(STC_HDR)</msvc-headers>
402     </dll>
403
404     <lib id="stclib" template="wx_lib,stc_base"
405          cond="SHARED=='0' and USE_STC=='1' and MONOLITHIC=='0'">
406         <sources>$(STC_SRC)</sources>
407         <msvc-headers>$(STC_HDR)</msvc-headers>
408     </lib>
409     
410     <wxshortcut id="wxstc" cond="MONOLITHIC=='0' and USE_STC=='1'"/>
411
412     <set var="MSVC6PRJ_MERGED_TARGETS_MULTILIB" append="1">stc=stclib+stcdll</set>
413
414 </makefile>