]> git.saurik.com Git - wxWidgets.git/blame - distrib/msw/tmake/vc.t
Trim trailing spaces from key names when parsing
[wxWidgets.git] / distrib / msw / tmake / vc.t
CommitLineData
f2071dda
VZ
1#!#############################################################################
2#! File: vc.t
3#! Purpose: tmake template file from which makefile.vc is generated by running
4#! tmake -t vc wxwin.pro -o makefile.vc
5#! Author: Vadim Zeitlin
6#! Created: 14.07.99
7#! Version: $Id$
8#!#############################################################################
f2071dda
VZ
9#${
10 #! include the code which parses filelist.txt file and initializes
11 #! %wxCommon, %wxGeneric and %wxMSW hashes.
12 IncludeTemplate("filelist.t");
13
14 #! now transform these hashes into $project tags
15 foreach $file (sort keys %wxGeneric) {
b9cc8004
VZ
16 next if $wxGeneric{$file} =~ /\bU\b/;
17
f2071dda
VZ
18 my $tag = "";
19 if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) {
20 $tag = "WXNONESSENTIALOBJS";
21 }
22 else {
23 $tag = "WXGENERICOBJS";
24 }
25
26 $file =~ s/cp?p?$/obj/;
51f5cff3 27 $project{$tag} .= "\$(GENDIR)\\\$D\\" . $file . " "
f2071dda
VZ
28 }
29
30 foreach $file (sort keys %wxCommon) {
15ce54da 31 next if $wxCommon{$file} =~ /\b(16|U)\b/;
f2071dda
VZ
32
33 $file =~ s/cp?p?$/obj/;
51f5cff3 34 $project{"WXCOMMONOBJS"} .= "\$(COMMDIR)\\\$D\\" . $file . " "
f2071dda
VZ
35 }
36
37 foreach $file (sort keys %wxMSW) {
38 next if $wxMSW{$file} =~ /\b16\b/;
39
6a008b33 40 #! OLE files live in a subdir
51f5cff3
VZ
41 if( $wxMSW{$file} =~ /\bO\b/ ) {
42 $project{"WXMSWOBJS"} .= '$(OLEDIR)';
43 } else {
44 $project{"WXMSWOBJS"} .= '$(MSWDIR)';
45 }
f2071dda 46 $file =~ s/cp?p?$/obj/;
51f5cff3 47 $project{"WXMSWOBJS"} .= '\\$D\\' . $file . " ";
f2071dda 48 }
2131a664
VS
49
50 foreach $file (sort keys %wxHTML) {
51 next if $wxHTML{$file} =~ /\b16\b/;
52
53 $file =~ s/cp?p?$/obj/;
51f5cff3 54 $project{"WXHTMLOBJS"} .= "\$(HTMLDIR)\\\$D\\" . $file . " "
2131a664
VS
55 }
56
f2071dda 57#$}
2417bf69 58# This file was automatically generated by tmake
f2071dda
VZ
59# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
60
61# File: makefile.vc
62# Author: Julian Smart
63# Created: 1997
64# Updated:
65# Copyright: (c) 1997, Julian Smart
66#
67# "%W% %G%"
68#
69# Makefile : Builds wxWindows library wx.lib for VC++ (32-bit)
70# Arguments:
71#
72# FINAL=1 argument to nmake to build version with no debugging info.
73# dll builds a library (wxdll.lib) suitable for creating DLLs
74#
75!include <..\makevc.env>
76
77THISDIR=$(WXWIN)\src\msw
78
79!if "$(WXMAKINGDLL)" == "1"
80LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll
f2071dda
VZ
81!else
82LIBTARGET=$(WXLIB)
f2071dda
VZ
83!endif
84
f2071dda
VZ
85# This one overrides the others, to be consistent with the settings in setup.h
86MINIMAL_WXWINDOWS_SETUP=0
87
88PERIPH_LIBS=
89PERIPH_TARGET=
90PERIPH_CLEAN_TARGET=
91
3ca6a5f0
BP
92# Set to 0 if not using GLCanvas (only affects DLL build)
93USE_GLCANVAS=1
94
c3f64df2 95# Set to 1 if you are using MSVC 5
a8bf5281
MB
96USE_MSVC_5=0
97
f2071dda
VZ
98# These are absolute paths, so that the compiler
99# generates correct __FILE__ symbols for debugging.
100# Otherwise you don't be able to double-click on a memory
101# error to load that file.
102GENDIR=$(WXDIR)\src\generic
103COMMDIR=$(WXDIR)\src\common
104OLEDIR=ole
105MSWDIR=$(WXDIR)\src\msw
106DOCDIR = $(WXDIR)\docs
107HTMLDIR = $(WXDIR)\src\html
9e3cb9ee
JS
108JPEGDIR = $(WXDIR)\src\jpeg
109TIFFDIR = $(WXDIR)\src\tiff
2431209c
RD
110REGEXDIR = $(WXDIR)\src\regex
111
f2071dda 112
51f5cff3 113{$(GENDIR)}.cpp{$(GENDIR)\$D}.obj:
f2071dda
VZ
114 cl @<<
115$(CPPFLAGS) /Fo$@ /c /Tp $<
116<<
117
51f5cff3 118{$(COMMDIR)}.cpp{$(COMMDIR)\$D}.obj:
f2071dda
VZ
119 cl @<<
120$(CPPFLAGS) /Fo$@ /c /Tp $<
121<<
122
51f5cff3 123{$(COMMDIR)}.c{$(COMMDIR)\$D}.obj:
9b73db3c 124 cl @<<
cc9efb9b 125$(CPPFLAGS2) /Fo$@ /c /Tc $<
9b73db3c
VZ
126<<
127
51f5cff3 128{$(MSWDIR)}.cpp{$(MSWDIR)\$D}.obj:
f2071dda
VZ
129 cl @<<
130$(CPPFLAGS) /Fo$@ /c /Tp $<
131<<
132
51f5cff3 133{$(MSWDIR)}.c{$(MSWDIR)\$D}.obj:
e6a5dc94
RD
134 cl @<<
135$(CPPFLAGS2) /Fo$@ /c /Tc $<
136<<
137
51f5cff3 138{$(OLEDIR)}.cpp{$(OLEDIR)\$D}.obj:
f2071dda
VZ
139 cl @<<
140$(CPPFLAGS) /Fo$@ /c /Tp $<
141<<
142
51f5cff3 143{$(HTMLDIR)}.cpp{$(HTMLDIR)\$D}.obj:
f2071dda
VZ
144 cl @<<
145$(CPPFLAGS) /Fo$@ /c /Tp $<
146<<
147
148GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
149
150# These are generic things that don't need to be compiled on MSW,
151# but sometimes it's useful to do so for testing purposes.
152NONESSENTIALOBJS= #$ ExpandList("WXNONESSENTIALOBJS");
153
154COMMONOBJS = \
f2071dda
VZ
155 #$ ExpandList("WXCOMMONOBJS");
156
157MSWOBJS = #$ ExpandList("WXMSWOBJS");
158
2131a664
VS
159HTMLOBJS = #$ ExpandList("WXHTMLOBJS");
160
f2071dda
VZ
161
162# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
163# Add $(HTMLOBJS) if wanting wxHTML classes
e6a5dc94 164OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
f2071dda 165
0ddf7c0c 166ARCHINCDIR=$(WXDIR)\lib\$(_WXINC_BUILD)$(_WXINC_DLLSUFFIX)$(_WXINC_SUFFIX)$(LIBEXT)
b6ea61a5 167SETUP_H=$(ARCHINCDIR)\wx\setup.h
b3bd664a 168
f2071dda 169# Normal, static library
b3bd664a 170all: dirs $(SETUP_H) $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib jpeg tiff regex $(LIBTARGET)
f2071dda 171
b3bd664a
MB
172$(ARCHINCDIR)\wx:
173 mkdir $(ARCHINCDIR)
174 mkdir $(ARCHINCDIR)\wx
175
b311dc08
GT
176$(WXDIR)\include\wx\msw\setup.h:
177 cd $(WXDIR)\include\wx\msw
178 if not exist setup.h copy setup0.h setup.h
179 cd $(WXDIR)\src\msw
180
42dd647c 181$(SETUP_H): $(WXDIR)\include\wx\msw\setup.h
b3bd664a 182 copy $(WXDIR)\include\wx\msw\setup.h $@
f2071dda 183
b6ea61a5 184dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D $(JPEGDIR)\$D $(TIFFDIR)\$D $(REGEXDIR)\$D $(ARCHINCDIR)\wx $(WXDIR)\$D
f2071dda 185
f2071dda
VZ
186$D:
187 mkdir $D
188
189$(COMMDIR)\$D:
190 mkdir $(COMMDIR)\$D
191
192$(MSWDIR)\$D:
193 mkdir $(MSWDIR)\$D
194
195$(GENDIR)\$D:
196 mkdir $(GENDIR)\$D
197
198$(OLEDIR)\$D:
199 mkdir $(OLEDIR)\$D
200
201$(HTMLDIR)\$D:
202 mkdir $(HTMLDIR)\$D
203
9e3cb9ee
JS
204$(JPEGDIR)\$D:
205 mkdir $(JPEGDIR)\$D
206
207$(TIFFDIR)\$D:
208 mkdir $(TIFFDIR)\$D
209
2431209c
RD
210$(REGEXDIR)\$D:
211 mkdir $(REGEXDIR)\$D
212
b6ea61a5
RD
213$(WXDIR)\$D:
214 mkdir $(WXDIR)\$D
215
216
f2071dda
VZ
217# wxWindows library as DLL
218dll:
2417bf69 219 nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) UNICODE=$(UNICODE) MSLU=$(MSLU)
f2071dda
VZ
220
221cleandll:
2417bf69 222 nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME) UNICODE=$(UNICODE) MSLU=$(MSLU)
f2071dda
VZ
223
224# wxWindows + app as DLL. Only affects main.cpp.
225dllapp:
2417bf69 226 nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 UNICODE=$(UNICODE) MSLU=$(MSLU)
f2071dda
VZ
227
228# wxWindows + app as DLL, for Netscape plugin - remove DllMain.
229dllnp:
2417bf69 230 nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1 UNICODE=$(UNICODE) MSLU=$(MSLU)
f2071dda
VZ
231
232# Use this to make dummy.obj and generate a PCH.
233# You might use the dll target, then the pch target, in order to
234# generate a DLL, then a PCH/dummy.obj for compiling your applications with.
235#
236# Explanation: Normally, when compiling a static version of wx.lib, your dummy.obj/PCH
237# are associated with wx.lib. When using a DLL version of wxWindows, however,
238# the DLL is compiled without a PCH, so you only need it for compiling the app.
239# In fact headers are compiled differently depending on whether a DLL is being made
240# or an app is calling the DLL exported functionality (WXDLLEXPORT is different
241# in each case) so you couldn't use the same PCH.
242pch:
243 nmake -f makefile.vc pch1 WXUSINGDLL=1 FINAL=$(FINAL) NEW_WXLIBNAME=$(NEW_WXLIBNAME)
244
245pch1: dirs $(DUMMYOBJ)
246 echo $(DUMMYOBJ)
247
248!if "$(WXMAKINGDLL)" != "1"
249
250### Static library
251
b311dc08 252$(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS) $(PERIPH_LIBS)
f2071dda
VZ
253 -erase $(LIBTARGET)
254 $(implib) @<<
255-out:$@
256-machine:$(CPU)
b311dc08 257$(OBJECTS) $(DUMMYOBJ) $(PERIPH_LIBS)
f2071dda
VZ
258<<
259
260!else
261
262### Update the import library
263
264$(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS)
265 $(implib) @<<
266 -machine:$(CPU)
267 -def:wx.def
268 $(DUMMYOBJ) $(OBJECTS)
269 -out:$(WXDIR)\lib\$(WXLIBNAME).lib
270<<
271
bd53731e
RD
272!if "$(USE_GLCANVAS)" == "1"
273GL_LIBS=opengl32.lib glu32.lib
20a2bdc9 274# GL_LIBS_DELAY=/delayload:opengl32.dll
bd53731e
RD
275!endif
276
a8bf5281
MB
277!if "$(USE_MSVC_5)" == "1"
278# we are too big
279INCREMENTAL=/INCREMENTAL:NO
280DELAY_LOAD=
281!else
282INCREMENTAL=
283DELAY_LOAD=delayimp.lib \
284 /delayload:ws2_32.dll /delayload:advapi32.dll /delayload:user32.dll \
285 /delayload:gdi32.dll \
286 /delayload:comdlg32.dll /delayload:shell32.dll /delayload:comctl32.dll \
287 /delayload:ole32.dll \
288 /delayload:oleaut32.dll /delayload:rpcrt4.dll $(GL_LIBS_DELAY)
289!endif
290
f2071dda 291# Update the dynamic link library
a9221a95 292$(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS)
f2071dda 293 $(link) @<<
a8bf5281 294 $(LINKFLAGS) $(INCREMENTAL)
f2071dda 295 -out:$(WXDIR)\lib\$(WXLIBNAME).dll
c3f64df2 296 $(DUMMYOBJ) $(OBJECTS) $(MSLU_LIBS) $(guilibsdll) shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib odbc32.lib advapi32.lib winmm.lib $(GL_LIBS) $(WXDIR)\lib\png$(LIBEXT).lib $(WXDIR)\lib\zlib$(LIBEXT).lib $(WXDIR)\lib\jpeg$(LIBEXT).lib $(WXDIR)\lib\tiff$(LIBEXT).lib $(WXDIR)\lib\regex$(LIBEXT).lib $(DELAY_LOAD)
f2071dda
VZ
297<<
298
299!endif
300
9e85f5ec 301# /delayload:winmm.dll # Removed because it can cause a crash for some people
f2071dda
VZ
302
303########################################################
304# Windows-specific objects
305
b311dc08
GT
306$(DUMMYOBJ): $(DUMMY).$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(SETUP_H)
307 cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$(DUMMYOBJ) /c /Tp $(DUMMY).cpp
f2071dda 308
bf4d9b2b 309# Compile certain files with no optimization (some files cause a
7fee680b
JS
310# compiler crash for buggy versions of VC++, e.g. 4.0).
311# Don't forget to put FINAL=1 on the command line.
bf4d9b2b
JS
312noopt:
313 cl @<<
314$(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\datetime.obj /c /Tp $(COMMDIR)\datetime.cpp
315<<
316 cl @<<
317$(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\encconv.obj /c /Tp $(COMMDIR)\encconv.cpp
318<<
319 cl @<<
320$(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\fileconf.obj /c /Tp $(COMMDIR)\fileconf.cpp
669f7a11
JS
321<<
322 cl @<<
323$(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\hash.obj /c /Tp $(COMMDIR)\hash.cpp
bf4d9b2b
JS
324<<
325 cl @<<
326$(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\textfile.obj /c /Tp $(COMMDIR)\textfile.cpp
327<<
328 cl @<<
329$(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\choicdgg.obj /c /Tp $(GENDIR)\choicdgg.cpp
330<<
331 cl @<<
332$(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\grid.obj /c /Tp $(GENDIR)\grid.cpp
669f7a11
JS
333<<
334 cl @<<
335$(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\gridsel.obj /c /Tp $(GENDIR)\gridsel.cpp
bf4d9b2b
JS
336<<
337 cl @<<
338$(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\logg.obj /c /Tp $(GENDIR)\logg.cpp
bf4d9b2b
JS
339<<
340 cl @<<
341$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\clipbrd.obj /c /Tp $(MSWDIR)\clipbrd.cpp
342<<
343 cl @<<
344$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\control.obj /c /Tp $(MSWDIR)\control.cpp
345<<
346 cl @<<
347$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\listbox.obj /c /Tp $(MSWDIR)\listbox.cpp
348<<
349 cl @<<
350$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\mdi.obj /c /Tp $(MSWDIR)\mdi.cpp
351<<
352 cl @<<
353$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\menu.obj /c /Tp $(MSWDIR)\menu.cpp
354<<
355 cl @<<
356$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\notebook.obj /c /Tp $(MSWDIR)\notebook.cpp
357<<
358 cl @<<
359$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\tbar95.obj /c /Tp $(MSWDIR)\tbar95.cpp
360<<
361 cl @<<
362$(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\treectrl.obj /c /Tp $(MSWDIR)\treectrl.cpp
363<<
364 cl @<<
365$(CPPFLAGS2) /Od /Fo$(HTMLDIR)\$D\helpfrm.obj /c /Tp $(HTMLDIR)\helpfrm.cpp
366<<
367
51f5cff3 368$(COMMDIR)\$D\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
f2071dda 369 cl @<<
51f5cff3 370$(CPPFLAGS2) /c $(COMMDIR)\y_tab.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
f2071dda
VZ
371<<
372
51f5cff3
VZ
373$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
374 copy "$(COMMDIR)"\dosyacc.c "$(COMMDIR)"\y_tab.c
f2071dda 375
51f5cff3
VZ
376$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
377 copy "$(COMMDIR)"\doslex.c "$(COMMDIR)"\lex_yy.c
f2071dda 378
b3bd664a 379$(OBJECTS): $(SETUP_H)
f2071dda 380
51f5cff3 381$(COMMDIR)\$D\unzip.obj: $(COMMDIR)\unzip.c
f2071dda
VZ
382 cl @<<
383$(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@
384<<
385
386# Peripheral components
387
388png:
389 cd $(WXDIR)\src\png
0ddf7c0c 390 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) UNICODE=0
f2071dda
VZ
391 cd $(WXDIR)\src\msw
392
393clean_png:
394 cd $(WXDIR)\src\png
395 nmake -f makefile.vc clean
396 cd $(WXDIR)\src\msw
397
398zlib:
399 cd $(WXDIR)\src\zlib
0ddf7c0c 400 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) UNICODE=0
f2071dda
VZ
401 cd $(WXDIR)\src\msw
402
403clean_zlib:
404 cd $(WXDIR)\src\zlib
405 nmake -f makefile.vc clean
406 cd $(WXDIR)\src\msw
407
408jpeg:
409 cd $(WXDIR)\src\jpeg
0ddf7c0c 410 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) UNICODE=0 all
f2071dda
VZ
411 cd $(WXDIR)\src\msw
412
413clean_jpeg:
414 cd $(WXDIR)\src\jpeg
415 nmake -f makefile.vc clean
416 cd $(WXDIR)\src\msw
417
5ea6dbbf
RD
418tiff:
419 cd $(WXDIR)\src\tiff
0ddf7c0c 420 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) UNICODE=0 all
5ea6dbbf
RD
421 cd $(WXDIR)\src\msw
422
423clean_tiff:
424 cd $(WXDIR)\src\tiff
425 nmake -f makefile.vc clean
426 cd $(WXDIR)\src\msw
427
8e673075
RD
428regex:
429 cd $(WXDIR)\src\regex
0ddf7c0c 430 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) UNICODE=0 all
8e673075
RD
431 cd $(WXDIR)\src\msw
432
433clean_regex:
434 cd $(WXDIR)\src\regex
435 nmake -f makefile.vc clean
436 cd $(WXDIR)\src\msw
437
f2071dda
VZ
438rcparser:
439 cd $(WXDIR)\utils\rcparser\src
440 nmake -f makefile.vc FINAL=$(FINAL)
441 cd $(WXDIR)\src\msw
442
8e673075 443cleanall: clean clean_png clean_zlib clean_jpeg clean_tiff clean_regex
0ddf7c0c
MB
444 -erase ..\..\lib\$(WXLIBNAME).dll
445 -erase ..\..\lib\$(WXLIBNAME).lib
446 -erase ..\..\lib\$(WXLIBNAME).exp
447 -erase ..\..\lib\$(WXLIBNAME).pdb
448 -erase ..\..\lib\$(WXLIBNAME).ilk
50a5c3f3
RD
449
450
451clean: $(PERIPH_CLEAN_TARGET)
452 -erase $(LIBTARGET)
453 -erase $(WXDIR)\lib\$(WXLIBNAME).pdb
f2071dda
VZ
454 -erase *.pdb
455 -erase *.sbr
456 -erase $(WXLIBNAME).pch
e84d9dfa
RD
457 -erase $(WXDIR)\$D\$(PCH)
458 -erase $(WXDIR)\$D\*.pdb
459 -erase $(WXDIR)\$D\*.obj
f2071dda
VZ
460 -erase $(GENDIR)\$D\*.obj
461 -erase $(GENDIR)\$D\*.pdb
462 -erase $(GENDIR)\$D\*.sbr
463 -erase $(COMMDIR)\$D\*.obj
464 -erase $(COMMDIR)\$D\*.pdb
465 -erase $(COMMDIR)\$D\*.sbr
7fee680b 466 -erase $(COMMDIR)\y_tab.c
f2071dda
VZ
467 -erase $(COMMDIR)\lex_yy.c
468 -erase $(MSWDIR)\$D\*.obj
469 -erase $(MSWDIR)\$D\*.sbr
470 -erase $(MSWDIR)\$D\*.pdb
9e3cb9ee 471 -erase $(MSWDIR)\$D\*.pch
f2071dda
VZ
472 -erase $(OLEDIR)\$D\*.obj
473 -erase $(OLEDIR)\$D\*.sbr
474 -erase $(OLEDIR)\$D\*.pdb
d66d9d5b
JS
475 -erase $(HTMLDIR)\$D\*.obj
476 -erase $(HTMLDIR)\$D\*.sbr
477 -erase $(HTMLDIR)\$D\*.pdb
9e3cb9ee
JS
478 -erase $(JPEGDIR)\$D\*.obj
479 -erase $(JPEGDIR)\$D\*.sbr
480 -erase $(JPEGDIR)\$D\*.idb
481 -erase $(JPEGDIR)\$D\*.pdb
482 -erase $(TIFFDIR)\$D\*.obj
483 -erase $(TIFFDIR)\$D\*.sbr
484 -erase $(TIFFDIR)\$D\*.pdb
485 -erase $(TIFFDIR)\$D\*.idb
f2071dda 486 -rmdir $(D)
9e3cb9ee
JS
487 -rmdir $(GENDIR)\$(D)
488 -rmdir $(COMMDIR)\$(D)
489 -rmdir $(MSWDIR)\$(D)
490 -rmdir $(OLEDIR)\$(D)
491 -rmdir $(HTMLDIR)\$(D)
492 -rmdir $(JPEGDIR)\$(D)
493 -rmdir $(TIFFDIR)\$(D)
e84d9dfa 494 -rmdir $(WXDIR)\$D
f2071dda 495
f2071dda 496# Making documents
ab85e6cd 497docs: allhlp allhtml allpdfrtf allhtb allhtmlhelp
f2071dda 498alldocs: docs
1a3aa77f 499hlp: wxhlp
f2071dda 500wxhlp: $(DOCDIR)/winhelp/wx.hlp
f2071dda 501rtf: $(DOCDIR)/winhelp/wx.rtf
f2071dda 502pdfrtf: $(DOCDIR)/pdf/wx.rtf
1a3aa77f 503html: wxhtml
f6bcfd97 504htb: $(DOCDIR)\htb\wx.htb
f2071dda 505wxhtml: $(DOCDIR)\html\wx\wx.htm
f6bcfd97 506htmlhelp: $(DOCDIR)\htmlhelp\wx.chm
6e8515a3 507ps: wxps
f2071dda 508wxps: $(WXDIR)\docs\ps\wx.ps
f2071dda 509
1a3aa77f 510allhlp: wxhlp
46c81560
JS
511
512# cd $(WXDIR)\utils\dialoged\src
513# nmake -f makefile.vc hlp
514# cd $(WXDIR)\utils\tex2rtf\src
515# nmake -f makefile.vc hlp
516# cd $(WXDIR)\contrib\src\fl
517# nmake -f makefile.vc hlp
518# cd $(THISDIR)
f2071dda 519
1a3aa77f 520allhtml: wxhtml
46c81560
JS
521
522# cd $(WXDIR)\utils\dialoged\src
523# nmake -f makefile.vc html
524# cd $(WXDIR)\utils\tex2rtf\src
525# nmake -f makefile.vc html
526# cd $(WXDIR)\contrib\src\fl
527# cd $(THISDIR)
ab85e6cd
JS
528
529allhtmlhelp: htmlhelp
46c81560
JS
530
531# cd $(WXDIR)\utils\dialoged\src
532# nmake -f makefile.vc htmlhelp
533# cd $(WXDIR)\utils\tex2rtf\src
534# nmake -f makefile.vc htmlhelp
535# cd $(WXDIR)\contrib\src\fl
536# nmake -f makefile.vc htmlhelp
537# cd $(THISDIR)
ab85e6cd
JS
538
539allhtb: htb
46c81560
JS
540
541# cd $(WXDIR)\utils\dialoged\src
542# nmake -f makefile.vc htb
543# cd $(WXDIR)\utils\tex2rtf\src
544# nmake -f makefile.vc htb
545# cd $(WXDIR)\contrib\src\fl
546# nmake -f makefile.vc htb
547# cd $(THISDIR)
f2071dda 548
1a3aa77f 549allps: wxps referencps
f2071dda
VZ
550 cd $(WXDIR)\utils\dialoged\src
551 nmake -f makefile.vc ps
ab85e6cd
JS
552 cd $(WXDIR)\utils\tex2rtf\src
553 nmake -f makefile.vc ps
6e8515a3
JS
554 cd $(WXDIR)\contrib\src\fl
555 nmake -f makefile.vc ps
f2071dda
VZ
556 cd $(THISDIR)
557
1a3aa77f 558allpdfrtf: pdfrtf
46c81560
JS
559# cd $(WXDIR)\utils\dialoged\src
560# nmake -f makefile.vc pdfrtf
561# cd $(WXDIR)\utils\tex2rtf\src
562# nmake -f makefile.vc pdfrtf
563# cd $(WXDIR)\contrib\src\fl
564# nmake -f makefile.vc pdfrtf
565# cd $(THISDIR)
f2071dda 566
f2071dda
VZ
567$(DOCDIR)/winhelp/wx.hlp: $(DOCDIR)/latex/wx/wx.rtf $(DOCDIR)/latex/wx/wx.hpj
568 cd $(DOCDIR)/latex/wx
569 -erase wx.ph
570 hc wx
f485492a
JS
571 -erase $(DOCDIR)\winhelp\wx.hlp
572 -erase $(DOCDIR)\winhelp\wx.cnt
f2071dda
VZ
573 move wx.hlp $(DOCDIR)\winhelp\wx.hlp
574 move wx.cnt $(DOCDIR)\winhelp\wx.cnt
575 cd $(THISDIR)
576
f2071dda
VZ
577$(DOCDIR)/latex/wx/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex
578 cd $(DOCDIR)\latex\wx
579 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/latex/wx/wx.rtf -twice -winhelp
580 cd $(THISDIR)
581
f2071dda
VZ
582$(DOCDIR)/pdf/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex
583 cd $(DOCDIR)\latex\wx
79bc2382
PA
584 -copy *.wmf $(DOCDIR)\pdf
585 -copy *.bmp $(DOCDIR)\pdf
f2071dda
VZ
586 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/pdf/wx.rtf -twice -rtf
587 cd $(THISDIR)
588
2b5f62a0
VZ
589# This target does two sets of HTML: one using a style sheet, for
590# the purposes of the CHM file, and one without.
f2071dda
VZ
591$(DOCDIR)\html\wx\wx.htm: $(DOCDIR)\latex\wx\classes.tex $(DOCDIR)\latex\wx\body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)\latex\wx\manual.tex
592 cd $(DOCDIR)\latex\wx
593 -mkdir $(DOCDIR)\html\wx
f6bcfd97 594 copy *.gif $(DOCDIR)\html\wx
f2071dda 595 -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\wx\manual.tex $(DOCDIR)\html\wx\wx.htm -twice -html
2b5f62a0
VZ
596 -mkdir $(DOCDIR)\mshtml
597 -mkdir $(DOCDIR)\mshtml\wx
598 copy *.gif $(DOCDIR)\mshtml\wx
599 -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\wx\manual.tex $(DOCDIR)\mshtml\wx\wx.htm -twice -html -macros $(DOCDIR)\latex\wx\tex2rtf_css.ini
f2071dda
VZ
600 -erase $(DOCDIR)\html\wx\*.con
601 -erase $(DOCDIR)\html\wx\*.ref
602 -erase $(DOCDIR)\latex\wx\*.con
603 -erase $(DOCDIR)\latex\wx\*.ref
604 cd $(THISDIR)
605
2b5f62a0
VZ
606$(DOCDIR)\htmlhelp\wx.chm : $(DOCDIR)\html\wx\wx.htm $(DOCDIR)\mshtml\wx\wx.htm $(DOCDIR)\mshtml\wx\wx.hhp
607 cd $(DOCDIR)\mshtml\wx
608 copy $(DOCDIR)\latex\wx\wx.css .
f2071dda 609 -hhc wx.hhp
f6bcfd97 610 -mkdir ..\..\htmlhelp
f485492a 611 -erase $(DOCDIR)\htmlhelp\wx.chm
f6bcfd97 612 move wx.chm ..\..\htmlhelp
f2071dda
VZ
613 cd $(THISDIR)
614
f2071dda
VZ
615$(WXDIR)\docs\latex\wx\manual.dvi: $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/manual.tex
616 cd $(WXDIR)\docs\latex\wx
617 -latex manual
618 -latex manual
619 -makeindx manual
620 -bibtex manual
621 -latex manual
622 -latex manual
623 cd $(THISDIR)
624
f2071dda
VZ
625$(WXDIR)\docs\ps\wx.ps: $(WXDIR)\docs\latex\wx\manual.dvi
626 cd $(WXDIR)\docs\latex\wx
627 -dvips32 -o wx.ps manual
628 move wx.ps $(WXDIR)\docs\ps\wx.ps
629 cd $(THISDIR)
630
f2071dda
VZ
631$(WXDIR)\docs\latex\wx\referenc.dvi: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/referenc.tex
632 cd $(WXDIR)\docs\latex\wx
633 -latex referenc
634 -latex referenc
635 -makeindx referenc
636 -bibtex referenc
637 -latex referenc
638 -latex referenc
639 cd $(THISDIR)
640
641$(WXDIR)\docs\ps\referenc.ps: $(WXDIR)\docs\latex\wx\referenc.dvi
642 cd $(WXDIR)\docs\latex\wx
643 -dvips32 -o referenc.ps referenc
644 move referenc.ps $(WXDIR)\docs\ps\referenc.ps
645 cd $(THISDIR)
646
7fee680b
JS
647# An htb file is a zip file containing the .htm, .gif, .hhp, .hhc and .hhk
648# files, renamed to htb.
649# This can then be used with e.g. helpview.
650# Optionally, a cached version of the .hhp file can be generated with hhp2cached.
f6bcfd97 651$(DOCDIR)\htb\wx.htb: $(DOCDIR)\html\wx\wx.htm
7fee680b 652 cd $(WXDIR)\docs\html\wx
f1d93f0b
JS
653 -erase wx.zip wx.htb
654 zip wx.zip *.htm *.gif *.hhp *.hhc *.hhk
f6bcfd97
BP
655 -mkdir $(DOCDIR)\htb
656 move wx.zip $(DOCDIR)\htb\wx.htb
7fee680b
JS
657 cd $(THISDIR)
658
f2071dda
VZ
659# In order to force document reprocessing
660touchmanual:
661 -touch $(WXDIR)\docs\latex\wx\manual.tex
662
663updatedocs: touchmanual alldocs
664
f6bcfd97 665cleandocs:
f1d93f0b
JS
666 -erase $(DOCDIR)\winhelp\wx.hlp
667 -erase $(DOCDIR)\winhelp\wx.cnt
668 -erase $(DOCDIR)\html\wx\*.htm
669 -erase $(DOCDIR)\pdf\wx.rtf
670 -erase $(DOCDIR)\latex\wx\wx.rtf
671 -erase $(DOCDIR)\latex\wx\WX.PH
672 -erase $(DOCDIR)\htmlhelp\wx.chm
673 -erase $(DOCDIR)\htb\wx.htb
f6bcfd97 674
f2071dda
VZ
675# Start Word, running the GeneratePDF macro. MakeManual.dot should be in the
676# Office StartUp folder, and PDFMaker should be installed.
677updatepdf: # touchmanual pdfrtf
678 start $(WAITFLAG) "winword d:\wx2\wxWindows\docs\latex\pdf\wx.rtf /mGeneratePDF"
679
9be9b974
RD
680
681MFTYPE=vc
682makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
683 cd $(WXWIN)\distrib\msw\tmake
684 tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
685 copy makefile.$(MFTYPE) $(WXWIN)\src\msw
686