[crisscross commit] r854 - in trunk: . source

0 views
Skip to first unread message

codesite...@google.com

unread,
Oct 14, 2008, 3:55:03 PM10/14/08
to crisscr...@googlegroups.com
Author: steven.noonan
Date: Tue Oct 14 12:54:29 2008
New Revision: 854

Modified:
trunk/CMakeLists.txt
trunk/source/CMakeLists.txt

Log:
Visual Studio fixes for CMake.


Modified: trunk/CMakeLists.txt
==============================================================================
--- trunk/CMakeLists.txt (original)
+++ trunk/CMakeLists.txt Tue Oct 14 12:54:29 2008
@@ -30,6 +30,7 @@
ENDIF(CMAKE_COMPILER_IS_GNUCXX)

MACRO(ADD_PRECOMPILED_HEADER _targetName _input)
+IF(CMAKE_COMPILER_IS_GNUCXX)
IF(NOT CMAKE_BUILD_TYPE)
MESSAGE(FATAL_ERROR
"This is the ADD_PRECOMPILED_HEADER macro. "
@@ -97,11 +98,69 @@
PROPERTIES
COMPILE_FLAGS "-include ${_name} -Winvalid-pch"
)
+ENDIF(CMAKE_COMPILER_IS_GNUCXX)
ENDMACRO(ADD_PRECOMPILED_HEADER)

-if(NOT WIN32)
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98 -ggdb -rdynamic -Wall
-Wno-long-long -pedantic")
-endif(NOT WIN32)
+MACRO(ADD_FLAG where flag)
+ SET(${where} "${flag} ${${where}}")
+ENDMACRO(ADD_FLAG)
+
+if(CMAKE_COMPILER_IS_GNUCXX)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++98 -ggdb -fno-rtti
-fno-exceptions -rdynamic -Wall -Wno-long-long -pedantic")
+endif(CMAKE_COMPILER_IS_GNUCXX)
+
+# settings for Microsoft Visual C
+IF(MSVC)
+ IF(NOT WITH_SHARED_LIBS)
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 6")
+ SET(CMAKE_C_FLAGS "/nologo /W3 /GX /Gy /G6 /YX")
+ SET(CMAKE_C_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_C_FLAGS_RELEASE "/MT /O2")
+ SET(CMAKE_C_FLAGS_MINSIZEREL "/MT /O2")
+ SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/MTd /Zi /Od")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 6")
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 7" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 7 .NET 2003")
+ SET(CMAKE_C_FLAGS "/nologo /W3 /Gy /Gm /G6 /GS-")
+ SET(CMAKE_C_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_C_FLAGS_RELEASE "/MT /O2 /Ot")
+ SET(CMAKE_C_FLAGS_MINSIZEREL "/MT /O2 /Os")
+ SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/MTd /Od /Zi")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 7" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 7 .NET 2003")
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 9 2008")
+ SET(CMAKE_C_FLAGS "/nologo /W3 /Gy /Gm /G6 /GS-")
+ SET(CMAKE_C_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_C_FLAGS_RELEASE "/MT /O2 /Ot")
+ SET(CMAKE_C_FLAGS_MINSIZEREL "/MT /O2 /Os")
+ SET(CMAKE_C_FLAGS_RELWITHDEBINFO "/MTd /Od /Zi")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR
CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
+ ENDIF(NOT WITH_SHARED_LIBS)
+ENDIF(MSVC)
+# settings for Microsoft Visual C++
+IF(MSVC)
+ IF(NOT WITH_SHARED_LIBS)
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 6")
+ SET(CMAKE_CXX_FLAGS "/nologo /W3 /GX /Gy /G6 /YX")
+ SET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2")
+ SET(CMAKE_CXX_FLAGS_MINSIZEREL "/MT /O2")
+ SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MTd /Zi /Od")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 6")
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 7" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 7 .NET 2003")
+ SET(CMAKE_CXX_FLAGS "/nologo /W3 /Gy /G6 /Gm /GS- /EHsc-")
+ SET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2 /Ot")
+ SET(CMAKE_CXX_FLAGS_MINSIZEREL "/MT /O2 /Os")
+ SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MTd /Od /Zi")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 7" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 7 .NET 2003")
+ IF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR CMAKE_GENERATOR
STREQUAL "Visual Studio 9 2008")
+ SET(CMAKE_CXX_FLAGS "/nologo /W3 /Gy /G6 /Gm /GS- /EHsc-")
+ SET(CMAKE_CXX_FLAGS_DEBUG "/MTd /Zi /Od")
+ SET(CMAKE_CXX_FLAGS_RELEASE "/MT /O2 /Ot")
+ SET(CMAKE_CXX_FLAGS_MINSIZEREL "/MT /O2 /Os")
+ SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "/MTd /Od /Zi")
+ ENDIF(CMAKE_GENERATOR STREQUAL "Visual Studio 8 2005" OR
CMAKE_GENERATOR STREQUAL "Visual Studio 9 2008")
+ ENDIF(NOT WITH_SHARED_LIBS)
+ENDIF(MSVC)

include_directories (
${CrissCross_BINARY_DIR}
@@ -113,4 +172,6 @@
add_subdirectory (TestSuite)
add_subdirectory (examples)

-add_custom_target (check COMMAND
${CrissCross_BINARY_DIR}/TestSuite/TestSuite DEPENDS TestSuite)
+IF(NOT MSVC)
+ add_custom_target (check COMMAND
${CrissCross_BINARY_DIR}/TestSuite/TestSuite DEPENDS TestSuite)
+ENDIF(NOT MSVC)

Modified: trunk/source/CMakeLists.txt
==============================================================================
--- trunk/source/CMakeLists.txt (original)
+++ trunk/source/CMakeLists.txt Tue Oct 14 12:54:29 2008
@@ -14,7 +14,6 @@
add_library(CrissCross console.cpp core_io_reader.cpp core_io_writer.cpp
core_network.cpp core_socket.cpp cpuid.cpp debug.cpp error.cpp
filereader.cpp filewriter.cpp md2.cpp md4.cpp md5.cpp mutex.cpp sha1.cpp
sha256.cpp sha512.cpp stopwatch.cpp system.cpp tcpsocket.cpp tiger.cpp
udpsocket.cpp universal_include.cpp version.cpp)
add_precompiled_header(CrissCross
${CMAKE_CURRENT_SOURCE_DIR}/crisscross/universal_include.h)
add_dependencies(CrissCross BuildNumber)
-add_dependencies(CrissCross_gch BuildNumber)

if(NOT WIN32)
target_link_libraries(CrissCross pthread)

Reply all
Reply to author
Forward
0 new messages