1<?xml version="1.0" ?>
2<!-- $Id: Bakefiles.bkgen 58918 2009-02-15 17:44:24Z VZ $ -->
3
4<bakefile-gen xmlns="http://www.bakefile.org/schema/bakefile-gen">
5
6    <!--
7    Formats listed here are not generated by default. To enable them, either
8    remove them from the <disable-formats> directive below or create
9    Bakefiles.local.bkgen file in this directory and add <enable-formats>
10    into it:
11         <?xml version="1.0" ?>
12         <bakefile-gen>
13             <enable-formats>dmars</enable-formats>
14         </bakefile-gen>
15
16    Reasons why these formats are disabled (and so not in CVS):
17
18    cbuilderx - Generated projects are too bad to be included in CVS. Please
19                *do not* enable this format until FIXMEs in .bkl files related
20                to cbuilderx are addressed. In particular, the project must
21                be placed into build/msw(?) directory and store object files
22                in its subdirectory and it must copy setup.h as others do.
23    cbx_unix  - Doesn't integrate well and won't be used by most Unix people.
24    dmars, dmars_smake, msevc4prj - These are generated at release time and
25                we don't want to clutter the source tree with these files.
26    -->
27
28    <disable-formats>dmars,dmars_smake,msevc4prj,cbx_unix,cbuilderx</disable-formats>
29
30
31    <!-- These wildcards match all .bkl files in wxWidgets tree: -->
32    <input>
33        wx.bkl
34        ../../contrib/build/*/*.bkl
35        ../../samples/*.bkl
36        ../../samples/*/*.bkl
37        ../../samples/*/*/*.bkl
38        ../../demos/*.bkl
39        ../../demos/*/*.bkl
40        ../../demos/*/*/*.bkl
41        ../../utils/*.bkl
42        ../../utils/*/*.bkl
43        ../../utils/*/*/*.bkl
44        ../../contrib/samples/*.bkl
45        ../../contrib/samples/*/*.bkl
46        ../../contrib/samples/*/*/*.bkl
47        ../../contrib/utils/*/*.bkl
48        ../../tests/*.bkl
49    </input>
50
51    <!-- List of output formats to generate: -->
52    <add-formats>
53        autoconf,borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,watcom,cbuilderx,cbx_unix
54    </add-formats>
55
56    <del-formats files="../../samples/*.bkl">
57        autoconf,msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
58    </del-formats>
59    <del-formats files="../../demos/*.bkl">
60        msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
61    </del-formats>
62    <del-formats files="../../samples/html/html_samples.bkl">
63        msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
64    </del-formats>
65    <del-formats files="../../samples/mobile/mobile_samples.bkl">
66        msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
67    </del-formats>
68    <del-formats files="../../samples/opengl/opengl_samples.bkl">
69        msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
70    </del-formats>
71    <del-formats files="../../utils/*.bkl">
72        msvc6prj,msevc4prj,msvs2005prj,cbuilderx,cbx_unix
73    </del-formats>
74
75    <!-- WinCE can't have console apps: -->
76    <del-formats files="../../samples/console/*">msevc4prj</del-formats>
77    <del-formats files="../../utils/HelpGen/src/*">msevc4prj</del-formats>
78    <del-formats files="../../utils/wxrc/*">msevc4prj</del-formats>
79    <del-formats files="../../contrib/utils/wxrc/*">msevc4prj</del-formats>
80    <del-formats files="../../tests/*">msevc4prj</del-formats>
81
82    <!-- HtmlCtrl sample is Cocoa only (autoconf format) -->
83    <del-formats files="../../samples/html/htmlctrl/htmlctrl.bkl">
84        borland,dmars_smake,dmars,mingw,msvc,msvc6prj,msevc4prj,msvs2005prj,watcom,cbuilderx,cbx_unix
85    </del-formats>
86
87
88    <!-- Default flags (for all formats and bakefiles): -->
89    <add-flags>-Iformats</add-flags>
90
91
92    <!-- Directories where the files go: -->
93    <add-flags files="wx.bkl" formats="autoconf">
94        -o../../Makefile.in
95    </add-flags>
96    <add-flags files="wx.bkl" formats="borland">
97        -o../msw/makefile.bcc
98    </add-flags>
99    <add-flags files="wx.bkl" formats="dmars_smake">
100        -o../msw/makefile.dms
101    </add-flags>
102    <add-flags files="wx.bkl" formats="dmars">
103        -o../msw/makefile.dmc
104    </add-flags>
105    <add-flags files="wx.bkl" formats="mingw">
106        -o../msw/makefile.gcc
107    </add-flags>
108    <add-flags files="wx.bkl" formats="msvc">
109        -o../msw/makefile.vc
110    </add-flags>
111    <add-flags files="wx.bkl" formats="watcom">
112        -o../msw/makefile.wat
113    </add-flags>
114    <add-flags files="wx.bkl" formats="msvc6prj">
115        -o../msw/wx.dsw
116    </add-flags>
117    <add-flags files="wx.bkl" formats="msvs2005prj">
118        -o../msw/wx.sln
119    </add-flags>
120    <add-flags files="wx.bkl" formats="msevc4prj">
121        -o../wince/wx.vcw
122    </add-flags>
123    <add-flags files="wx.bkl" formats="cbuilderx">
124        -o../../wx.cbx
125    </add-flags>
126    <add-flags files="../../contrib/build/*/*.bkl" formats="autoconf">
127        -o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/Makefile.in
128    </add-flags>
129    <add-flags files="../../contrib/build/*/*.bkl" formats="cbx_unix">
130        -o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT)Unix.cbx
131    </add-flags>
132    <!-- FIXME: don't do this once it is possible (new CBX version) -->
133    <add-flags files="../../contrib/build/*/*.bkl" formats="cbuilderx">
134        -o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT).cbx
135    </add-flags>
136    <add-flags files="../../contrib/build/*/*.bkl"
137               formats="mingw,borland,dmars_smake,dmars,watcom,msvc,msvc6prj,msevc4prj,msvs2005prj">
138        -DSRCDIR=../../src/$(INPUT_FILE_BASENAME_NOEXT)
139    </add-flags>
140
141
142
143    <!-- Format specific settings: -->
144    <add-flags formats="autoconf">
145        -DAUTOCONF_MACROS_FILE=../../autoconf_inc.m4
146    </add-flags>
147
148    <add-formats files="wx.bkl">rpmspec</add-formats>
149
150
151    <!-- Makefile specific settings: -->
152
153    <add-flags formats="borland,dmars_smake,dmars,mingw,msvc,watcom">
154        -DWRITE_OPTIONS_FILE=0
155    </add-flags>
156    <del-flags formats="borland,dmars_smake,dmars,mingw,msvc,watcom"
157               files="wx.bkl">
158        -DWRITE_OPTIONS_FILE=0
159    </del-flags>
160
161    <add-flags files="wx.bkl" formats="borland">
162        -DOPTIONS_FILE=config.bcc
163    </add-flags>
164    <add-flags files="wx.bkl" formats="dmars_smake">
165        -DOPTIONS_FILE=config.dms
166    </add-flags>
167    <add-flags files="wx.bkl" formats="dmars">
168        -DOPTIONS_FILE=config.dmc
169    </add-flags>
170    <add-flags files="wx.bkl" formats="mingw">
171        -DOPTIONS_FILE=config.gcc
172    </add-flags>
173    <add-flags files="wx.bkl" formats="msvc">
174        -DOPTIONS_FILE=config.vc
175    </add-flags>
176    <add-flags files="wx.bkl" formats="watcom">
177        -DOPTIONS_FILE=config.wat
178    </add-flags>
179
180    <add-flags files="../../*/*">-DWXTOPDIR=../</add-flags>
181    <add-flags files="../../*/*/*">-DWXTOPDIR=../../</add-flags>
182    <add-flags files="../../*/*/*/*">-DWXTOPDIR=../../../</add-flags>
183    <add-flags files="../../*/*/*/*/*">-DWXTOPDIR=../../../../</add-flags>
184
185    <add-flags files="../../*/*" formats="borland">
186        -DOPTIONS_FILE=../build/msw/config.bcc
187    </add-flags>
188    <add-flags files="../../*/*" formats="dmars_smake">
189        -DOPTIONS_FILE=../build/msw/config.dms
190    </add-flags>
191    <add-flags files="../../*/*" formats="dmars">
192        -DOPTIONS_FILE=../build/msw/config.dmc
193    </add-flags>
194    <add-flags files="../../*/*" formats="mingw">
195        -DOPTIONS_FILE=../build/msw/config.gcc
196    </add-flags>
197    <add-flags files="../../*/*" formats="msvc">
198        -DOPTIONS_FILE=../build/msw/config.vc
199    </add-flags>
200    <add-flags files="../../*/*" formats="watcom">
201        -DOPTIONS_FILE=../build/msw/config.wat
202    </add-flags>
203    <add-flags files="../../*/*/*" formats="borland">
204        -DOPTIONS_FILE=../../build/msw/config.bcc
205    </add-flags>
206    <add-flags files="../../*/*/*" formats="dmars_smake">
207        -DOPTIONS_FILE=../../build/msw/config.dms
208    </add-flags>
209    <add-flags files="../../*/*/*" formats="dmars">
210        -DOPTIONS_FILE=../../build/msw/config.dmc
211    </add-flags>
212    <add-flags files="../../*/*/*" formats="mingw">
213        -DOPTIONS_FILE=../../build/msw/config.gcc
214    </add-flags>
215    <add-flags files="../../*/*/*" formats="msvc">
216        -DOPTIONS_FILE=../../build/msw/config.vc
217    </add-flags>
218    <add-flags files="../../*/*/*" formats="watcom">
219        -DOPTIONS_FILE=../../build/msw/config.wat
220    </add-flags>
221    <add-flags files="../../*/*/*/*" formats="borland">
222        -DOPTIONS_FILE=../../../build/msw/config.bcc
223    </add-flags>
224    <add-flags files="../../*/*/*/*" formats="dmars_smake">
225        -DOPTIONS_FILE=../../../build/msw/config.dms
226    </add-flags>
227    <add-flags files="../../*/*/*/*" formats="dmars">
228        -DOPTIONS_FILE=../../../build/msw/config.dmc
229    </add-flags>
230    <add-flags files="../../*/*/*/*" formats="mingw">
231        -DOPTIONS_FILE=../../../build/msw/config.gcc
232    </add-flags>
233    <add-flags files="../../*/*/*/*" formats="msvc">
234        -DOPTIONS_FILE=../../../build/msw/config.vc
235    </add-flags>
236    <add-flags files="../../*/*/*/*" formats="watcom">
237        -DOPTIONS_FILE=../../../build/msw/config.wat
238    </add-flags>
239    <add-flags files="../../*/*/*/*/*" formats="borland">
240        -DOPTIONS_FILE=../../../../build/msw/config.bcc
241    </add-flags>
242    <add-flags files="../../*/*/*/*/*" formats="dmars_smake">
243        -DOPTIONS_FILE=../../../../build/msw/config.dms
244    </add-flags>
245    <add-flags files="../../*/*/*/*/*" formats="dmars">
246        -DOPTIONS_FILE=../../../../build/msw/config.dmc
247    </add-flags>
248    <add-flags files="../../*/*/*/*/*" formats="mingw">
249        -DOPTIONS_FILE=../../../../build/msw/config.gcc
250    </add-flags>
251    <add-flags files="../../*/*/*/*/*" formats="msvc">
252        -DOPTIONS_FILE=../../../../build/msw/config.vc
253    </add-flags>
254    <add-flags files="../../*/*/*/*/*" formats="watcom">
255        -DOPTIONS_FILE=../../../../build/msw/config.wat
256    </add-flags>
257
258    
259    <!-- Makefiles for out-of-tree building of samples on Unix: -->
260    <add-formats files="../../samples/*/*.bkl,../../samples/*/*/*.bkl">
261        gnu
262    </add-formats>
263    <add-flags files="../../samples/*/*.bkl,../../samples/*/*/*.bkl"
264               formats="gnu">
265        -DOUT_OF_TREE_MAKEFILES=1 -o$(INPUT_FILE_DIR)/makefile.unx
266    </add-flags>
267
268    <!-- Personal customizations (not in CVS): -->
269    <include file="Bakefiles.local.bkgen" ignore_missing="1"/>
270
271</bakefile-gen>
272