Changeset 2621 for code/branches/buildsystem2/cmake/BuildConfigMSVC.cmake
- Timestamp:
- Jan 29, 2009, 11:35:54 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/buildsystem2/cmake/BuildConfigMSVC.cmake
r2612 r2621 25 25 # ... 26 26 # 27 28 ###################### MSVC config ########################29 # Set the library directories and special options when30 # using Visual Studio.31 ###########################################################32 27 33 IF (MSVC) 28 #################### Compiler Flags ##################### 34 29 35 #################### Compiler Flags ##################### 30 # -MD Minimal Rebuild 31 # -RTC1 Both basic runtime checks 32 # -MD[d] Multithreaded [debug] DLL 33 # -Zi Program Database 34 # -ZI Program Database for Edit & Continue 35 # -WX General warning Level X 36 # -wdX Disable specific warning X 37 # -wnX Set warning level of specific warning X to level n 36 38 37 # /MD Minimal Rebuild 38 # /RTC1 Both basic runtime checks 39 # /MD[d] Multithreaded [debug] DLL 40 # /Zi Program Database 41 # /ZI Program Database for Edit & Continue 42 # /WX Warning Level X 43 # /wdX Disable specific warning X 44 SET(MSVC_CL_FLAGS " 45 /D WIN32 /D __WIN32__ /D _WIN32 /D _WINDOWS 46 /D BOOST_ALL_DYN_LINK 47 /D OIS_DYNAMIC_LIB 48 /D ZLIB_WINAPI 49 /D LUA_BUILD_AS_DLL 50 /D _CRT_SECURE_NO_WARNINGS 51 /W3 52 /EHsc 53 /wd4522 54 /wd4251 55 /wd4800 56 ") 57 SET(CMAKE_C_FLAGS "${MSVC_CL_FLAGS}") 58 SET(CMAKE_CXX_FLAGS "${MSVC_CL_FLAGS}") 39 # Overwrite CMake default flags first. Be careful with this 40 # Only add (not set) the general compiler flags. 41 # CMake default flags : -DWIN32 -D_WINDOWS -W3 -Zm1000 42 # additionally for CXX: -EHsc -GR 43 ADD_COMPILER_FLAGS("-D__WIN32__ -D_WIN32" CACHE) 44 ADD_COMPILER_FLAGS("-D_CRT_SECURE_NO_WARNINGS" CACHE) 45 ADD_COMPILER_FLAGS("-DUNICODE -D_UNICODE" CACHE) 46 ADD_COMPILER_FLAGS("-w44522 -w44251 -w44800" CACHE) 59 47 60 # Note: ${CMAKE_C_FLAGS} get added to the specific ones 61 SET(MSVC_CL_FLAGS_DEBUG "/MDd /Od /Zi /Gm /RTC1") 62 SET(MSVC_CL_FLAGS_RELEASE "/MD /MP2 /D TOLUA_RELEASE") 63 SET(CMAKE_C_FLAGS_DEBUG "${MSVC_CL_FLAGS_DEBUG}") 64 SET(CMAKE_CXX_FLAGS_DEBUG "${MSVC_CL_FLAGS_DEBUG}") 65 SET(CMAKE_C_FLAGS_RELEASE "${MSVC_CL_FLAGS_RELEASE} /O2") 66 SET(CMAKE_CXX_FLAGS_RELEASE "${MSVC_CL_FLAGS_RELEASE} /O2") 67 SET(CMAKE_C_FLAGS_RELWITHDEBINFO "${MSVC_CL_FLAGS_RELEASE} /O2 /Zi") 68 SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${MSVC_CL_FLAGS_RELEASE} /O2 /Zi") 69 SET(CMAKE_C_FLAGS_MINSIZEREL "${MSVC_CL_FLAGS_RELEASE} /O1") 70 SET(CMAKE_CXX_FLAGS_MINSIZEREL "${MSVC_CL_FLAGS_RELEASE} /O1") 48 # Increase warning level if requested 49 IF(EXTRA_WARNINGS) 50 REMOVE_COMPILER_FLAGS("-W1 -W2 -W3" CACHE) 51 ADD_COMPILER_FLAGS ("-W4" CACHE) 52 ELSE(EXTRA_WARNINGS) 53 REMOVE_COMPILER_FLAGS("-W1 -W2 -W4" CACHE) 54 ADD_COMPILER_FLAGS ("-W3" CACHE) 55 ENDIF(EXTRA_WARNINGS) 71 56 72 ##################### Linker Flags ###################### 57 # Overwrite CMake default flags here. 58 SET_COMPILER_FLAGS("-MDd -Od -ZI -D_DEBUG -Gm -RTC1" Debug CACHE) 59 SET_COMPILER_FLAGS("-MD -O2 -DNDEBUG -MP2" Release CACHE) 60 SET_COMPILER_FLAGS("-MD -O2 -Zi -DNDEBUG" RelWithDebInfo CACHE) 61 SET_COMPILER_FLAGS("-MD -O1 -DNDEBUG -MP2" MinSizeRel CACHE) 73 62 74 SET(MSVC_LINKER_FLAGS "") 75 SET(CMAKE_EXE_LINKER_FLAGS "${MSVC_LINKER_FLAGS}") 76 SET(CMAKE_SHARED_LINKER_FLAGS "${MSVC_LINKER_FLAGS}") 63 ##################### Linker Flags ###################### 77 64 78 # Note: ${CMAKE_EXE_LINKER_FLAGS} get added to the specific ones 79 SET(MSVC_LINKER_FLAGS_DEBUG "/INCREMENTAL:YES") 80 SET(MSVC_LINKER_FLAGS_RELEASE "/INCREMENTAL:NO /OPT:REF /OPT:ICF") 81 SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${MSVC_LINKER_FLAGS_DEBUG}") 82 SET(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${MSVC_LINKER_FLAGS_DEBUG}") 83 SET(CMAKE_EXE_LINKER_FLAGS_RELEASE "${MSVC_LINKER_FLAGS_RELEASE}") 84 SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${MSVC_LINKER_FLAGS_RELEASE}") 85 SET(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${MSVC_LINKER_FLAGS_RELEASE}") 86 SET(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${MSVC_LINKER_FLAGS_RELEASE}") 87 SET(CMAKE_EXE_LINKER_FLAGS_MINSIZEREL "${MSVC_LINKER_FLAGS_RELEASE}") 88 SET(CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL "${MSVC_LINKER_FLAGS_RELEASE}") 89 90 ENDIF (MSVC) 65 # CMake default flags: -MANIFEST -STACK:10000000 -machine:I386 66 # and INCREMENTAL and DEBUG for debug versions 67 ADD_LINKER_FLAGS("-OPT:REF -OPT:ICF -OPT:NOWIN98" Release MinSizeRel CACHE)
Note: See TracChangeset
for help on using the changeset viewer.