]> git.saurik.com Git - wxWidgets.git/blame - distrib/msw/tmake/g95.t
Added GSocket motif (it compiles but I didn't tested it)
[wxWidgets.git] / distrib / msw / tmake / g95.t
CommitLineData
f2071dda
VZ
1#!#############################################################################
2#! File: g95.t
3#! Purpose: tmake template file from which makefile.g95 is generated by running
4#! tmake -t g95 wxwin.pro -o makefile.g95
5#! Author: Vadim Zeitlin
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 and %wxMSW hashes.
13 IncludeTemplate("filelist.t");
14
15 #! now transform these hashes into $project tags
16 foreach $file (sort keys %wxGeneric) {
17 #! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations,
18 #! so take the generic version
2662e49e 19 if ( $wxGeneric{$file} =~ /\b(PS|G|U|16)\b/ ) {
f2071dda
VZ
20 next unless $file =~ /^dirdlgg\./;
21 }
22
23 $file =~ s/cp?p?$/\$(OBJSUFF)/;
2662e49e 24 $project{"WXGENERICOBJS"} .= '$(GENDIR)/' . $file . " "
f2071dda
VZ
25 }
26
27 foreach $file (sort keys %wxCommon) {
2662e49e 28 next if $wxCommon{$file} =~ /\b(16)\b/;
f2071dda
VZ
29
30 #! needs extra files (sql*.h) so not compiled by default.
31 next if $file =~ /^odbc\./;
32
33 $file =~ s/cp?p?$/\$(OBJSUFF)/;
2662e49e 34 $project{"WXCOMMONOBJS"} .= '$(COMMDIR)/' . $file . " "
f2071dda
VZ
35 }
36
37 foreach $file (sort keys %wxMSW) {
38 #! Mingw32 doesn't have the OLE headers and has some troubles with
39 #! socket code
2662e49e
RR
40 next if $wxMSW{$file} =~ /\b(O|16)\b/;
41
42 #! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations,
43 next if $file =~ /^dirdlg\./;
f2071dda
VZ
44
45 $file =~ s/cp?p?$/\$(OBJSUFF)/;
46 $project{"WXMSWOBJS"} .= $file . " "
47 }
48#$}
49
50# This file was automatically generated by tmake at #$ Now()
51# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G95.T!
52
53#
54# File: makefile.unx
55# Author: Julian Smart
56# Created: 1993
57# Updated:
58# Copyright:(c) 1993, AIAI, University of Edinburgh
59#
60# "@(#)makefile.unx 1.2 5/9/94"
61#
62# Makefile for libwx.a
63
64# Replace this with your own path if necessary
65WXDIR = ../..
66
67# All common UNIX compiler flags and options are now in
68# this central makefile.
69include $(WXDIR)/src/makeg95.env
70
71# IMPORTANT: if you want to link in subsidiary libraries,
72# required for some optional parts of wxWindows, you must
73# set EXTRATARGETS and EXTRAOBJS to match the settings in wx_setup.h.
74# Having done this, you won't have to worry about linking them
75# into each application.
76#
77# Here's the full list.
78# prologio: Required if using the wxWindows resource facility
79# USE_WX_RESOURCES should be 1
80# xmgauge: Gauge class (required for Motif only)
81# USE_GAUGE should be 1
82# xpm: XPM pixmap support
83# USE_XPM_IN_X should be 1
84# wxstring: string class
85# USE_GNU_WXSTRING should be 1
86#
87# Unfortunately, 'ar' doesn't like combining objects and libraries,
88# so we must identify all the objects from the subordinate libraries. Yuck!
89XPMSRC=../../contrib/wxxpm/objects$(GUISUFFIX)
90XPMOBJS=$(XPMSRC)/crbuffri.$(OBJSUFF) $(XPMSRC)/crbuffrp.$(OBJSUFF) $(XPMSRC)/crdatfri.$(OBJSUFF) $(XPMSRC)/crdatfrp.$(OBJSUFF)\
91 $(XPMSRC)/create.$(OBJSUFF) $(XPMSRC)/crifrbuf.$(OBJSUFF) $(XPMSRC)/crifrdat.$(OBJSUFF) $(XPMSRC)/crpfrbuf.$(OBJSUFF) $(XPMSRC)/crpfrdat.$(OBJSUFF)\
92 $(XPMSRC)/data.$(OBJSUFF) $(XPMSRC)/hashtab.$(OBJSUFF) $(XPMSRC)/misc.$(OBJSUFF) $(XPMSRC)/parse.$(OBJSUFF) $(XPMSRC)/rdftodat.$(OBJSUFF)\
93 $(XPMSRC)/rdftoi.$(OBJSUFF) $(XPMSRC)/rdftop.$(OBJSUFF) $(XPMSRC)/rgb.$(OBJSUFF) $(XPMSRC)/scan.$(OBJSUFF) $(XPMSRC)/simx.$(OBJSUFF)\
94 $(XPMSRC)/wrffrdat.$(OBJSUFF) $(XPMSRC)/wrffri.$(OBJSUFF) $(XPMSRC)/wrffrp.$(OBJSUFF)
95
96# Subordinate library possibilities
97
98EXTRAOBJS=
99
100GENDIR=../generic
101COMMDIR=../common
102XPMDIR=../xpm
103OLEDIR=ole
104MSWDIR=.
105
106DOCDIR = $(WXDIR)\docs
107
108GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
109
110COMMONOBJS = \
111 $(COMMDIR)/y_tab.$(OBJSUFF) \
112 #$ ExpandList("WXCOMMONOBJS");
113
114MSWOBJS = #$ ExpandList("WXMSWOBJS");
115
116XPMOBJECTS = $(XPMDIR)/crbuffri.o\
117 $(XPMDIR)/crdatfri.o\
118 $(XPMDIR)/create.o $(XPMDIR)/crifrbuf.o\
119 $(XPMDIR)/crifrdat.o\
120 $(XPMDIR)/data.o\
121 $(XPMDIR)/hashtab.o $(XPMDIR)/misc.o\
122 $(XPMDIR)/parse.o $(XPMDIR)/rdftodat.o\
123 $(XPMDIR)/rdftoi.o\
124 $(XPMDIR)/rgb.o $(XPMDIR)/scan.o\
125 $(XPMDIR)/simx.o $(XPMDIR)/wrffrdat.o\
126 $(XPMDIR)/wrffrp.o $(XPMDIR)/wrffri.o
127
128OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) # $(XPMOBJECTS)
129
130all: $(OBJECTS) $(WXLIB)
131
132base:
133 cd $(WXDIR)/src/common; $(MAKE) -f makefile.g95 GUI=$(GUI) GUISUFFIX=$(GUISUFFIX) CC=$(CC)\
134 OPTIONS='$(OPTIONS)' DEBUG='$(DEBUG)' DEBUGFLAGS='$(DEBUGFLAGS)' WARN='$(WARN)' XLIB='$(XLIB)' XINCLUDE='$(XINCLUDE)'
135
136
137$(WXLIB): $(OBJECTS) $(EXTRAOBJS)
138 ar $(AROPTIONS) $@ $(EXTRAOBJS) $(OBJECTS)
139 $(RANLIB) $@
140
141$(OBJECTS): $(WXINC)/wx/defs.h $(WXINC)/wx/object.h $(WXINC)/wx/setup.h
142
143$(COMMDIR)/y_tab.$(OBJSUFF): $(COMMDIR)/y_tab.c $(COMMDIR)/lex_yy.c
6a570331
RR
144 $(CCLEX) -c $(CPPFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS -o $@ $(COMMDIR)/y_tab.c
145
146$(COMMDIR)/y_tab.c: $(COMMDIR)/dosyacc.c
147 copy ..\common\dosyacc.c ..\common\y_tab.c
148
149$(COMMDIR)/lex_yy.c: $(COMMDIR)/doslex.c
150 copy ..\common\doslex.c ..\common\lex_yy.c
f2071dda
VZ
151
152# Replace lex with flex if you run into compilation
153# problems with lex_yy.c. See also note about LEX_SCANNER
154# above.
6a570331
RR
155# $(COMMDIR)/lex_yy.c: $(COMMDIR)/lexer.l
156# $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l
157#
f2071dda
VZ
158# Try one of these if the above line doesn't work.
159# Alternative syntax (1)
160# $(LEX) -t -L $(COMMDIR)/lexer.l > $(COMMDIR)/lex_yy.c
161# Alternative syntax (2)
162# $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l
6a570331 163#
f2071dda
VZ
164# sed -e "s/BUFSIZ/5000/g" < lex.yy.c | \
165# sed -e "s/yyoutput(c)/void yyoutput(c)/g" | \
166# sed -e "s/YYLMAX 200/YYLMAX 5000/g" > lex_yy.c
167# rm -f lex.yy.c
6a570331 168#
f2071dda
VZ
169# Replace yacc with bison if you run into compilation
170# problems with y_tab.c.
6a570331
RR
171#
172# $(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y
173# $(YACC) -o $(COMMDIR)/y_tab.c $(COMMDIR)/parser.y
174#
f2071dda
VZ
175# If you use e.g. gcc on Unix, uncomment these lines
176# and comment out the above.
6a570331 177#
f2071dda
VZ
178# $(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y
179# $(YACC) $(COMMDIR)/parser.y
180# mv y.tab.c $(COMMDIR)/y_tab.c
181
182# Extra targets
183rcparser:
184 cd $(WXDIR)/utils/rcparser/src; $(MAKE) -f makefile.g95
185 cd $(WXDIR)/src/msw
186
187clean_rcp:
188 cd $(WXDIR)/utils/rcparser/src; $(MAKE) -f makefile.g95 clean
189 cd $(WXDIR)/src/msw
190
191clean:
6a570331
RR
192 -erase *.o
193 -erase core
194 -erase ..\common\y_tab.c
195 -erase ..\common\lex_yy.c
196 -erase ..\common\*.o
197 -erase ..\generic\*.o
198 -erase ..\..\lib\libwx$(GUISUFFIX).a
f2071dda
VZ
199
200cleanall: clean
201