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