]> git.saurik.com Git - wxWidgets.git/blob - src/msw/makefile.vc
nicer version compilation fix for wxUSE_WCHAR_T=0 (why should we duplicate definition...
[wxWidgets.git] / src / msw / makefile.vc
1 # This file was automatically generated by tmake at 13:52, 2001/08/06
2 # DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
3
4 # File: makefile.vc
5 # Author: Julian Smart
6 # Created: 1997
7 # Updated:
8 # Copyright: (c) 1997, Julian Smart
9 #
10 # "%W% %G%"
11 #
12 # Makefile : Builds wxWindows library wx.lib for VC++ (32-bit)
13 # Arguments:
14 #
15 # FINAL=1 argument to nmake to build version with no debugging info.
16 # dll builds a library (wxdll.lib) suitable for creating DLLs
17 #
18 !include <..\makevc.env>
19
20 THISDIR=$(WXWIN)\src\msw
21
22 !if "$(WXMAKINGDLL)" == "1"
23 LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll
24 DUMMYOBJ=$D\dummydll.obj
25 !else
26 LIBTARGET=$(WXLIB)
27 DUMMYOBJ=$D\dummy.obj
28 !endif
29
30 # This one overrides the others, to be consistent with the settings in setup.h
31 MINIMAL_WXWINDOWS_SETUP=0
32
33 PERIPH_LIBS=
34 PERIPH_TARGET=
35 PERIPH_CLEAN_TARGET=
36
37 # Set to 0 if not using GLCanvas (only affects DLL build)
38 USE_GLCANVAS=1
39
40 # These are absolute paths, so that the compiler
41 # generates correct __FILE__ symbols for debugging.
42 # Otherwise you don't be able to double-click on a memory
43 # error to load that file.
44 GENDIR=$(WXDIR)\src\generic
45 COMMDIR=$(WXDIR)\src\common
46 OLEDIR=ole
47 MSWDIR=$(WXDIR)\src\msw
48 DOCDIR = $(WXDIR)\docs
49 HTMLDIR = $(WXDIR)\src\html
50 JPEGDIR = $(WXDIR)\src\jpeg
51 TIFFDIR = $(WXDIR)\src\tiff
52
53 {$(GENDIR)}.cpp{$(GENDIR)\$D}.obj:
54 cl @<<
55 $(CPPFLAGS) /Fo$@ /c /Tp $<
56 <<
57
58 {$(COMMDIR)}.cpp{$(COMMDIR)\$D}.obj:
59 cl @<<
60 $(CPPFLAGS) /Fo$@ /c /Tp $<
61 <<
62
63 {$(COMMDIR)}.c{$(COMMDIR)\$D}.obj:
64 cl @<<
65 $(CPPFLAGS2) /Fo$@ /c /Tc $<
66 <<
67
68 {$(MSWDIR)}.cpp{$(MSWDIR)\$D}.obj:
69 cl @<<
70 $(CPPFLAGS) /Fo$@ /c /Tp $<
71 <<
72
73 {$(MSWDIR)}.c{$(MSWDIR)\$D}.obj:
74 cl @<<
75 $(CPPFLAGS2) /Fo$@ /c /Tc $<
76 <<
77
78 {$(OLEDIR)}.cpp{$(OLEDIR)\$D}.obj:
79 cl @<<
80 $(CPPFLAGS) /Fo$@ /c /Tp $<
81 <<
82
83 {$(HTMLDIR)}.cpp{$(HTMLDIR)\$D}.obj:
84 cl @<<
85 $(CPPFLAGS) /Fo$@ /c /Tp $<
86 <<
87
88 GENERICOBJS= $(GENDIR)\$D\busyinfo.obj \
89 $(GENDIR)\$D\calctrl.obj \
90 $(GENDIR)\$D\choicdgg.obj \
91 $(GENDIR)\$D\dirctrlg.obj \
92 $(GENDIR)\$D\dragimgg.obj \
93 $(GENDIR)\$D\grid.obj \
94 $(GENDIR)\$D\gridctrl.obj \
95 $(GENDIR)\$D\gridsel.obj \
96 $(GENDIR)\$D\laywin.obj \
97 $(GENDIR)\$D\logg.obj \
98 $(GENDIR)\$D\numdlgg.obj \
99 $(GENDIR)\$D\panelg.obj \
100 $(GENDIR)\$D\progdlgg.obj \
101 $(GENDIR)\$D\prop.obj \
102 $(GENDIR)\$D\propform.obj \
103 $(GENDIR)\$D\proplist.obj \
104 $(GENDIR)\$D\sashwin.obj \
105 $(GENDIR)\$D\scrlwing.obj \
106 $(GENDIR)\$D\spinctlg.obj \
107 $(GENDIR)\$D\splash.obj \
108 $(GENDIR)\$D\splitter.obj \
109 $(GENDIR)\$D\statusbr.obj \
110 $(GENDIR)\$D\tbarsmpl.obj \
111 $(GENDIR)\$D\textdlgg.obj \
112 $(GENDIR)\$D\tipdlg.obj \
113 $(GENDIR)\$D\tipwin.obj \
114 $(GENDIR)\$D\treectlg.obj \
115 $(GENDIR)\$D\treelay.obj \
116 $(GENDIR)\$D\wizard.obj
117
118 # These are generic things that don't need to be compiled on MSW,
119 # but sometimes it's useful to do so for testing purposes.
120 NONESSENTIALOBJS= $(GENDIR)\$D\colrdlgg.obj \
121 $(GENDIR)\$D\dirdlgg.obj \
122 $(GENDIR)\$D\fontdlgg.obj \
123 $(GENDIR)\$D\helpext.obj \
124 $(GENDIR)\$D\helphtml.obj \
125 $(GENDIR)\$D\helpwxht.obj \
126 $(GENDIR)\$D\imaglist.obj \
127 $(GENDIR)\$D\listctrl.obj \
128 $(GENDIR)\$D\msgdlgg.obj \
129 $(GENDIR)\$D\notebook.obj \
130 $(GENDIR)\$D\tabg.obj
131
132 COMMONOBJS = \
133 $(COMMDIR)\$D\y_tab.obj \
134 $(COMMDIR)\$D\appcmn.obj \
135 $(COMMDIR)\$D\choiccmn.obj \
136 $(COMMDIR)\$D\clipcmn.obj \
137 $(COMMDIR)\$D\cmdline.obj \
138 $(COMMDIR)\$D\cmdproc.obj \
139 $(COMMDIR)\$D\cmndata.obj \
140 $(COMMDIR)\$D\config.obj \
141 $(COMMDIR)\$D\containr.obj \
142 $(COMMDIR)\$D\cshelp.obj \
143 $(COMMDIR)\$D\ctrlcmn.obj \
144 $(COMMDIR)\$D\ctrlsub.obj \
145 $(COMMDIR)\$D\datetime.obj \
146 $(COMMDIR)\$D\datstrm.obj \
147 $(COMMDIR)\$D\db.obj \
148 $(COMMDIR)\$D\dbgrid.obj \
149 $(COMMDIR)\$D\dbtable.obj \
150 $(COMMDIR)\$D\dcbase.obj \
151 $(COMMDIR)\$D\dircmn.obj \
152 $(COMMDIR)\$D\dlgcmn.obj \
153 $(COMMDIR)\$D\dndcmn.obj \
154 $(COMMDIR)\$D\dobjcmn.obj \
155 $(COMMDIR)\$D\docmdi.obj \
156 $(COMMDIR)\$D\docview.obj \
157 $(COMMDIR)\$D\dynarray.obj \
158 $(COMMDIR)\$D\dynlib.obj \
159 $(COMMDIR)\$D\effects.obj \
160 $(COMMDIR)\$D\encconv.obj \
161 $(COMMDIR)\$D\event.obj \
162 $(COMMDIR)\$D\extended.obj \
163 $(COMMDIR)\$D\fddlgcmn.obj \
164 $(COMMDIR)\$D\ffile.obj \
165 $(COMMDIR)\$D\file.obj \
166 $(COMMDIR)\$D\fileconf.obj \
167 $(COMMDIR)\$D\filefn.obj \
168 $(COMMDIR)\$D\filename.obj \
169 $(COMMDIR)\$D\filesys.obj \
170 $(COMMDIR)\$D\fontcmn.obj \
171 $(COMMDIR)\$D\fontmap.obj \
172 $(COMMDIR)\$D\framecmn.obj \
173 $(COMMDIR)\$D\fs_inet.obj \
174 $(COMMDIR)\$D\fs_mem.obj \
175 $(COMMDIR)\$D\fs_zip.obj \
176 $(COMMDIR)\$D\ftp.obj \
177 $(COMMDIR)\$D\gaugecmn.obj \
178 $(COMMDIR)\$D\gdicmn.obj \
179 $(COMMDIR)\$D\geometry.obj \
180 $(COMMDIR)\$D\gifdecod.obj \
181 $(COMMDIR)\$D\hash.obj \
182 $(COMMDIR)\$D\helpbase.obj \
183 $(COMMDIR)\$D\http.obj \
184 $(COMMDIR)\$D\imagall.obj \
185 $(COMMDIR)\$D\imagbmp.obj \
186 $(COMMDIR)\$D\image.obj \
187 $(COMMDIR)\$D\imaggif.obj \
188 $(COMMDIR)\$D\imagjpeg.obj \
189 $(COMMDIR)\$D\imagpcx.obj \
190 $(COMMDIR)\$D\imagpng.obj \
191 $(COMMDIR)\$D\imagpnm.obj \
192 $(COMMDIR)\$D\imagtiff.obj \
193 $(COMMDIR)\$D\imagxpm.obj \
194 $(COMMDIR)\$D\intl.obj \
195 $(COMMDIR)\$D\ipcbase.obj \
196 $(COMMDIR)\$D\layout.obj \
197 $(COMMDIR)\$D\lboxcmn.obj \
198 $(COMMDIR)\$D\list.obj \
199 $(COMMDIR)\$D\log.obj \
200 $(COMMDIR)\$D\longlong.obj \
201 $(COMMDIR)\$D\matrix.obj \
202 $(COMMDIR)\$D\memory.obj \
203 $(COMMDIR)\$D\menucmn.obj \
204 $(COMMDIR)\$D\mimecmn.obj \
205 $(COMMDIR)\$D\module.obj \
206 $(COMMDIR)\$D\mstream.obj \
207 $(COMMDIR)\$D\nbkbase.obj \
208 $(COMMDIR)\$D\object.obj \
209 $(COMMDIR)\$D\objstrm.obj \
210 $(COMMDIR)\$D\odbc.obj \
211 $(COMMDIR)\$D\paper.obj \
212 $(COMMDIR)\$D\popupcmn.obj \
213 $(COMMDIR)\$D\prntbase.obj \
214 $(COMMDIR)\$D\process.obj \
215 $(COMMDIR)\$D\protocol.obj \
216 $(COMMDIR)\$D\quantize.obj \
217 $(COMMDIR)\$D\radiocmn.obj \
218 $(COMMDIR)\$D\regex.obj \
219 $(COMMDIR)\$D\resource.obj \
220 $(COMMDIR)\$D\sckaddr.obj \
221 $(COMMDIR)\$D\sckfile.obj \
222 $(COMMDIR)\$D\sckipc.obj \
223 $(COMMDIR)\$D\sckstrm.obj \
224 $(COMMDIR)\$D\serbase.obj \
225 $(COMMDIR)\$D\sizer.obj \
226 $(COMMDIR)\$D\socket.obj \
227 $(COMMDIR)\$D\strconv.obj \
228 $(COMMDIR)\$D\stream.obj \
229 $(COMMDIR)\$D\string.obj \
230 $(COMMDIR)\$D\sysopt.obj \
231 $(COMMDIR)\$D\tbarbase.obj \
232 $(COMMDIR)\$D\textcmn.obj \
233 $(COMMDIR)\$D\textfile.obj \
234 $(COMMDIR)\$D\timercmn.obj \
235 $(COMMDIR)\$D\tokenzr.obj \
236 $(COMMDIR)\$D\treebase.obj \
237 $(COMMDIR)\$D\txtstrm.obj \
238 $(COMMDIR)\$D\unzip.obj \
239 $(COMMDIR)\$D\url.obj \
240 $(COMMDIR)\$D\utilscmn.obj \
241 $(COMMDIR)\$D\valgen.obj \
242 $(COMMDIR)\$D\validate.obj \
243 $(COMMDIR)\$D\valtext.obj \
244 $(COMMDIR)\$D\variant.obj \
245 $(COMMDIR)\$D\wfstream.obj \
246 $(COMMDIR)\$D\wincmn.obj \
247 $(COMMDIR)\$D\wxchar.obj \
248 $(COMMDIR)\$D\wxexpr.obj \
249 $(COMMDIR)\$D\xpmdecod.obj \
250 $(COMMDIR)\$D\zipstrm.obj \
251 $(COMMDIR)\$D\zstream.obj
252
253 MSWOBJS = $(MSWDIR)\$D\accel.obj \
254 $(MSWDIR)\$D\app.obj \
255 $(OLEDIR)\$D\automtn.obj \
256 $(MSWDIR)\$D\bitmap.obj \
257 $(MSWDIR)\$D\bmpbuttn.obj \
258 $(MSWDIR)\$D\brush.obj \
259 $(MSWDIR)\$D\button.obj \
260 $(MSWDIR)\$D\caret.obj \
261 $(MSWDIR)\$D\checkbox.obj \
262 $(MSWDIR)\$D\checklst.obj \
263 $(MSWDIR)\$D\choice.obj \
264 $(MSWDIR)\$D\clipbrd.obj \
265 $(MSWDIR)\$D\colordlg.obj \
266 $(MSWDIR)\$D\colour.obj \
267 $(MSWDIR)\$D\combobox.obj \
268 $(MSWDIR)\$D\control.obj \
269 $(MSWDIR)\$D\curico.obj \
270 $(MSWDIR)\$D\cursor.obj \
271 $(MSWDIR)\$D\data.obj \
272 $(OLEDIR)\$D\dataobj.obj \
273 $(MSWDIR)\$D\dc.obj \
274 $(MSWDIR)\$D\dcclient.obj \
275 $(MSWDIR)\$D\dcmemory.obj \
276 $(MSWDIR)\$D\dcprint.obj \
277 $(MSWDIR)\$D\dcscreen.obj \
278 $(MSWDIR)\$D\dde.obj \
279 $(MSWDIR)\$D\dialog.obj \
280 $(MSWDIR)\$D\dialup.obj \
281 $(MSWDIR)\$D\dib.obj \
282 $(MSWDIR)\$D\dibutils.obj \
283 $(MSWDIR)\$D\dir.obj \
284 $(MSWDIR)\$D\dirdlg.obj \
285 $(MSWDIR)\$D\dragimag.obj \
286 $(OLEDIR)\$D\dropsrc.obj \
287 $(OLEDIR)\$D\droptgt.obj \
288 $(MSWDIR)\$D\enhmeta.obj \
289 $(MSWDIR)\$D\evtloop.obj \
290 $(MSWDIR)\$D\fdrepdlg.obj \
291 $(MSWDIR)\$D\filedlg.obj \
292 $(MSWDIR)\$D\font.obj \
293 $(MSWDIR)\$D\fontdlg.obj \
294 $(MSWDIR)\$D\fontenum.obj \
295 $(MSWDIR)\$D\fontutil.obj \
296 $(MSWDIR)\$D\frame.obj \
297 $(MSWDIR)\$D\gauge95.obj \
298 $(MSWDIR)\$D\gdiimage.obj \
299 $(MSWDIR)\$D\gdiobj.obj \
300 $(MSWDIR)\$D\glcanvas.obj \
301 $(MSWDIR)\$D\gsocket.obj \
302 $(MSWDIR)\$D\gsockmsw.obj \
303 $(MSWDIR)\$D\helpchm.obj \
304 $(MSWDIR)\$D\helpwin.obj \
305 $(MSWDIR)\$D\icon.obj \
306 $(MSWDIR)\$D\imaglist.obj \
307 $(MSWDIR)\$D\joystick.obj \
308 $(MSWDIR)\$D\listbox.obj \
309 $(MSWDIR)\$D\listctrl.obj \
310 $(MSWDIR)\$D\main.obj \
311 $(MSWDIR)\$D\mdi.obj \
312 $(MSWDIR)\$D\menu.obj \
313 $(MSWDIR)\$D\menuitem.obj \
314 $(MSWDIR)\$D\metafile.obj \
315 $(MSWDIR)\$D\mimetype.obj \
316 $(MSWDIR)\$D\minifram.obj \
317 $(MSWDIR)\$D\msgdlg.obj \
318 $(MSWDIR)\$D\nativdlg.obj \
319 $(MSWDIR)\$D\notebook.obj \
320 $(OLEDIR)\$D\oleutils.obj \
321 $(MSWDIR)\$D\ownerdrw.obj \
322 $(MSWDIR)\$D\palette.obj \
323 $(MSWDIR)\$D\pen.obj \
324 $(MSWDIR)\$D\penwin.obj \
325 $(MSWDIR)\$D\printdlg.obj \
326 $(MSWDIR)\$D\printwin.obj \
327 $(MSWDIR)\$D\radiobox.obj \
328 $(MSWDIR)\$D\radiobut.obj \
329 $(MSWDIR)\$D\regconf.obj \
330 $(MSWDIR)\$D\region.obj \
331 $(MSWDIR)\$D\registry.obj \
332 $(MSWDIR)\$D\scrolbar.obj \
333 $(MSWDIR)\$D\settings.obj \
334 $(MSWDIR)\$D\slider95.obj \
335 $(MSWDIR)\$D\snglinst.obj \
336 $(MSWDIR)\$D\spinbutt.obj \
337 $(MSWDIR)\$D\spinctrl.obj \
338 $(MSWDIR)\$D\statbmp.obj \
339 $(MSWDIR)\$D\statbox.obj \
340 $(MSWDIR)\$D\statbr95.obj \
341 $(MSWDIR)\$D\statline.obj \
342 $(MSWDIR)\$D\stattext.obj \
343 $(MSWDIR)\$D\tabctrl.obj \
344 $(MSWDIR)\$D\taskbar.obj \
345 $(MSWDIR)\$D\tbar95.obj \
346 $(MSWDIR)\$D\textctrl.obj \
347 $(MSWDIR)\$D\tglbtn.obj \
348 $(MSWDIR)\$D\thread.obj \
349 $(MSWDIR)\$D\timer.obj \
350 $(MSWDIR)\$D\tooltip.obj \
351 $(MSWDIR)\$D\treectrl.obj \
352 $(MSWDIR)\$D\utils.obj \
353 $(MSWDIR)\$D\utilsexc.obj \
354 $(OLEDIR)\$D\uuid.obj \
355 $(MSWDIR)\$D\wave.obj \
356 $(MSWDIR)\$D\window.obj
357
358 HTMLOBJS = $(HTMLDIR)\$D\helpctrl.obj \
359 $(HTMLDIR)\$D\helpdata.obj \
360 $(HTMLDIR)\$D\helpfrm.obj \
361 $(HTMLDIR)\$D\htmlcell.obj \
362 $(HTMLDIR)\$D\htmlfilt.obj \
363 $(HTMLDIR)\$D\htmlpars.obj \
364 $(HTMLDIR)\$D\htmltag.obj \
365 $(HTMLDIR)\$D\htmlwin.obj \
366 $(HTMLDIR)\$D\htmprint.obj \
367 $(HTMLDIR)\$D\m_dflist.obj \
368 $(HTMLDIR)\$D\m_fonts.obj \
369 $(HTMLDIR)\$D\m_hline.obj \
370 $(HTMLDIR)\$D\m_image.obj \
371 $(HTMLDIR)\$D\m_layout.obj \
372 $(HTMLDIR)\$D\m_links.obj \
373 $(HTMLDIR)\$D\m_list.obj \
374 $(HTMLDIR)\$D\m_meta.obj \
375 $(HTMLDIR)\$D\m_pre.obj \
376 $(HTMLDIR)\$D\m_tables.obj \
377 $(HTMLDIR)\$D\winpars.obj
378
379
380 # Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
381 # Add $(HTMLOBJS) if wanting wxHTML classes
382 OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
383
384 # Normal, static library
385 all: setuph dirs $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib jpeg tiff regex $(LIBTARGET)
386
387 setuph:
388 cd $(WXDIR)\include\wx\msw
389 if not exist setup.h copy setup0.h setup.h
390 cd $(WXDIR)\src\msw
391
392 dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D $(JPEGDIR)\$D $(TIFFDIR)\$D
393
394 $D:
395 mkdir $D
396
397 $(COMMDIR)\$D:
398 mkdir $(COMMDIR)\$D
399
400 $(MSWDIR)\$D:
401 mkdir $(MSWDIR)\$D
402
403 $(GENDIR)\$D:
404 mkdir $(GENDIR)\$D
405
406 $(OLEDIR)\$D:
407 mkdir $(OLEDIR)\$D
408
409 $(HTMLDIR)\$D:
410 mkdir $(HTMLDIR)\$D
411
412 $(JPEGDIR)\$D:
413 mkdir $(JPEGDIR)\$D
414
415 $(TIFFDIR)\$D:
416 mkdir $(TIFFDIR)\$D
417
418 # wxWindows library as DLL
419 dll:
420 nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
421
422 cleandll:
423 nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
424
425 # wxWindows + app as DLL. Only affects main.cpp.
426 dllapp:
427 nmake -f makefile.vc all FINAL=$(FINAL) DLL=1
428
429 # wxWindows + app as DLL, for Netscape plugin - remove DllMain.
430 dllnp:
431 nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1
432
433 # Use this to make dummy.obj and generate a PCH.
434 # You might use the dll target, then the pch target, in order to
435 # generate a DLL, then a PCH/dummy.obj for compiling your applications with.
436 #
437 # Explanation: Normally, when compiling a static version of wx.lib, your dummy.obj/PCH
438 # are associated with wx.lib. When using a DLL version of wxWindows, however,
439 # the DLL is compiled without a PCH, so you only need it for compiling the app.
440 # In fact headers are compiled differently depending on whether a DLL is being made
441 # or an app is calling the DLL exported functionality (WXDLLEXPORT is different
442 # in each case) so you couldn't use the same PCH.
443 pch:
444 nmake -f makefile.vc pch1 WXUSINGDLL=1 FINAL=$(FINAL) NEW_WXLIBNAME=$(NEW_WXLIBNAME)
445
446 pch1: dirs $(DUMMYOBJ)
447 echo $(DUMMYOBJ)
448
449 !if "$(WXMAKINGDLL)" != "1"
450
451 ### Static library
452
453 $(WXDIR)\lib\$(WXLIBNAME).lib: $D\dummy.obj $(OBJECTS) $(PERIPH_LIBS)
454 -erase $(LIBTARGET)
455 $(implib) @<<
456 -out:$@
457 -machine:$(CPU)
458 $(OBJECTS) $D\dummy.obj $(PERIPH_LIBS)
459 <<
460
461 !else
462
463 ### Update the import library
464
465 $(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS)
466 $(implib) @<<
467 -machine:$(CPU)
468 -def:wx.def
469 $(DUMMYOBJ) $(OBJECTS)
470 -out:$(WXDIR)\lib\$(WXLIBNAME).lib
471 <<
472
473 !if "$(USE_GLCANVAS)" == "1"
474 GL_LIBS=opengl32.lib glu32.lib
475 # GL_LIBS_DELAY=/delayload:opengl32.dll
476 !endif
477
478 # Update the dynamic link library
479 $(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS)
480 $(link) @<<
481 $(LINKFLAGS)
482 -out:$(WXDIR)\lib\$(WXLIBNAME).dll
483 $(DUMMYOBJ) $(OBJECTS) $(guilibsdll) shell32.lib comctl32.lib ctl3d32.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
484 delayimp.lib
485 /delayload:ws2_32.dll /delayload:advapi32.dll /delayload:user32.dll /delayload:gdi32.dll
486 /delayload:comdlg32.dll /delayload:shell32.dll /delayload:comctl32.dll /delayload:ole32.dll
487 /delayload:oleaut32.dll /delayload:rpcrt4.dll $(GL_LIBS_DELAY)
488 <<
489
490 !endif
491
492 # /delayload:winmm.dll # Removed because it can cause a crash for some people
493
494 ########################################################
495 # Windows-specific objects
496
497 $D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
498 cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /c /Tp dummy.cpp
499
500 $D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
501 cl @<<
502 $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp
503 <<
504
505 # Compile certain files with no optimization (some files cause a
506 # compiler crash for buggy versions of VC++, e.g. 4.0).
507 # Don't forget to put FINAL=1 on the command line.
508 noopt:
509 cl @<<
510 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\datetime.obj /c /Tp $(COMMDIR)\datetime.cpp
511 <<
512 cl @<<
513 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\encconv.obj /c /Tp $(COMMDIR)\encconv.cpp
514 <<
515 cl @<<
516 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\fileconf.obj /c /Tp $(COMMDIR)\fileconf.cpp
517 <<
518 cl @<<
519 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\hash.obj /c /Tp $(COMMDIR)\hash.cpp
520 <<
521 cl @<<
522 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\resource.obj /c /Tp $(COMMDIR)\resource.cpp
523 <<
524 cl @<<
525 $(CPPFLAGS2) /Od /Fo$(COMMDIR)\$D\textfile.obj /c /Tp $(COMMDIR)\textfile.cpp
526 <<
527 cl @<<
528 $(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\choicdgg.obj /c /Tp $(GENDIR)\choicdgg.cpp
529 <<
530 cl @<<
531 $(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\grid.obj /c /Tp $(GENDIR)\grid.cpp
532 <<
533 cl @<<
534 $(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\gridsel.obj /c /Tp $(GENDIR)\gridsel.cpp
535 <<
536 cl @<<
537 $(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\logg.obj /c /Tp $(GENDIR)\logg.cpp
538 <<
539 cl @<<
540 $(CPPFLAGS2) /Od /Fo$(GENDIR)\$D\proplist.obj /c /Tp $(GENDIR)\proplist.cpp
541 <<
542 cl @<<
543 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\clipbrd.obj /c /Tp $(MSWDIR)\clipbrd.cpp
544 <<
545 cl @<<
546 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\control.obj /c /Tp $(MSWDIR)\control.cpp
547 <<
548 cl @<<
549 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\listbox.obj /c /Tp $(MSWDIR)\listbox.cpp
550 <<
551 cl @<<
552 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\mdi.obj /c /Tp $(MSWDIR)\mdi.cpp
553 <<
554 cl @<<
555 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\menu.obj /c /Tp $(MSWDIR)\menu.cpp
556 <<
557 cl @<<
558 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\notebook.obj /c /Tp $(MSWDIR)\notebook.cpp
559 <<
560 cl @<<
561 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\tbar95.obj /c /Tp $(MSWDIR)\tbar95.cpp
562 <<
563 cl @<<
564 $(CPPFLAGS2) /Od /Fo$(MSWDIR)\$D\treectrl.obj /c /Tp $(MSWDIR)\treectrl.cpp
565 <<
566 cl @<<
567 $(CPPFLAGS2) /Od /Fo$(HTMLDIR)\$D\helpfrm.obj /c /Tp $(HTMLDIR)\helpfrm.cpp
568 <<
569
570 $(COMMDIR)\$D\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
571 cl @<<
572 $(CPPFLAGS2) /c $(COMMDIR)\y_tab.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
573 <<
574
575 $(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
576 copy "$(COMMDIR)"\dosyacc.c "$(COMMDIR)"\y_tab.c
577
578 $(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
579 copy "$(COMMDIR)"\doslex.c "$(COMMDIR)"\lex_yy.c
580
581 $(OBJECTS): $(WXDIR)/include/wx/setup.h
582
583 $(COMMDIR)\$D\unzip.obj: $(COMMDIR)\unzip.c
584 cl @<<
585 $(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@
586 <<
587
588 # Peripheral components
589
590 png:
591 cd $(WXDIR)\src\png
592 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
593 cd $(WXDIR)\src\msw
594
595 clean_png:
596 cd $(WXDIR)\src\png
597 nmake -f makefile.vc clean
598 cd $(WXDIR)\src\msw
599
600 zlib:
601 cd $(WXDIR)\src\zlib
602 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
603 cd $(WXDIR)\src\msw
604
605 clean_zlib:
606 cd $(WXDIR)\src\zlib
607 nmake -f makefile.vc clean
608 cd $(WXDIR)\src\msw
609
610 jpeg:
611 cd $(WXDIR)\src\jpeg
612 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) all
613 cd $(WXDIR)\src\msw
614
615 clean_jpeg:
616 cd $(WXDIR)\src\jpeg
617 nmake -f makefile.vc clean
618 cd $(WXDIR)\src\msw
619
620 tiff:
621 cd $(WXDIR)\src\tiff
622 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) all
623 cd $(WXDIR)\src\msw
624
625 clean_tiff:
626 cd $(WXDIR)\src\tiff
627 nmake -f makefile.vc clean
628 cd $(WXDIR)\src\msw
629
630 regex:
631 cd $(WXDIR)\src\regex
632 nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
633 cd $(WXDIR)\src\msw
634
635 clean_regex:
636 cd $(WXDIR)\src\regex
637 nmake -f makefile.vc clean
638 cd $(WXDIR)\src\msw
639
640 rcparser:
641 cd $(WXDIR)\utils\rcparser\src
642 nmake -f makefile.vc FINAL=$(FINAL)
643 cd $(WXDIR)\src\msw
644
645 cleanall: clean clean_png clean_zlib clean_jpeg clean_tiff clean_regex
646 -erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).dll
647 -erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).lib
648 -erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).exp
649 -erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).pdb
650 -erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).ilk
651
652
653 clean: $(PERIPH_CLEAN_TARGET)
654 -erase $(LIBTARGET)
655 -erase $(WXDIR)\lib\$(WXLIBNAME).pdb
656 -erase *.pdb
657 -erase *.sbr
658 -erase $(WXLIBNAME).pch
659 -erase $(GENDIR)\$D\*.obj
660 -erase $(GENDIR)\$D\*.pdb
661 -erase $(GENDIR)\$D\*.sbr
662 -erase $(COMMDIR)\$D\*.obj
663 -erase $(COMMDIR)\$D\*.pdb
664 -erase $(COMMDIR)\$D\*.sbr
665 -erase $(COMMDIR)\y_tab.c
666 -erase $(COMMDIR)\lex_yy.c
667 -erase $(MSWDIR)\$D\*.obj
668 -erase $(MSWDIR)\$D\*.sbr
669 -erase $(MSWDIR)\$D\*.pdb
670 -erase $(MSWDIR)\$D\*.pch
671 -erase $(OLEDIR)\$D\*.obj
672 -erase $(OLEDIR)\$D\*.sbr
673 -erase $(OLEDIR)\$D\*.pdb
674 -erase $(HTMLDIR)\$D\*.obj
675 -erase $(HTMLDIR)\$D\*.sbr
676 -erase $(HTMLDIR)\$D\*.pdb
677 -erase $(JPEGDIR)\$D\*.obj
678 -erase $(JPEGDIR)\$D\*.sbr
679 -erase $(JPEGDIR)\$D\*.idb
680 -erase $(JPEGDIR)\$D\*.pdb
681 -erase $(TIFFDIR)\$D\*.obj
682 -erase $(TIFFDIR)\$D\*.sbr
683 -erase $(TIFFDIR)\$D\*.pdb
684 -erase $(TIFFDIR)\$D\*.idb
685 -rmdir $(D)
686 -rmdir $(GENDIR)\$(D)
687 -rmdir $(COMMDIR)\$(D)
688 -rmdir $(MSWDIR)\$(D)
689 -rmdir $(OLEDIR)\$(D)
690 -rmdir $(HTMLDIR)\$(D)
691 -rmdir $(JPEGDIR)\$(D)
692 -rmdir $(TIFFDIR)\$(D)
693
694 # Making documents
695 docs: allhlp allhtml allpdfrtf allhtb allhtmlhelp
696 alldocs: docs
697 hlp: wxhlp
698 wxhlp: $(DOCDIR)/winhelp/wx.hlp
699 refhlp: $(DOCDIR)/winhelp/techref.hlp
700 rtf: $(DOCDIR)/winhelp/wx.rtf
701 pdfrtf: $(DOCDIR)/pdf/wx.rtf
702 refpdfrtf: $(DOCDIR)/pdf/techref.rtf
703 html: wxhtml
704 htb: $(DOCDIR)\htb\wx.htb
705 wxhtml: $(DOCDIR)\html\wx\wx.htm
706 htmlhelp: $(DOCDIR)\htmlhelp\wx.chm
707 ps: wxps referencps
708 wxps: $(WXDIR)\docs\ps\wx.ps
709 referencps: $(WXDIR)\docs\ps\referenc.ps
710
711 allhlp: wxhlp
712 cd $(WXDIR)\utils\dialoged\src
713 nmake -f makefile.vc hlp
714 cd $(WXDIR)\utils\tex2rtf\src
715 nmake -f makefile.vc hlp
716 cd $(THISDIR)
717
718 allhtml: wxhtml
719 cd $(WXDIR)\utils\dialoged\src
720 nmake -f makefile.vc html
721 cd $(WXDIR)\utils\tex2rtf\src
722 nmake -f makefile.vc html
723 cd $(THISDIR)
724
725 allhtmlhelp: htmlhelp
726 cd $(WXDIR)\utils\dialoged\src
727 nmake -f makefile.vc htmlhelp
728 cd $(WXDIR)\utils\tex2rtf\src
729 nmake -f makefile.vc htmlhelp
730 cd $(THISDIR)
731
732 allhtb: htb
733 cd $(WXDIR)\utils\dialoged\src
734 nmake -f makefile.vc htb
735 cd $(WXDIR)\utils\tex2rtf\src
736 nmake -f makefile.vc htb
737 cd $(THISDIR)
738
739 allps: wxps referencps
740 cd $(WXDIR)\utils\dialoged\src
741 nmake -f makefile.vc ps
742 cd $(WXDIR)\utils\tex2rtf\src
743 nmake -f makefile.vc ps
744 cd $(THISDIR)
745
746 allpdfrtf: pdfrtf
747 cd $(WXDIR)\utils\dialoged\src
748 nmake -f makefile.vc pdfrtf
749 cd $(WXDIR)\utils\tex2rtf\src
750 nmake -f makefile.vc pdfrtf
751 cd $(THISDIR)
752
753 $(DOCDIR)/winhelp/wx.hlp: $(DOCDIR)/latex/wx/wx.rtf $(DOCDIR)/latex/wx/wx.hpj
754 cd $(DOCDIR)/latex/wx
755 -erase wx.ph
756 hc wx
757 -erase $(DOCDIR)\winhelp\wx.hlp
758 -erase $(DOCDIR)\winhelp\wx.cnt
759 move wx.hlp $(DOCDIR)\winhelp\wx.hlp
760 move wx.cnt $(DOCDIR)\winhelp\wx.cnt
761 cd $(THISDIR)
762
763 $(DOCDIR)/winhelp/techref.hlp: $(DOCDIR)/latex/techref/techref.rtf $(DOCDIR)/latex/techref/techref.hpj
764 cd $(DOCDIR)/latex/techref
765 -erase techref.ph
766 hc techref
767 move techref.hlp $(DOCDIR)\winhelp\techref.hlp
768 move techref.cnt $(DOCDIR)\winhelp\techref.cnt
769 cd $(THISDIR)
770
771 $(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
772 cd $(DOCDIR)\latex\wx
773 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/latex/wx/wx.rtf -twice -winhelp
774 cd $(THISDIR)
775
776 $(DOCDIR)/latex/techref/techref.rtf: $(DOCDIR)/latex/techref/techref.tex
777 cd $(DOCDIR)\latex\techref
778 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/latex/techref/techref.rtf -twice -winhelp
779 cd $(THISDIR)
780
781 $(DOCDIR)/pdf/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex
782 cd $(DOCDIR)\latex\wx
783 -copy *.wmf $(DOCDIR)\pdf
784 -copy *.bmp $(DOCDIR)\pdf
785 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/pdf/wx.rtf -twice -rtf
786 cd $(THISDIR)
787
788 $(DOCDIR)/pdf/techref.rtf: $(DOCDIR)/latex/techref/techref.tex
789 cd $(DOCDIR)\latex\techref
790 -copy *.wmf $(DOCDIR)\pdf
791 -copy *.bmp $(DOCDIR)\pdf
792 -start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/pdf/techref.rtf -twice -rtf
793 cd $(THISDIR)
794
795 $(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
796 cd $(DOCDIR)\latex\wx
797 -mkdir $(DOCDIR)\html\wx
798 copy *.gif $(DOCDIR)\html\wx
799 -start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\wx\manual.tex $(DOCDIR)\html\wx\wx.htm -twice -html
800 -erase $(DOCDIR)\html\wx\*.con
801 -erase $(DOCDIR)\html\wx\*.ref
802 -erase $(DOCDIR)\latex\wx\*.con
803 -erase $(DOCDIR)\latex\wx\*.ref
804 cd $(THISDIR)
805
806 $(DOCDIR)\htmlhelp\wx.chm : $(DOCDIR)\html\wx\wx.htm $(DOCDIR)\html\wx\wx.hhp
807 cd $(DOCDIR)\html\wx
808 -hhc wx.hhp
809 -mkdir ..\..\htmlhelp
810 -erase $(DOCDIR)\htmlhelp\wx.chm
811 move wx.chm ..\..\htmlhelp
812 cd $(THISDIR)
813
814 $(WXDIR)\docs\latex\wx\manual.dvi: $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/manual.tex
815 cd $(WXDIR)\docs\latex\wx
816 -latex manual
817 -latex manual
818 -makeindx manual
819 -bibtex manual
820 -latex manual
821 -latex manual
822 cd $(THISDIR)
823
824 $(WXDIR)\docs\ps\wx.ps: $(WXDIR)\docs\latex\wx\manual.dvi
825 cd $(WXDIR)\docs\latex\wx
826 -dvips32 -o wx.ps manual
827 move wx.ps $(WXDIR)\docs\ps\wx.ps
828 cd $(THISDIR)
829
830 $(WXDIR)\docs\latex\wx\referenc.dvi: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/referenc.tex
831 cd $(WXDIR)\docs\latex\wx
832 -latex referenc
833 -latex referenc
834 -makeindx referenc
835 -bibtex referenc
836 -latex referenc
837 -latex referenc
838 cd $(THISDIR)
839
840 $(WXDIR)\docs\ps\referenc.ps: $(WXDIR)\docs\latex\wx\referenc.dvi
841 cd $(WXDIR)\docs\latex\wx
842 -dvips32 -o referenc.ps referenc
843 move referenc.ps $(WXDIR)\docs\ps\referenc.ps
844 cd $(THISDIR)
845
846 # An htb file is a zip file containing the .htm, .gif, .hhp, .hhc and .hhk
847 # files, renamed to htb.
848 # This can then be used with e.g. helpview.
849 # Optionally, a cached version of the .hhp file can be generated with hhp2cached.
850 $(DOCDIR)\htb\wx.htb: $(DOCDIR)\html\wx\wx.htm
851 cd $(WXDIR)\docs\html\wx
852 -erase wx.zip wx.htb
853 zip wx.zip *.htm *.gif *.hhp *.hhc *.hhk
854 -mkdir $(DOCDIR)\htb
855 move wx.zip $(DOCDIR)\htb\wx.htb
856 cd $(THISDIR)
857
858 # In order to force document reprocessing
859 touchmanual:
860 -touch $(WXDIR)\docs\latex\wx\manual.tex
861
862 updatedocs: touchmanual alldocs
863
864 cleandocs:
865 -erase $(DOCDIR)\winhelp\wx.hlp
866 -erase $(DOCDIR)\winhelp\wx.cnt
867 -erase $(DOCDIR)\html\wx\*.htm
868 -erase $(DOCDIR)\pdf\wx.rtf
869 -erase $(DOCDIR)\latex\wx\wx.rtf
870 -erase $(DOCDIR)\latex\wx\WX.PH
871 -erase $(DOCDIR)\htmlhelp\wx.chm
872 -erase $(DOCDIR)\htb\wx.htb
873
874 # Start Word, running the GeneratePDF macro. MakeManual.dot should be in the
875 # Office StartUp folder, and PDFMaker should be installed.
876 updatepdf: # touchmanual pdfrtf
877 start $(WAITFLAG) "winword d:\wx2\wxWindows\docs\latex\pdf\wx.rtf /mGeneratePDF"
878
879
880 MFTYPE=vc
881 makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
882 cd $(WXWIN)\distrib\msw\tmake
883 tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
884 copy makefile.$(MFTYPE) $(WXWIN)\src\msw
885