From 4c4184f56c32e26e9b6a283c0c8bf6a7a59efd79 Mon Sep 17 00:00:00 2001 From: Ian Scott Date: Thu, 7 Jun 2001 11:36:55 -0400 Subject: [PATCH] adding a "Release with debugging Info" build to CMake for NT --- Source/cmDSPWriter.cxx | 4 +++ Templates/CMakeWindowsSystemConfig.cmake | 2 ++ Templates/DLLHeader.dsptemplate | 32 ++++++++++++++++++++++ Templates/EXEHeader.dsptemplate | 30 +++++++++++++++++++++ Templates/EXEWinHeader.dsptemplate | 34 +++++++++++++++++++++++- Templates/UtilityHeader.dsptemplate | 15 +++++++++++ Templates/staticLibHeader.dsptemplate | 27 +++++++++++++++++++ 7 files changed, 143 insertions(+), 1 deletion(-) diff --git a/Source/cmDSPWriter.cxx b/Source/cmDSPWriter.cxx index 3aa408f33..959de9231 100644 --- a/Source/cmDSPWriter.cxx +++ b/Source/cmDSPWriter.cxx @@ -628,6 +628,10 @@ void cmDSPWriter::WriteDSPHeader(std::ostream& fout, const char *libName, "CMAKE_CXX_FLAGS_DEBUG", m_Makefile-> GetDefinition("CMAKE_CXX_FLAGS_DEBUG")); + cmSystemTools::ReplaceString(line, + "CMAKE_CXX_FLAGS_RELWITHDEBUGINFO", + m_Makefile-> + GetDefinition("CMAKE_CXX_FLAGS_RELWITHDEBUGINFO")); cmSystemTools::ReplaceString(line, "CMAKE_CXX_FLAGS", m_Makefile-> diff --git a/Templates/CMakeWindowsSystemConfig.cmake b/Templates/CMakeWindowsSystemConfig.cmake index 9afd68633..c7a9854c5 100644 --- a/Templates/CMakeWindowsSystemConfig.cmake +++ b/Templates/CMakeWindowsSystemConfig.cmake @@ -8,6 +8,8 @@ SET (HAVE_UNISTD_H 1) SET (CXX VC++60 ) SET (CMAKE_CXX_FLAGS_RELEASE "/MD /O2" CACHE STRING "Flags used by the compiler during release builds (/MD /Ob1 /Oi /Ot /Oy /Gs will produce slightly less optimized but smaller files)") +SET (CMAKE_CXX_FLAGS_RELWITHDEBUGINFO "/MD /Zi /O2" CACHE STRING + "Flags used by the compiler during ReleaseWithDebugInfo builds") SET (CMAKE_CXX_FLAGS_MINSIZEREL "/MD /O1" CACHE STRING "Flags used by the compiler during release minsize builds") SET (CMAKE_CXX_FLAGS_DEBUG "/MDd /Zi /Od /GZ" CACHE STRING diff --git a/Templates/DLLHeader.dsptemplate b/Templates/DLLHeader.dsptemplate index 8fdf5fec8..2cd06f4aa 100644 --- a/Templates/DLLHeader.dsptemplate +++ b/Templates/DLLHeader.dsptemplate @@ -20,6 +20,7 @@ CFG=OUTPUT_LIBNAME - Win32 Debug !MESSAGE "OUTPUT_LIBNAME - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "OUTPUT_LIBNAME - Win32 MinSizeRel" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "OUTPUT_LIBNAME - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") +!MESSAGE "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE # ITK DSP Header file @@ -132,6 +133,36 @@ LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /stack:0x989680 /dll /machine:I386 # ADD LINK32 CM_OPTIMIZED_LIBRARIES CM_LIBRARIES kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /stack:0x989680 /dll /machine:I386 +!ELSEIF "$(CFG)" == "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "ReleaseWithDebugInfo" +# PROP BASE Intermediate_Dir "ReleaseWithDebugInfo" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "LIBRARY_OUTPUT_PATHReleaseWithDebugInfo" +# PROP Intermediate_Dir "ReleaseWithDebugInfo" +# PROP Ignore_Export_Lib 0 +# PROP Target_Dir "" +# ADD BASE CPP /nologo /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "OUTPUT_LIBNAME_EXPORTS" /FD /c +# ADD CPP /nologo /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FD /c +# ADD CPP BUILD_INCLUDES EXTRA_DEFINES /D "OUTPUT_LIBNAME_EXPORTS" +# ADD CPP CMAKE_CXX_FLAGS +# ADD CPP CMAKE_CXX_FLAGS_RELWITHDEBUGINFO +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 +# ADD LINK32 CM_OPTIMIZED_LIBRARIES CM_LIBRARIES kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 + + !ENDIF # Begin Target @@ -139,3 +170,4 @@ LINK32=link.exe # Name "OUTPUT_LIBNAME - Win32 Release" # Name "OUTPUT_LIBNAME - Win32 Debug" # Name "OUTPUT_LIBNAME - Win32 MinSizeRel" +# Name "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" diff --git a/Templates/EXEHeader.dsptemplate b/Templates/EXEHeader.dsptemplate index dbd679c88..dee760715 100644 --- a/Templates/EXEHeader.dsptemplate +++ b/Templates/EXEHeader.dsptemplate @@ -33,6 +33,7 @@ CFG=OUTPUT_LIBNAME - Win32 Debug !MESSAGE "OUTPUT_LIBNAME - Win32 Debug" (based on "Win32 (x86) Application") !MESSAGE "OUTPUT_LIBNAME - Win32 MinSizeRel" (based on "Win32 (x86) Application") !MESSAGE "OUTPUT_LIBNAME - Win32 Release" (based on "Win32 (x86) Application") +!MESSAGE "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" (based on "Win32 (x86) Application") !MESSAGE # Begin Project @@ -128,6 +129,34 @@ LINK32=link.exe CM_MULTILINE_OPTIMIZED_LIBRARIES CM_MULTILINE_LIBRARIES +!ELSEIF "$(CFG)" == "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "ReleaseWithDebugInfo" +# PROP BASE Intermediate_Dir "ReleaseWithDebugInfo" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "EXECUTABLE_OUTPUT_PATHReleaseWithDebugInfo" +# PROP Intermediate_Dir "ReleaseWithDebugInfo" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c +# ADD CPP /nologo /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /FD /c +# ADD CPP BUILD_INCLUDES EXTRA_DEFINES /D "OUTPUT_LIBNAME_EXPORTS" +# ADD CPP CMAKE_CXX_FLAGS +# ADD CPP CMAKE_CXX_FLAGS_RELWITHDEBUGINFO +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /IGNORE:4089 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /IGNORE:4089 +CM_MULTILINE_OPTIMIZED_LIBRARIES +CM_MULTILINE_LIBRARIES + !ENDIF # Begin Target @@ -135,3 +164,4 @@ CM_MULTILINE_LIBRARIES # Name "OUTPUT_LIBNAME - Win32 Release" # Name "OUTPUT_LIBNAME - Win32 Debug" # Name "OUTPUT_LIBNAME - Win32 MinSizeRel" +# Name "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" diff --git a/Templates/EXEWinHeader.dsptemplate b/Templates/EXEWinHeader.dsptemplate index d48196793..34d7190fb 100644 --- a/Templates/EXEWinHeader.dsptemplate +++ b/Templates/EXEWinHeader.dsptemplate @@ -33,6 +33,7 @@ CFG=OUTPUT_LIBNAME - Win32 Debug !MESSAGE "OUTPUT_LIBNAME - Win32 Debug" (based on "Win32 (x86) Application") !MESSAGE "OUTPUT_LIBNAME - Win32 MinSizeRel" (based on "Win32 (x86) Application") !MESSAGE "OUTPUT_LIBNAME - Win32 Release" (based on "Win32 (x86) Application") +!MESSAGE "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" (based on "Win32 (x86) Application") !MESSAGE # Begin Project @@ -69,7 +70,7 @@ BSC32=bscmake.exe # ADD BSC32 /nologo LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /IGNORE:4089 -# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /IGNORE:4089 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /IGNORE:4089 CM_MULTILINE_OPTIMIZED_LIBRARIES CM_MULTILINE_LIBRARIES @@ -131,6 +132,36 @@ LINK32=link.exe CM_MULTILINE_OPTIMIZED_LIBRARIES CM_MULTILINE_LIBRARIES +!ELSEIF "$(CFG)" == "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "ReleaseWithDebugInfo" +# PROP BASE Intermediate_Dir "ReleaseWithDebugInfo" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "EXECUTABLE_OUTPUT_PATHReleaseWithDebugInfo" +# PROP Intermediate_Dir "ReleaseWithDebugInfo" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /FD /c +# ADD CPP /nologo /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /FD /c +# ADD CPP BUILD_INCLUDES EXTRA_DEFINES /D "OUTPUT_LIBNAME_EXPORTS" +# ADD CPP CMAKE_CXX_FLAGS +# ADD CPP CMAKE_CXX_FLAGS_RELWITHDEBUGINFO +# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32 +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386 /IGNORE:4089 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /IGNORE:4089 +CM_MULTILINE_OPTIMIZED_LIBRARIES +CM_MULTILINE_LIBRARIES + !ENDIF # Begin Target @@ -138,3 +169,4 @@ CM_MULTILINE_LIBRARIES # Name "OUTPUT_LIBNAME - Win32 Release" # Name "OUTPUT_LIBNAME - Win32 Debug" # Name "OUTPUT_LIBNAME - Win32 MinSizeRel" +# Name "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" diff --git a/Templates/UtilityHeader.dsptemplate b/Templates/UtilityHeader.dsptemplate index fab030019..626f77760 100644 --- a/Templates/UtilityHeader.dsptemplate +++ b/Templates/UtilityHeader.dsptemplate @@ -20,6 +20,7 @@ CFG=OUTPUT_LIBNAME - Win32 Debug !MESSAGE "OUTPUT_LIBNAME - Win32 Debug" (based on "Win32 (x86) Generic Project") !MESSAGE "OUTPUT_LIBNAME - Win32 MinSizeRel" (based on "Win32 (x86) Generic Project") !MESSAGE "OUTPUT_LIBNAME - Win32 Release" (based on "Win32 (x86) Generic Project") +!MESSAGE "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" (based on "Win32 (x86) Generic Project") !MESSAGE # Begin Project @@ -67,6 +68,19 @@ MTL=midl.exe # PROP Intermediate_Dir "MinSizeRel" # PROP Target_Dir "" +!ELSEIF "$(CFG)" == "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "ReleaseWithDebugInfo" +# PROP BASE Intermediate_Dir "ReleaseWithDebugInfo" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "EXECUTABLE_OUTPUT_PATHReleaseWithDebugInfo" +# PROP Intermediate_Dir "ReleaseWithDebugInfo" +# PROP Target_Dir "" + !ENDIF # Begin Target @@ -74,3 +88,4 @@ MTL=midl.exe # Name "OUTPUT_LIBNAME - Win32 Release" # Name "OUTPUT_LIBNAME - Win32 Debug" # Name "OUTPUT_LIBNAME - Win32 MinSizeRel" +# Name "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" diff --git a/Templates/staticLibHeader.dsptemplate b/Templates/staticLibHeader.dsptemplate index 533e3f89e..883bd7779 100644 --- a/Templates/staticLibHeader.dsptemplate +++ b/Templates/staticLibHeader.dsptemplate @@ -33,6 +33,7 @@ CFG=OUTPUT_LIBNAME - Win32 Debug !MESSAGE "OUTPUT_LIBNAME - Win32 Debug" (based on "Win32 (x86) Static Library") !MESSAGE "OUTPUT_LIBNAME - Win32 MinSizeRel" (based on "Win32 (x86) Static Library") !MESSAGE "OUTPUT_LIBNAME - Win32 Release" (based on "Win32 (x86) Static Library") +!MESSAGE "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" (based on "Win32 (x86) Static Library") # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" @@ -117,6 +118,31 @@ LIB32=link.exe -lib # ADD BASE LIB32 /nologo # ADD LIB32 /nologo +!ELSEIF "$(CFG)" == "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "ReleaseWithDebugInfo" +# PROP BASE Intermediate_Dir "ReleaseWithDebugInfo" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "LIBRARY_OUTPUT_PATHReleaseWithDebugInfo" +# PROP Intermediate_Dir "ReleaseWithDebugInfo" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /FD /c +# ADD CPP /nologo /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /FD /c +# ADD CPP BUILD_INCLUDES EXTRA_DEFINES /D "OUTPUT_LIBNAME_EXPORTS" +# ADD CPP CMAKE_CXX_FLAGS +# ADD CPP CMAKE_CXX_FLAGS_RELWITHDEBUGINFO +# ADD BASE RSC /l 0x409 /d "NDEBUG" +# ADD RSC /l 0x409 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LIB32=link.exe -lib +# ADD BASE LIB32 /nologo +# ADD LIB32 /nologo !ENDIF @@ -125,4 +151,5 @@ LIB32=link.exe -lib # Name "OUTPUT_LIBNAME - Win32 Release" # Name "OUTPUT_LIBNAME - Win32 Debug" # Name "OUTPUT_LIBNAME - Win32 MinSizeRel" +# Name "OUTPUT_LIBNAME - Win32 ReleaseWithDebugInfo"