Changed slightly the meaning of the Hybrid build. It is now

essentially a release build (no debug info, optimiztions turned on)
with the addition of __WXDEBUG__ being defined.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn 2002-08-25 01:43:22 +00:00
parent 2072fbbbc9
commit d440a0e764
3 changed files with 22 additions and 18 deletions

View File

@ -207,9 +207,9 @@ LINK_DEBUG_FLAGS=-debug:full -debugtype:cv # /PDB:NONE
_CRTFLAG=/MDd _CRTFLAG=/MDd
!else if "$(FINAL)" == "hybrid" !else if "$(FINAL)" == "hybrid"
OPT = /Od /Gy OPT = /Ox /Gy
DEBUG_FLAGS= /Zi /D__WXDEBUG__ /D__NO_VC_CRTDBG__ DEBUG_FLAGS= /D__WXDEBUG__ /D__NO_VC_CRTDBG__
LINK_DEBUG_FLAGS=-debug:full -debugtype:cv LINK_DEBUG_FLAGS=/RELEASE
_CRTFLAG=/MD _CRTFLAG=/MD
!else !else

View File

@ -18,7 +18,7 @@ FINAL=0
CFLAGS=/nologo /Od $(CRTFLAG) /GX /Fo$@ CFLAGS=/nologo /Od $(CRTFLAG) /GX /Fo$@
_CRTFLAG=/MDd _CRTFLAG=/MDd
!else if "$(FINAL)" == "hybrid" !else if "$(FINAL)" == "hybrid"
CFLAGS=/nologo /Od $(CRTFLAG) /GX /Fo$@ CFLAGS=/nologo /Ox $(CRTFLAG) /GX /Fo$@
_CRTFLAG=/MD _CRTFLAG=/MD
!else !else
CFLAGS=/nologo -O2 $(CRTFLAG) /GX /Fo$@ CFLAGS=/nologo -O2 $(CRTFLAG) /GX /Fo$@

View File

@ -76,11 +76,11 @@ BUILD_BASE = "build"
# Some MSW build settings # Some MSW build settings
FINAL = 1 # Mirrors use of same flag in wx makefiles, FINAL = 0 # Mirrors use of same flag in wx makefiles,
# (0 or 1 only) should probably find a way to # (0 or 1 only) should probably find a way to
# autodetect this... # autodetect this...
HYBRID = 0 # If set and not debug or FINAL, then build a HYBRID = 1 # If set and not debug or FINAL, then build a
# hybrid extension that can be used by the # hybrid extension that can be used by the
# non-debug version of python, but contains # non-debug version of python, but contains
# debugging symbols for wxWindows and wxPython. # debugging symbols for wxWindows and wxPython.
@ -251,12 +251,12 @@ if os.name == 'nt':
if not FINAL or HYBRID: if not FINAL or HYBRID:
defines.append( ('__WXDEBUG__', None) ) defines.append( ('__WXDEBUG__', None) )
libdirs = [opj(WXDIR, 'lib'), 'build\\ilib'] libdirs = [ opj(WXDIR, 'lib') ]
wxdll = 'wxmsw' + WXDLLVER + libFlag() wxdll = 'wxmsw' + WXDLLVER + libFlag()
libs = [wxdll] libs = [ wxdll ]
if bcpp_compiling: if bcpp_compiling:
libs = ['wx'+WXBCPPLIBVER] libs = [ 'wx'+WXBCPPLIBVER ]
libs = libs + ['kernel32', 'user32', 'gdi32', 'comdlg32', libs = libs + ['kernel32', 'user32', 'gdi32', 'comdlg32',
'winspool', 'winmm', 'shell32', 'oldnames', 'comctl32', 'winspool', 'winmm', 'shell32', 'oldnames', 'comctl32',
@ -264,27 +264,31 @@ if os.name == 'nt':
'advapi32', 'wsock32'] 'advapi32', 'wsock32']
cflags = [ cflags = [ '/Gy',
# '/GX-' # workaround for internal compiler error in MSVC on some machines # '/GX-' # workaround for internal compiler error in MSVC on some machines
] ]
lflags = None lflags = None
if bcpp_compiling: # overwrite it if bcpp_compiling: # BCC flags
cflags = ['-5', '-VF', ### To support MSVC spurious semicolons in the class scope cflags = ['-5', '-VF', ### To support MSVC spurious semicolons in the class scope
### else, all semicolons at the end of all DECLARE_...CALLBACK... macros must be eliminated ### else, all semicolons at the end of all DECLARE_...CALLBACK... macros must be eliminated
'-Hc', '-H=' + opj(WXDIR, '\src\msw\wx32.csm'), '-Hc', '-H=' + opj(WXDIR, '\src\msw\wx32.csm'),
'@' + opj(WXDIR, '\src\msw\wxwin32.cfg') '@' + opj(WXDIR, '\src\msw\wxwin32.cfg')
] ]
if not FINAL:
cflags = cflags + ['/Od', '/v', '/y']
lflags = lflags + ['/v', ]
else: # MSVC flags
if FINAL:
pass #cflags = cflags + ['/O1']
elif HYBRID :
pass #cflags = cflags + ['/Ox']
else:
pass # cflags = cflags + ['/Od', '/Z7']
# lflags = ['/DEBUG', ]
if not FINAL and HYBRID and not bcpp_compiling:
cflags = cflags + ['/Od', '/Z7']
lflags = ['/DEBUG', ]
elif bcpp_compiling and not FINAL:
cflags = cflags + ['/Od', '/v', '/y']
lflags = lflags + ['/v', ]