added support for Bakefile's upcoming msvs2005prj format (not enabled by default...
[wxWidgets.git] / build / bakefiles / Bakefiles.bkgen
1 <?xml version="1.0" ?>
2 <!-- $Id$ -->
3
4 <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 files="wx.bkl">
157         -DWRITE_OPTIONS_FILE=0
158     </del-flags>
159
160     <add-flags files="wx.bkl" formats="borland">
161         -DOPTIONS_FILE=config.bcc
162     </add-flags>
163     <add-flags files="wx.bkl" formats="dmars_smake">
164         -DOPTIONS_FILE=config.dms
165     </add-flags>
166     <add-flags files="wx.bkl" formats="dmars">
167         -DOPTIONS_FILE=config.dmc
168     </add-flags>
169     <add-flags files="wx.bkl" formats="mingw">
170         -DOPTIONS_FILE=config.gcc
171     </add-flags>
172     <add-flags files="wx.bkl" formats="msvc">
173         -DOPTIONS_FILE=config.vc
174     </add-flags>
175     <add-flags files="wx.bkl" formats="watcom">
176         -DOPTIONS_FILE=config.wat
177     </add-flags>
178
179     <add-flags files="../../*/*">-DWXTOPDIR=../</add-flags>
180     <add-flags files="../../*/*/*">-DWXTOPDIR=../../</add-flags>
181     <add-flags files="../../*/*/*/*">-DWXTOPDIR=../../../</add-flags>
182     <add-flags files="../../*/*/*/*/*">-DWXTOPDIR=../../../../</add-flags>
183
184     <add-flags files="../../*/*" formats="borland">
185         -DOPTIONS_FILE=../build/msw/config.bcc
186     </add-flags>
187     <add-flags files="../../*/*" formats="dmars_smake">
188         -DOPTIONS_FILE=../build/msw/config.dms
189     </add-flags>
190     <add-flags files="../../*/*" formats="dmars">
191         -DOPTIONS_FILE=../build/msw/config.dmc
192     </add-flags>
193     <add-flags files="../../*/*" formats="mingw">
194         -DOPTIONS_FILE=../build/msw/config.gcc
195     </add-flags>
196     <add-flags files="../../*/*" formats="msvc">
197         -DOPTIONS_FILE=../build/msw/config.vc
198     </add-flags>
199     <add-flags files="../../*/*" formats="watcom">
200         -DOPTIONS_FILE=../build/msw/config.wat
201     </add-flags>
202     <add-flags files="../../*/*/*" formats="borland">
203         -DOPTIONS_FILE=../../build/msw/config.bcc
204     </add-flags>
205     <add-flags files="../../*/*/*" formats="dmars_smake">
206         -DOPTIONS_FILE=../../build/msw/config.dms
207     </add-flags>
208     <add-flags files="../../*/*/*" formats="dmars">
209         -DOPTIONS_FILE=../../build/msw/config.dmc
210     </add-flags>
211     <add-flags files="../../*/*/*" formats="mingw">
212         -DOPTIONS_FILE=../../build/msw/config.gcc
213     </add-flags>
214     <add-flags files="../../*/*/*" formats="msvc">
215         -DOPTIONS_FILE=../../build/msw/config.vc
216     </add-flags>
217     <add-flags files="../../*/*/*" formats="watcom">
218         -DOPTIONS_FILE=../../build/msw/config.wat
219     </add-flags>
220     <add-flags files="../../*/*/*/*" formats="borland">
221         -DOPTIONS_FILE=../../../build/msw/config.bcc
222     </add-flags>
223     <add-flags files="../../*/*/*/*" formats="dmars_smake">
224         -DOPTIONS_FILE=../../../build/msw/config.dms
225     </add-flags>
226     <add-flags files="../../*/*/*/*" formats="dmars">
227         -DOPTIONS_FILE=../../../build/msw/config.dmc
228     </add-flags>
229     <add-flags files="../../*/*/*/*" formats="mingw">
230         -DOPTIONS_FILE=../../../build/msw/config.gcc
231     </add-flags>
232     <add-flags files="../../*/*/*/*" formats="msvc">
233         -DOPTIONS_FILE=../../../build/msw/config.vc
234     </add-flags>
235     <add-flags files="../../*/*/*/*" formats="watcom">
236         -DOPTIONS_FILE=../../../build/msw/config.wat
237     </add-flags>
238     <add-flags files="../../*/*/*/*/*" formats="borland">
239         -DOPTIONS_FILE=../../../../build/msw/config.bcc
240     </add-flags>
241     <add-flags files="../../*/*/*/*/*" formats="dmars_smake">
242         -DOPTIONS_FILE=../../../../build/msw/config.dms
243     </add-flags>
244     <add-flags files="../../*/*/*/*/*" formats="dmars">
245         -DOPTIONS_FILE=../../../../build/msw/config.dmc
246     </add-flags>
247     <add-flags files="../../*/*/*/*/*" formats="mingw">
248         -DOPTIONS_FILE=../../../../build/msw/config.gcc
249     </add-flags>
250     <add-flags files="../../*/*/*/*/*" formats="msvc">
251         -DOPTIONS_FILE=../../../../build/msw/config.vc
252     </add-flags>
253     <add-flags files="../../*/*/*/*/*" formats="watcom">
254         -DOPTIONS_FILE=../../../../build/msw/config.wat
255     </add-flags>
256
257     
258     <!-- Makefiles for out-of-tree building of samples on Unix: -->
259     <add-formats files="../../samples/*/*.bkl,../../samples/*/*/*.bkl">
260         gnu
261     </add-formats>
262     <add-flags files="../../samples/*/*.bkl,../../samples/*/*/*.bkl"
263                formats="gnu">
264         -DOUT_OF_TREE_MAKEFILES=1 -o$(INPUT_FILE_DIR)/makefile.unx
265     </add-flags>
266
267     <!-- Personal customizations (not in CVS): -->
268     <include file="Bakefiles.local.bkgen" ignore_missing="1"/>
269
270 </bakefile-gen>