From 534592997f30476bf21c848ba08013708db4a05a Mon Sep 17 00:00:00 2001 From: Jeff Hill Date: Wed, 26 Mar 2003 21:11:13 +0000 Subject: [PATCH] move a warning from level 3 to level 4 and detect certain Ox related failures during debug builds --- configure/os/CONFIG.win32-x86.win32-x86 | 37 +++++++++++++++---------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/configure/os/CONFIG.win32-x86.win32-x86 b/configure/os/CONFIG.win32-x86.win32-x86 index 20c14df89..64779e24c 100644 --- a/configure/os/CONFIG.win32-x86.win32-x86 +++ b/configure/os/CONFIG.win32-x86.win32-x86 @@ -30,7 +30,7 @@ BAFCMD = bscmake /nologo /o $@ # # Configure OS vendor C compiler -CC = cl +CC = cl # # __STDC__=0 is a real great idea of Jeff that gives us both: @@ -47,13 +47,15 @@ CONFORM_CFLAGS_TRAD = /nologo # # /W use warning level N # (maximum (lint type) warnings at level 4) -WARN_CFLAGS_YES = /W3 +# /w44355 set "'this' used in the base initializer list" to be level 4 +WARN_CFLAGS_YES = /W3 /w44355 WARN_CFLAGS_NO = /W1 # # /Ox maximum optimizations # /MD use MSVCRT (run-time as DLL, multi-thread support) # /GL whole program optimization +# /Zi generate program database for debugging information OPT_CFLAGS_YES = /Ox /GL # @@ -62,7 +64,9 @@ OPT_CFLAGS_YES = /Ox /GL # /Fr create source browser file # /GZ catch bugs occurring only in optimized code # /D_CRTDBG_MAP_ALLOC -OPT_CFLAGS_NO = /Zi /DEPICS_FREELIST_DEBUG +# /RTCsu catch bugs occuring only inoptimized code +# /DEPICS_FREELIST_DEBUG good for detecting mem mrg bugs +OPT_CFLAGS_NO = /Zi /RTCsu # specify object file name and location OBJ_CFLAG = /Fo @@ -77,7 +81,7 @@ OBJ_CFLAG = /Fo # /MD multithreaded C RTL in DLL # /MDd multithreaded C RTL in DLL (debug version) VISC_DLL_NO = -DEPICS_DLL_NO -VISC_DLL_YES = +VISC_DLL_YES = VISC_DLL = $(VISC_DLL_$(SHARED_LIBRARIES)) VISC_STATIC_CFLAGS_DEBUG_NO = d VISC_STATIC_CFLAGS_DEBUG_YES = @@ -103,28 +107,31 @@ CPP = gcc -x c -E # /GX - generate code for exceptions # /GR - generate code for run time type identification # -CCC = cl -CONFORM_CXXFLAGS_NORMAL = /nologo /D__STDC__=0 /GX /GR -CONFORM_CXXFLAGS_STRICT = /nologo /D__STDC__=0 /GX /GR +CCC = cl /nologo /GX /GR +CONFORM_CXXFLAGS_NORMAL = +CONFORM_CXXFLAGS_STRICT = /D__STDC__=0 # # /W use warning level N # (maximum lint level warnings at level 4) -WARN_CXXFLAGS_YES = /W3 +# /w44355 set "'this' used in the base initializer list" to be level 4 +WARN_CXXFLAGS_YES = /W3 /w44355 WARN_CXXFLAGS_NO = /W1 # # /Ox maximum optimizations # /GL whole program optimization +# /Zi generate program database for debugging information OPT_CXXFLAGS_YES = /Ox /GL # # /Zi generate program database for debugging information # /Z7 include debugging info in object files # /Fr create source browser file -# /GZ catch bugs occurring only in optimized code # /D_CRTDBG_MAP_ALLOC -OPT_CXXFLAGS_NO = /Zi /DEPICS_FREELIST_DEBUG +# /RTCsu catch bugs occurring only in optimized code +# /DEPICS_FREELIST_DEBUG good for detecting mem mrg bugs +OPT_CXXFLAGS_NO = /RTCsu /Zi # specify object file name and location OBJ_CXXFLAG = /Fo @@ -141,14 +148,14 @@ OBJ_CXXFLAG = /Fo STATIC_CXXFLAGS_YES= /MT$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL) STATIC_CXXFLAGS_NO= /MD$(VISC_STATIC_CFLAGS_DEBUG) $(VISC_DLL) -# -# no special libs for static link -# -LDLIBS=ws2_32.lib advapi32.lib user32.lib kernel32.lib winmm.lib +STATIC_LDLIBS_YES=ws2_32.lib advapi32.lib user32.lib kernel32.lib winmm.lib +STATIC_LDLIBS_NO= # add /profile here to run the ms profiler # /LTCG - whole program optimization -LINK_OPT_FLAGS_YES = /LTCG /incremental:no /opt:ref /release $(PROD_VERSION:%=/version:%) +# /fixed:no good for programs such as purify and quantify +# /debug good for programs such as purify and quantify +LINK_OPT_FLAGS_YES = /LTCG /incremental:no /opt:ref /release $(PROD_VERSION:%=/version:%) LINK_OPT_FLAGS_NO = /debug /incremental:no /fixed:no OPT_LDFLAGS = $(LINK_OPT_FLAGS_$(HOST_OPT))