build and install wxrc by default
[wxWidgets.git] / build / bakefiles / wx.bkl
1 <?xml version="1.0" ?>
2 <!-- $Id$ -->
3
4
5 <!-- Master bakefile for wxWidgets -->
6
7 <makefile>
8
9     <!-- make sure setup.h is created as soon as possible: -->
10     <phony id="setup_h" cond="FORMAT!='autoconf'">
11         <dependency-of>all</dependency-of>
12     </phony>
13
14     <set var="BUILDING_LIB">1</set>
15     
16     <!-- common rules, names etc. for wx: -->
17     <include file="common.bkl"/>
18     
19     <!-- list of files sorted into categories: -->
20     <include file="files.bkl"/>
21     
22     <!-- wxWidgets variant where everything is in one library: -->
23     <include file="monolithic.bkl"/>
24     <!-- ...and when there are multiple libraries: -->
25     <include file="multilib.bkl"/>
26
27     <if cond="FORMAT in ['msvc6prj','msevc4prj']">
28         <set var="MSVC6PRJ_MERGED_TARGETS">
29             <if cond="MONOLITHIC=='0'">$(MSVC6PRJ_MERGED_TARGETS_MULTILIB)</if>
30             <if cond="MONOLITHIC=='1'">$(MSVC6PRJ_MERGED_TARGETS_MONOLIB)</if>
31         </set>
32     </if>
33     
34     <!-- OpenGL canvas is built as separate library in both cases: -->
35     <include file="opengl.bkl"/>
36     <!-- Dynamically loadable plugins: -->
37     <include file="plugins.bkl"/>
38  
39     <!-- Samples target (not dependency of 'all'): -->
40     <subproject id="samples">
41         <installable>no</installable>
42         <dir cond="FORMAT=='autoconf'">samples</dir>
43         <dir cond="FORMAT!='autoconf' and TOOLKIT in ['MSW','MGL']">../../samples</dir>
44     </subproject>
45     
46     <!-- WXRC compiler is built by default: -->
47     <subproject id="wxrc" cond="FORMAT=='autoconf'">
48         <dependency-of>all</dependency-of>
49         <installable>yes</installable>
50         <dir>utils/wxrc</dir>
51     </subproject>
52
53     <if cond="FORMAT=='autoconf'">       
54         <!-- "make install": -->
55
56         <data-files>
57             <files>wxwin.m4</files>
58             <install-to>$(DATADIR)/aclocal</install-to>
59         </data-files>
60
61         <data-files-tg id="install-afm" cond="USE_GUI=='1'">
62             <files>misc/afm/*.afm</files>
63             <install-to>$(DATADIR)/wx/afm</install-to>
64         </data-files-tg>
65         <data-files-tg id="install-gsafm" cond="USE_GUI=='1'">
66             <files>misc/gs_afm/*.afm</files>
67             <install-to>$(DATADIR)/wx/gs_afm</install-to>
68         </data-files-tg>
69
70         <action id="install-wxconfig">
71             <dependency-of>install</dependency-of>
72             <command>
73                 $(INSTALL_DIR) $(DESTDIR)$(BINDIR)
74                 $(INSTALL_DIR) $(DESTDIR)$(LIBDIR)/wx/config
75                 $(INSTALL_PROGRAM) lib/wx/config/$(TOOLCHAIN_FULLNAME) $(DESTDIR)$(LIBDIR)/wx/config
76                 (cd $(DESTDIR)$(BINDIR) &amp;&amp; rm -f wx-config &amp;&amp; $(LN_S) $(DESTDIR)$(LIBDIR)/wx/config/$(TOOLCHAIN_FULLNAME) wx-config)
77             </command>
78         </action>
79
80         <data-files>
81             <srcdir>$(BUILDDIR)</srcdir>
82             <files>lib/wx/include/$(TOOLCHAIN_FULLNAME)/wx/setup.h</files>
83             <install-to>$(LIBDIR)/wx/include/$(TOOLCHAIN_FULLNAME)/wx</install-to>
84         </data-files>
85
86         <headers>
87             <srcdir>$(SRCDIR)/include</srcdir>
88             <files>$(ALL_HEADERS)</files>
89             <install-to>
90                 $(INCLUDEDIR)/wx-$(WX_RELEASE)$(WX_FLAVOUR)
91             </install-to>
92         </headers>
93
94         <!-- Locales: -->
95         <using module="gettext"/>
96         <gettext-catalogs id="locale">
97             <srcdir>$(SRCDIR)/locale</srcdir>
98             <catalog-name>wxstd</catalog-name>
99             <linguas>
100                 ca cs da de el es fi fr hu id it ja nl pl ru sl sv tr uk
101                 zh zh_CN zh_TW
102             </linguas>
103             <install-to>$(LOCALEDIR)</install-to>
104         </gettext-catalogs>
105
106         <!-- Mac OS X resources: -->
107         <set var="MACOS_R">lib/libwx_$(TOOLCHAIN_NAME).$(WXSOVERSION[0]).r</set>
108         <set var="MACOS_RSRC">lib/libwx_$(TOOLCHAIN_NAME).$(WXSOVERSION[0]).rsrc</set>
109         <action id="macos-res" cond="TOOLKIT=='MAC'">
110             <dependency-of>all</dependency-of>
111             <set var="__targetname">$(MACOS_R)</set>
112             <command>
113                 $(RESCOMP) -d __UNIX__ -useDF $(top_srcdir)/src/mac/carbon/apprsrc.r $(top_srcdir)/src/mac/carbon/carbrsrc.r $(top_srcdir)/src/mac/carbon/corersrc.r -o $(MACOS_RSRC)
114                 $(DEREZ) $(MACOS_RSRC) Carbon.r -useDF >$(MACOS_R)
115             </command>
116             <clean-files>$(MACOS_RSRC) $(MACOS_R)</clean-files>
117         </action>
118         <action id="macos-res-install" cond="TOOLKIT=='MAC'">
119             <dependency-of>install</dependency-of>
120             <depends>macos-res</depends>
121             <command>
122                 $(INSTALL_DATA) $(MACOS_R) $(LIBDIR)
123                 $(INSTALL_DATA) $(MACOS_RSRC) $(LIBDIR)
124             </command>
125         </action>
126         <action id="cocoa-res" cond="TOOLKIT=='COCOA'">
127             <dependency-of>all</dependency-of>
128             <set var="__targetname">$(MACOS_R)</set>
129             <command>
130                 $(RESCOMP) -d __UNIX__ -useDF $(top_srcdir)/src/cocoa/dummy.r -o $(MACOS_RSRC)
131                 $(DEREZ) $(MACOS_RSRC) -useDF >$(MACOS_R)
132             </command>
133             <clean-files>$(MACOS_RSRC) $(MACOS_R)</clean-files>
134         </action>
135         <action id="cocoa-res-install" cond="TOOLKIT=='COCOA'">
136             <dependency-of>install</dependency-of>
137             <depends>macos-res</depends>
138             <command>
139                 $(INSTALL_DATA) $(MACOS_R) $(LIBDIR)
140                 $(INSTALL_DATA) $(MACOS_RSRC) $(LIBDIR)
141             </command>
142         </action>
143
144     </if>
145
146
147     <!-- copy setup.h on DOS/Windows: -->    
148     <if cond="FORMAT!='autoconf' and TOOLKIT in ['MSW','MGL']">
149         <mkdir id="libdir">
150             <dir>$(LIBDIRNAME)</dir>
151         </mkdir>
152         <mkdir id="libdir_setup">
153             <depends>libdir</depends>
154             <dir>$(SETUPHDIR)</dir>            
155         </mkdir>
156         <mkdir id="libdir_setup_wx">
157             <depends>libdir_setup</depends>
158             <dependency-of>setup_h</dependency-of>
159             <dir>$(SETUPHDIR)/wx</dir>            
160         </mkdir>
161
162         <set var="SETUP_H_SUBDIR">
163             <if cond="WXUNIV=='1'">univ</if>
164             <if cond="WXUNIV=='0'">$(TOOLKIT_LOWERCASE)</if>
165         </set>
166         
167         <copy-file-to-file-if-not-exist id="master_setup.h">
168             <src>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup0.h</src>
169             <dst>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup.h</dst>
170             <dependency-of>setup_h</dependency-of>
171         </copy-file-to-file-if-not-exist>
172         <copy-file-to-file-if-not-exist id="setup.h">
173             <dependency-of>setup_h</dependency-of>
174             <src>$(SRCDIR)/include/wx/$(SETUP_H_SUBDIR)/setup.h</src>
175             <dst>$(SETUPHDIR)/wx/setup.h</dst>
176         </copy-file-to-file-if-not-exist>
177
178     </if>
179
180
181     <if cond="FORMAT=='autoconf'">
182
183         <!-- Show this banner after installation: -->
184         <modify-target target="install">
185             <command>
186 @echo " "
187 @echo " ------------------------------------------------------"
188 @echo " "
189 @echo " The installation of wxWidgets is finished.  On certain"
190 @echo " platforms (e.g. Linux) you'll now have to run ldconfig"
191 @echo " if you installed a shared library and also modify the"
192 @echo " LD_LIBRARY_PATH (or equivalent) environment variable."
193 @echo " "
194 @echo " wxWidgets comes with no guarantees and doesn't claim"
195 @echo " to be suitable for any purpose."
196 @echo " "
197 @echo " Read the wxWidgets Licence on licencing conditions."
198 @echo " "
199 @echo " ------------------------------------------------------"
200 @echo " "
201             </command>
202         </modify-target>
203
204         <!-- add "make dist" target to autoconf: -->
205         <set var="VARS_DONT_ELIMINATE" append="1">
206             ALL_BASE_SOURCES WX_VERSION
207         </set>
208         <fragment format="autoconf" file="make_dist.mk"/>
209
210     </if>
211         
212     <include file="build_cfg.bkl"/>
213
214 </makefile>