Bakefile and other changes for new locations of STC and wxSVGFileDC.
[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>