]> git.saurik.com Git - wxWidgets.git/blame - src/makevc.env
[gtk] fixed bug that caused segfaults in wxYield when wxToolBar has non-button contr...
[wxWidgets.git] / src / makevc.env
CommitLineData
227869da 1#
af111fc3 2# File: makevc.env
227869da
JS
3# Author: Ulrich Leodolter
4# Created: Wed May 17 08:36:42 1995
5# Updated:
6#
7# MSVC++ 32-bit makefile include file
8#
9!include <ntwin32.mak>
10
feef75ab 11WXVERSION=21_11
227869da
JS
12WIN95=1
13
14!if "$(WIN95)" == "0"
15# With 3.50, Win95 will use your existing icons to show smaller ones.
16# With 4.0, you'll have to follow Win95 procedures for icons or you'll get the
17# default Windows icon.
18APPVER=3.50
19WINVERSION=-DWINVER=0x0350 # Generic WIN32
20!else
21APPVER=3.50 # 4.0
22# This means 'enable Windows 95 features' (in wxWindows and in VC++ 4.0).
23WINVERSION=-DWINVER=0x0400 /D__WIN95__
24!endif
25
26# On Alpha machines, change to CPU=ALPHA
27CPU=i386
28
29# Suffixes
30OBJSUFF=obj
31SRCSUFF=cpp
32
e12f91dc
RD
33WAITFLAG=/w
34
227869da 35# If you set wxUSE_IOSTREAMH to 0, remove -Dtry=__try -Dexcept=__except -Dleave=__leave -Dfinally=__finally
0492c5a0
JS
36#WINFLAGS=-c -W3 -Dtry=__try -Dexcept=__except -Dleave=__leave -Dfinally=__finally -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -DWIN32 -D__WIN32__ $(WINVERSION)
37WINFLAGS=-c -W3 -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -nologo -D_X86_=1 -DWIN32 -D__WIN32__ $(WINVERSION)
227869da
JS
38#WINLINKFLAGS=/NODEFAULTLIB /INCREMENTAL:NO /NOLOGO -align:0x1000 -machine:$(CPU) -subsystem:windows,$(APPVER)
39WINLINKFLAGS=/INCREMENTAL:NO /NOLOGO -machine:$(CPU) -subsystem:windows,$(APPVER)
40#WINLIBS=kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib libc.lib oldnames.lib\
41# comctl32.lib ctl3d32.lib odbc32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib # libci.lib # libci.lib required for VC++ 4.2
42WINLIBS=kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib oldnames.lib\
7921cf2b 43 comctl32.lib ctl3d32.lib odbc32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib # libci.lib # libci.lib required for VC++ 4.2
227869da
JS
44
45# Change this to your WXWIN directory
8a28f119 46WXDIR=$(WXWIN)
227869da
JS
47
48WXSRC=$(WXDIR)\src\msw
49WXINC=$(WXDIR)\include
50WXBASESRC=$(WXDIR)\src\common
51
52#####################################################################
53# These are the possible DLL/non-DLL usages:
54#
55# Type _DLL/_WINDLL WXUSINGDLL WXMAKINGDLL Library
56#--------------------------------------------------------------------
57# Normal application - - - wx.lib
58#
cb1b6606 59# wxWin as DLL Defined - Defined wx$(WXVERSION).lib
227869da 60#
cb1b6606 61# App using wxWin DLL - Defined - wx$(WXVERSION).lib
227869da
JS
62#
63# App built as one DLL Defined - - wx.lib
64#
65######################################################################
66#
67# Compiling your app:
68#--------------------
69# when compiling an app to use the DLL version of wxWindows
70# (but not to be a DLL itself), set WXUSINGDLL to 1 in your
71# makefile just before including ntwxwin.mak.
72# To compile wxWin _and_ app itself as a DLL, set DLL to 1
73# in ntwxwin.mak, and do not set WXUSINGDLL.
74#
75# Compiling wxWindows:
76#---------------------
77# Use the dll target to compile wxWindows as DLL; then make 'pch'
78# to generate a precompiled header for your apps to use. BUG: must compile without
79# wxExpr (USE_WX_RESOURCES = 0) for this to link properly. Don't know why yet.
80# Use the dllapp target to compile wxWindows for making a DLL app (not implemented yet)
81
82#DLL=0
83
227869da
JS
84!if "$(WXUSINGDLL)" == "1"
85EXTRADLLFLAGS=/DWXUSINGDLL=1
86!endif
87
88!if "$(WXMAKINGDLL)" == "1"
89EXTRADLLFLAGS=/DWXMAKINGDLL=1
90!endif
91
92!if "$(WXMAKINGDLL)" == "0" && "$(DLL)" == "1"
93EXTRADLLFLAGS=
94!endif
95
96!if "$(NOMAIN)" == "1"
97EXTRADLLFLAGS=$(EXTRADLLFLAGS) /DNOMAIN
98!endif
99
227869da
JS
100!ifndef FINAL
101FINAL=0
102DEBUG=1
103!endif
104
105!ifndef DLL
106DLL=0
107!endif
108
109# Set this to 1 if you don't want to use precompiled headers
110!ifndef NOPCH
111NOPCH=0
112!endif
113
ca5c8b2d
JS
114# This sets 'D' to a suitable directory name
115# for this kind of build, and WXLIBNAME to one of wx (static release), wx_d (static debug),
cb1b6606 116# wx$(WXVERSION) (DLL release), wx$(WXVERSION)_d (DLL debug)
ca5c8b2d
JS
117
118!if "$(WXMAKINGDLL)" == "1" || "$(WXUSINGDLL)" == "1"
cb1b6606 119WXLIBNAME=wx$(WXVERSION)
ca5c8b2d
JS
120!else
121WXLIBNAME=wx
122!endif
123
a4fe6524
RD
124!if "$(NEW_WXLIBNAME)" != ""
125WXLIBNAME=$(NEW_WXLIBNAME)
126!endif
127
ca5c8b2d
JS
128!if "$(FINAL)" == "1"
129D=Release
130!else
131D=Debug
cb1b6606
RD
132LIBEXT=_d
133WXLIBNAME=$(WXLIBNAME)$(LIBEXT)
ca5c8b2d
JS
134!endif
135
136!if "$(WXMAKINGDLL)" == "1" || "$(WXUSINGDLL)" == "1"
137D=$(D)DLL
138!endif
139
140WXLIB=$(WXDIR)\lib\$(WXLIBNAME).lib
141
58abfef6 142INC=-I$(WXINC) -I$(WXDIR)/src/png -I$(WXDIR)/src/zlib -I$(WXDIR)/src/jpeg $(EXTRAINC)
ac0ac824 143LIBS = $(EXTRALIBS) $(WXLIB) $(WINLIBS) $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\jpeg.lib $(WXDIR)\lib\xpm.lib
ca5c8b2d 144
227869da
JS
145MAKEPRECOMP=/YcWX/WXPREC.H
146OPTIONS=
147
148!if "$(FINAL)" == "0"
149OPT = /Od /Gy
150# ***N.B.*** to save space/time, comment out /FR to avoid browse info (.sbr files) being generated
151DEBUG_FLAGS= /Zi /D__WXDEBUG__ # /DDEBUG=1 # /FR
152LINK_DEBUG_FLAGS=-debug:full -debugtype:cv # /PDB:NONE
7bf54362 153_CRTFLAG=/MDd
227869da
JS
154!else
155# /O1 - smallest code
156# /O2 - fastest code
157OPT = /O1 # /O2 # /Od
158DEBUG_FLAGS=
159LINK_DEBUG_FLAGS=/RELEASE
7bf54362
RD
160_CRTFLAG=/MD
161!endif
162
163!if "$(CRTFLAG)" == ""
164CRTFLAG=$(_CRTFLAG)
227869da
JS
165!endif
166
167!if "$(DLL)" == "0"
168
169!if "$(NOPCH)" == "1"
170PCH=
171PRECOMP=
172MAKEPRECOMP=
173!else
ca5c8b2d
JS
174PCH=$(WXLIBNAME).pch
175PRECOMP=/YuWX/WXPREC.H /Fp$(WXDIR)\src\msw\$(PCH) /Fd$(WXDIR)\lib\$(WXLIBNAME).pdb
227869da
JS
176MAKEPRECOMP=/YcWX/WXPREC.H
177!endif
178
179CPPFLAGS=$(WINFLAGS) $(DEBUG_FLAGS) $(PRECOMP) $(EXTRAFLAGS) /D__WXMSW__ $(INC) $(OPT) $(EXTRADLLFLAGS) $(CRTFLAG) /D__WINDOWS__ /GX /DSTRICT $(OVERRIDEFLAGS)
180# If you don't include wxprec.h, use CPPFLAGS2
181CPPFLAGS2=$(WINFLAGS) $(DEBUG_FLAGS) /D__WXMSW__ $(INC) $(EXTRAFLAGS) $(OPT) $(EXTRADLLFLAGS) $(CRTFLAG) /D__WINDOWS__ /GX /DSTRICT $(OVERRIDEFLAGS)
182LINKFLAGS=$(LINK_DEBUG_FLAGS) $(WINLINKFLAGS) -entry:WinMainCRTStartup
183DUMMY=dummy
184
185!else
186
187!if "$(WXMAKINGDLL)" == "1"
ca5c8b2d 188PCH=$(WXLIBNAME).pch
227869da
JS
189DUMMY=dummydll
190!else
ca5c8b2d 191PCH=$(WXLIBNAME).pch
227869da
JS
192DUMMY=dummy
193!endif
194
ca5c8b2d 195PRECOMP=/YuWX/WXPREC.H /Fp$(WXDIR)\src\msw\$(PCH) /Fd$(WXDIR)\lib\$(WXLIBNAME).pdb
227869da
JS
196CPPFLAGS=$(WINFLAGS) $(DEBUG_FLAGS) $(PRECOMP) $(EXTRAFLAGS) /D__WXMSW__ $(INC) $(OPT) /D_DLL $(CRTFLAG) $(EXTRADLLFLAGS) /D_WINDOWS /D__WINDOWS__ /D_WINDLL
197CPPFLAGS2=$(WINFLAGS) $(DEBUG_FLAGS) /D__WXMSW__ $(INC) $(EXTRAFLAGS) $(OPT) /D_DLL $(CRTFLAG) $(EXTRADLLFLAGS) /D_WINDOWS /D__WINDOWS__ /D_WINDLL
198LINKFLAGS=$(LINK_DEBUG_FLAGS) -machine:i386 -subsystem:windows,$(APPVER) -dll # -entry:_DllMainCRTStartup$(DLLENTRY)
199!endif
200
ca5c8b2d 201DUMMYOBJ=$(WXDIR)\src\msw\$D\$(DUMMY).obj
227869da 202
e9c4b1a2
JS
203.c.obj:
204 cl @<<
205$(CPPFLAGS2) /Fo$@ /c $<
206<<
207
208.cpp.obj:
209 cl @<<
210$(CPPFLAGS2) /Fo$@ /c $<
211<<
212