]> git.saurik.com Git - wxWidgets.git/blob - distrib/msw/tmake/unx.t
New makefile updates.
[wxWidgets.git] / distrib / msw / tmake / unx.t
1 #!################################################################################
2 #! File: unx.t
3 #! Purpose: tmake template file from which makefile.unx.in is generated by running
4 #! tmake -t unx wxwin.pro -o makefile.unx.in
5 #! Author: Vadim Zeitlin, Robert Roebling, Julian Smart
6 #! Created: 14.07.99
7 #! Version: $Id$
8 #!################################################################################
9
10 #${
11 #! include the code which parses filelist.txt file and initializes
12 #! %wxCommon, %wxGeneric, %wxHtml, %wxUnix and %wxGTK hashes.
13 IncludeTemplate("filelist.t");
14
15 #! now transform these hashes into $project tags
16 foreach $file (sort keys %wxGeneric) {
17 next if $wxGeneric{$file} =~ /\bR\b/;
18
19 $file =~ s/cp?p?$/\o/;
20 $project{"WXGTK_GENERICOBJS"} .= "../generic/" . $file . " "
21 }
22
23 #! now transform these hashes into $project tags
24 foreach $file (sort keys %wxGeneric) {
25 next if $wxCommon{$file} =~ /\bX\b/;
26
27 $file =~ s/cp?p?$/\o/;
28 $project{"WXMOTIF_GENERICOBJS"} .= "../generic/" . $file . " "
29 }
30
31 foreach $file (sort keys %wxCommon) {
32 next if $wxCommon{$file} =~ /\bR\b/;
33
34 $file =~ s/cp?p?$/\o/;
35 $project{"WXGTK_COMMONOBJS"} .= "../common/" . $file . " "
36 }
37
38 foreach $file (sort keys %wxCommon) {
39 next if $wxCommon{$file} =~ /\bX\b/;
40
41 $file =~ s/cp?p?$/\o/;
42 $project{"WXMOTIF_COMMONOBJS"} .= "../common/" . $file . " "
43 }
44
45 foreach $file (sort keys %wxGTK) {
46 $file =~ s/cp?p?$/\o/;
47 $project{"WXGTK_GUIOBJS"} .= "../gtk/" . $file . " "
48 }
49
50 foreach $file (sort keys %wxMOTIF) {
51 $file =~ s/cp?p?$/\o/;
52 $project{"WXMOTIF_GUIOBJS"} .= "../motif/" . $file . " "
53 }
54
55 foreach $file (sort keys %wxHTML) {
56 $file =~ s/cp?p?$/\o/;
57 $project{"WXHTMLOBJS"} .= "../html/" . $file . " "
58 }
59
60 foreach $file (sort keys %wxUNIX) {
61 $file =~ s/cp?p?$/\o/;
62 $project{"WXUNIXOBJS"} .= "../unix/" . $file . " "
63 }
64
65 #$}
66 #
67 # I want this to be:
68 # $(INSTALL_DATA) $(INCDIR)/wx/window.h $(includedir)/wx/window.h
69 #
70 # foreach $file (sort keys %wxINCLUDE) {
71 # next if $wxINCLUDE{$file} =~ /\b(GTK|MSW|MOT|PM|MAC|GEN|HTM|UNX)\b/;
72 #
73 # $project{"WXINSTALLWX"} .= "$(INSTALL_DATA)" . " " . "\$(INCDIR)/wx/" . $file . " \$(includedir)/wx/" . $file . "\n"
74 # }
75 #
76 #
77 #
78 # This file was automatically generated by tmake at #$ Now()
79 # DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE UNX.T!
80
81 #
82 # File: makefile.unx
83 # Author: Julian Smart, Robert Roebling, Vadim Zeitlin
84 # Created: 1993
85 # Updated: 1999
86 # Copyright:(c) 1993, AIAI, University of Edinburgh,
87 # Copyright:(c) 1999, Vadim Zeitlin
88 # Copyright:(c) 1999, Robert Roebling
89 #
90 # Makefile for libwx_gtk.a, libwx_motif.a and libwx_msw.a
91
92 ###################################################################
93
94 include ../make.env
95
96 ############## override make.env for PIC ##########################
97
98 # Clears all default suffixes
99 .SUFFIXES: .o .cpp .c .cxx
100
101 .c.o :
102 $(CCC) -c $(CFLAGS) $(PICFLAGS) -o $@ $<
103
104 .cpp.o :
105 $(CC) -c $(CPPFLAGS) $(PICFLAGS) -o $@ $<
106
107 .cxx.o :
108 $(CC) -c $(CPPFLAGS) $(PICFLAGS) -o $@ $<
109
110 ########################### Paths #################################
111
112 srcdir = @srcdir@
113
114 VPATH = :$(srcdir)
115
116 top_srcdir = @top_srcdir@
117 prefix = @prefix@
118 exec_prefix = @exec_prefix@
119
120 bindir = @bindir@
121 sbindir = @sbindir@
122 libexecdir = @libexecdir@
123 datadir = @datadir@
124 sysconfdir = @sysconfdir@
125 sharedstatedir = @sharedstatedir@
126 localstatedir = @localstatedir@
127 libdir = @libdir@
128 infodir = @infodir@
129 mandir = @mandir@
130 includedir = @includedir@
131 oldincludedir = /usr/include
132
133 DESTDIR =
134
135 pkgdatadir = $(datadir)/@PACKAGE@
136 pkglibdir = $(libdir)/@PACKAGE@
137 pkgincludedir = $(includedir)/@PACKAGE@
138
139 top_builddir = ../..
140
141 INSTALL = @INSTALL@
142 INSTALL_PROGRAM = @INSTALL_PROGRAM@
143 INSTALL_DATA = @INSTALL_DATA@
144 INSTALL_SCRIPT = @INSTALL_SCRIPT@
145 transform = @program_transform_name@
146
147 NORMAL_INSTALL = :
148 PRE_INSTALL = :
149 POST_INSTALL = :
150 NORMAL_UNINSTALL = :
151 PRE_UNINSTALL = :
152 POST_UNINSTALL = :
153 build_alias = @build_alias@
154 build_triplet = @build@
155 host_alias = @host_alias@
156 host_triplet = @host@
157 target_alias = @target_alias@
158 target_triplet = @target@
159
160 ############################# Dirs #################################
161
162 WXDIR = $(srcdir)/../..
163
164 # Subordinate library possibilities
165
166 GENDIR = $(WXDIR)/src/generic
167 COMMDIR = $(WXDIR)/src/common
168 HTMLDIR = $(WXDIR)/src/html
169 UNIXDIR = $(WXDIR)/src/unix
170 PNGDIR = $(WXDIR)/src/png
171 JPEGDIR = $(WXDIR)/src/jpeg
172 ZLIBDIR = $(WXDIR)/src/zlib
173 GTKDIR = $(WXDIR)/src/gtk
174 MOTIFDIR = $(WXDIR)/src/motif
175 INCDIR = $(WXDIR)/include
176
177 DOCDIR = $(WXDIR)/docs
178
179 ############################## Files ##################################
180
181 GTK_GENERICOBJS = \
182 #$ ExpandList("WXGTK_GENERICOBJS");
183
184 GTK_COMMONOBJS = \
185 parser.o \
186 #$ ExpandList("WXGTK_COMMONOBJS");
187
188 GTK_GUIOBJS = \
189 #$ ExpandList("WXGTK_GUIOBJS");
190
191 MOTIF_GENERICOBJS = \
192 #$ ExpandList("WXMOTIF_GENERICOBJS");
193
194 MOTIF_COMMONOBJS = \
195 parser.o \
196 #$ ExpandList("WXMOTIF_COMMONOBJS");
197
198 MOTIF_GUIOBJS = \
199 ../motif/xmcombo/xmcombo.o \
200 #$ ExpandList("WXMOTIF_GUIOBJS");
201
202 HTMLOBJS = \
203 #$ ExpandList("WXHTMLOBJS");
204
205 UNIXOBJS = \
206 #$ ExpandList("WXUNIXOBJS");
207
208 ZLIBOBJS = \
209 ../zlib/adler32.o \
210 ../zlib/compress.o \
211 ../zlib/crc32.o \
212 ../zlib/gzio.o \
213 ../zlib/uncompr.o \
214 ../zlib/deflate.o \
215 ../zlib/trees.o \
216 ../zlib/zutil.o \
217 ../zlib/inflate.o \
218 ../zlib/infblock.o \
219 ../zlib/inftrees.o \
220 ../zlib/infcodes.o \
221 ../zlib/infutil.o \
222 ../zlib/inffast.o
223
224 PNGOBJS = \
225 ../png/png.o \
226 ../png/pngread.o \
227 ../png/pngrtran.o \
228 ../png/pngrutil.o \
229 ../png/pngpread.o \
230 ../png/pngtrans.o \
231 ../png/pngwrite.o \
232 ../png/pngwtran.o \
233 ../png/pngwutil.o \
234 ../png/pngerror.o \
235 ../png/pngmem.o \
236 ../png/pngwio.o \
237 ../png/pngrio.o \
238 ../png/pngget.o \
239 ../png/pngset.o
240
241
242 JPEGOBJS = \
243 ../jpeg/jcomapi.o \
244 ../jpeg/jutils.o \
245 ../jpeg/jerror.o \
246 ../jpeg/jmemmgr.o \
247 ../jpeg/jmemnobs.o \
248 ../jpeg/jcapimin.o \
249 ../jpeg/jcapistd.o \
250 ../jpeg/jctrans.o \
251 ../jpeg/jcparam.o \
252 ../jpeg/jdatadst.o \
253 ../jpeg/jcinit.o \
254 ../jpeg/jcmaster.o \
255 ../jpeg/jcmarker.o \
256 ../jpeg/jcmainct.o \
257 ../jpeg/jcprepct.o \
258 ../jpeg/jccoefct.o \
259 ../jpeg/jccolor.o \
260 ../jpeg/jcsample.o \
261 ../jpeg/jchuff.o \
262 ../jpeg/jcphuff.o \
263 ../jpeg/jcdctmgr.o \
264 ../jpeg/jfdctfst.o \
265 ../jpeg/jfdctflt.o \
266 ../jpeg/jfdctint.o \
267 ../jpeg/jdapimin.o \
268 ../jpeg/jdapistd.o \
269 ../jpeg/jdtrans.o \
270 ../jpeg/jdatasrc.o \
271 ../jpeg/jdmaster.o \
272 ../jpeg/jdinput.o \
273 ../jpeg/jdmarker.o \
274 ../jpeg/jdhuff.o \
275 ../jpeg/jdphuff.o \
276 ../jpeg/jdmainct.o \
277 ../jpeg/jdcoefct.o \
278 ../jpeg/jdpostct.o \
279 ../jpeg/jddctmgr.o \
280 ../jpeg/jidctfst.o \
281 ../jpeg/jidctflt.o \
282 ../jpeg/jidctint.o \
283 ../jpeg/jidctred.o \
284 ../jpeg/jdsample.o \
285 ../jpeg/jdcolor.o \
286 ../jpeg/jquant1.o \
287 ../jpeg/jquant2.o \
288 ../jpeg/jdmerge.o
289
290
291 OBJECTS = $(@GUIOBJS@) $(@COMMONOBJS@) $(@GENERICOBJS@) $(HTMLOBJS) $(UNIXOBJS) \
292 $(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS)
293
294
295 REQUIRED_DIRS = ../../lib ../../src ../../src/common ../../src/gtk ../../src/motif \
296 ../../src/generic ../../src/unix ../../src/motif/xmombo ../../src/html \
297 ../../src/zlib ../../src/jpeg ../../src/png
298
299 all: $(REQUIRED_DIRS) $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
300
301 $(REQUIRED_DIRS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
302 @if test ! -d ../../lib; then mkdir ../../lib; fi
303 @if test ! -d ../../src; then mkdir ../../src; fi
304 @if test ! -d ../../src/common; then mkdir ../../src/common; fi
305 @if test ! -d ../../src/gtk; then mkdir ../../src/gtk; fi
306 @if test ! -d ../../src/motif; then mkdir ../../src/motif; fi
307 @if test ! -d ../../src/motif/xmcombo; then mkdir ../../src/motif/xmcombo; fi
308 @if test ! -d ../../src/generic; then mkdir ../../src/generic; fi
309 @if test ! -d ../../src/unix; then mkdir ../../src/unix; fi
310 @if test ! -d ../../src/html; then mkdir ../../src/html; fi
311 @if test ! -d ../../src/png; then mkdir ../../src/png; fi
312 @if test ! -d ../../src/jpeg; then mkdir ../../src/jpeg; fi
313 @if test ! -d ../../src/zlib; then mkdir ../../src/zlib; fi
314
315 @WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
316 $(AR) $(AROPTIONS) ../../lib/$@ $(OBJECTS)
317 $(RANLIB) ../../lib/$@
318
319 @WX_LIBRARY_NAME_SHARED@: $(OBJECTS)
320 $(SHARED_LD) ../../lib/$@ $(OBJECTS) $(EXTRALIBS)
321
322 CREATE_LINKS: $(OBJECTS)
323 @if test -e ../../lib/@WX_LIBRARY_LINK1@; then rm -f ../../lib/@WX_LIBRARY_LINK1@; fi
324 @if test -e ../../lib/@WX_LIBRARY_LINK2@; then rm -f ../../lib/@WX_LIBRARY_LINK2@; fi
325 @if test -e ../../lib/@WX_LIBRARY_LINK3@; then rm -f ../../lib/@WX_LIBRARY_LINK3@; fi
326 $(LN_S) @WX_TARGET_LIBRARY@ ../../lib/@WX_LIBRARY_LINK1@
327 $(LN_S) @WX_TARGET_LIBRARY@ ../../lib/@WX_LIBRARY_LINK2@
328 $(LN_S) @WX_TARGET_LIBRARY@ ../../lib/@WX_LIBRARY_LINK3@
329
330 $(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
331
332 parser.o: parser.c lexer.c
333 $(CCLEX) -c $(CFLAGS) -o $@ parser.c
334
335 parser.c: $(COMMDIR)/parser.y lexer.c
336 $(YACC) $(COMMDIR)/parser.y
337 @sed -e "s;$(COMMDIR)/y.tab.c;parser.y;g" < y.tab.c | \
338 sed -e "s/BUFSIZ/5000/g" | \
339 sed -e "s/YYLMAX 200/YYLMAX 5000/g" | \
340 sed -e "s/yy/PROIO_yy/g" | \
341 sed -e "s/input/PROIO_input/g" | \
342 sed -e "s/unput/PROIO_unput/g" > parser.c
343 @$(RM) y.tab.c
344
345 lexer.c: $(COMMDIR)/lexer.l
346 $(LEX) $(COMMDIR)/lexer.l
347 @sed -e "s;$(COMMDIR)/lex.yy.c;lexer.l;g" < lex.yy.c | \
348 sed -e "s/yy/PROIO_yy/g" | \
349 sed -e "s/input/PROIO_input/g" | \
350 sed -e "s/unput/PROIO_unput/g" > lexer.c
351 @$(RM) lex.yy.c
352
353 samples: $(OBJECTS)
354 @if test ! -e ../../samples/dialog/dialog.cpp; \
355 then cp -f -r $(WXDIR)/samples ../..; \
356 fi
357
358 install: @WX_TARGET_LIBRARY@
359 #$ ExpandList("WXINSTALLWX");
360
361 clean:
362 rm -f *.o
363 rm -f *.lo
364 rm -f parser.c
365 rm -f lexer.c
366 rm -f *.a
367 rm -f *.la
368
369 cleanall: clean