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