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