added DEBUG_FLAG, DEBUG_INFO and DEBUG_RUNTIME_LIBS options
[wxWidgets.git] / build / bakefiles / config.bkl
1 <?xml version="1.0" ?>
2 <!-- $Id$ -->
3
4 <makefile>
5     
6     <set var="BUILDING_LIB" overwrite="0">0</set>
7
8     <option name="BUILD">
9         <values>debug release</values>
10         <values-description>Debug Release</values-description>
11         <default-value>release</default-value>
12         <description>
13             Type of compiled binaries
14         </description>
15     </option>
16     
17     <option name="DEBUG_INFO">
18         <values>0 1 default</values>
19         <default-value>default</default-value>
20         <description>
21 Should debugging info be included in the executables? The default value
22 "default" means that debug info will be included if BUILD=debug
23 and not included if BUILD=release.
24         </description>
25     </option>
26     
27     <option name="DEBUG_FLAG">
28         <values>0 1 default</values>
29         <default-value>default</default-value>
30         <description>
31 Should __WXDEBUG__ be defined? The default value "default" means that it will
32 be defined if BUILD=debug and not defined if BUILD=release.
33         </description>
34     </option>
35
36     <if cond="FORMAT=='msvc'">
37         <option name="DEBUG_RUNTIME_LIBS">
38             <values>0 1 default</values>
39             <default-value>default</default-value>
40             <description>
41 Should link against debug RTL (msvcrtd.dll) or release (msvcrt.dll)?
42 Acts according to DEBUG_INFO by default.
43             </description>
44         </option>
45     </if>
46     <if cond="FORMAT!='msvc'">
47         <set var="DEBUG_RUNTIME_LIBS">default</set>
48     </if>
49
50     <option name="UNICODE">
51         <values>0 1</values>
52         <values-description>Ansi Unicode</values-description>
53         <default-value>0</default-value>        
54         <description>
55             Compile Unicode build of wxWindows?
56         </description>
57     </option>
58
59     <option name="SHARED">
60         <values>0 1</values>
61         <values-description>Static DLL</values-description>
62         <default-value>1</default-value>
63         <description>
64             What type of library to build?
65         </description>
66     </option>
67     
68     <option name="MONOLITHIC">
69         <values>0 1</values>
70         <values-description>Multilib Monolithic</values-description>
71         <default-value>1</default-value>
72         <description>
73             Multiple libraries or single huge monolithic one?
74         </description>
75     </option>
76     
77     <option name="USE_GUI">
78         <values>0 1</values>
79         <values-description>Base GUI</values-description>
80         <default-value>1</default-value>
81         <description>
82             Build GUI libraries?
83         </description>
84     </option>
85     
86     <option name="USE_HTML">
87         <values>0 1</values>
88         <default-value>1</default-value>
89         <description>
90             Build wxHTML library (USE_GUI must be 1)?
91         </description>
92     </option>
93     
94     <option name="USE_OPENGL">
95         <values>0 1</values>
96         <default-value>0</default-value>
97         <description>
98             Build OpenGL canvas library (USE_GUI must be 1)?
99         </description>
100     </option>
101     
102     <option name="WXUNIV">
103         <values>0 1</values>
104         <values-description>Native wxUniv</values-description>
105         <default-value>0</default-value>
106         <description>
107             Build wxUniversal instead of native port?
108         </description>
109     </option>
110
111     <option name="OFFICIAL_BUILD">
112         <values>0 1</values>
113         <default-value>0</default-value>
114         <description>
115             Is this official build by wxWindows developers?
116         </description>
117     </option>
118     <option name="VENDOR">
119         <default-value>custom</default-value>
120         <description>
121             Use this to name your customized DLLs differently
122         </description>
123     </option>
124
125     <option name="CFG">
126         <default-value></default-value>
127         <description>
128 Name of your custom configuration. This affects directory
129 where object files are stored as well as the location of
130 compiled .lib files and setup.h under the lib/ toplevel directory.
131         </description>
132     </option>
133
134
135     <!-- ================================================================== -->
136     <!--                             Autoconf                               -->
137     <!-- ================================================================== -->
138     
139     <if cond="FORMAT=='autoconf'"> 
140         <option name="DEREZ"/>
141         <option name="TOOLKIT"/>
142         <option name="TOOLKIT_LOWERCASE"/>
143         <option name="TOOLKIT_VERSION"/>
144         <option name="TOOLCHAIN_NAME"/>
145         <option name="EXTRALIBS"/>
146         <option name="EXTRALIBS_XML"/>
147         <option name="EXTRALIBS_GUI"/>
148         <option name="EXTRALIBS_OPENGL"/>
149         <option name="SAMPLES_RPATH_FLAG"/>
150         <option name="HOST_SUFFIX"/>
151         
152         <set var="TOP_SRCDIR">$(top_srcdir)/</set>
153         <set var="RUNTIME_LIBS">dynamic</set>
154     </if>
155
156     
157     <!-- ================================================================== -->
158     <!--                         Windows compilers                          -->
159     <!-- ================================================================== -->
160
161     <if cond="FORMAT!='autoconf'">
162         <option name="RUNTIME_LIBS">
163             <values>dynamic static</values>
164             <default-value>dynamic</default-value>
165             <description>
166 Version of C runtime library to use. You can change this to
167 static if SHARED=0, but it is highly recommended to not do
168 it if SHARED=1 unless you know what you are doing.
169             </description>
170         </option>
171         
172         <set var="WXTOPDIR"/> <!-- to be overriden on bakefile cmd line -->
173
174         <set var="TOOLKIT">MSW</set>
175         <set var="TOOLKIT_LOWERCASE">$(TOOLKIT.lower())</set>
176         <set var="TOOLKIT_VERSION"/>
177         <set var="SAMPLES_RPATH_FLAG"/>
178         <set var="HOST_SUFFIX"/>
179         <set var="EXTRALIBS"/>
180         <set var="EXTRALIBS_XML"/>
181         <set var="EXTRALIBS_GUI"/>
182         <set var="EXTRACFLAGS"/>
183
184         <set var="SRCDIR">
185             <if cond="BUILDING_LIB=='1'">..</if>
186             <if cond="BUILDING_LIB=='0'">.</if>
187         </set>
188         <set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
189     </if>
190     
191     <if cond="FORMAT=='mingw'">
192         <option name="GCC_VERSION">
193             <values>3 2.95</values>
194             <default-value>3</default-value>
195             <description>
196 Set the version of your Mingw installation here.
197     "3" ...... this is for Mingw 2.0 or newer (comes with gcc3)
198     "2.95" ... for Mingw 1.1 or any of the older versions
199             </description>
200         </option>
201         <set var="GCCFLAGS">
202             <if cond="GCC_VERSION=='2.95'">-fvtable-thunks</if>
203         </set>
204         <set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set>
205     </if>
206     
207 </makefile>