summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2014-05-23 10:50:59 (GMT)
committerStefan Radomski <radomski@tk.informatik.tu-darmstadt.de>2014-05-23 10:50:59 (GMT)
commit9f3dfcd9982cff90cf0466413d17fc1061c43f00 (patch)
treee29d0f70ecdfb742e3bbbc522e87281c8bbd58e7 /CMakeLists.txt
parent216e8efb0f1aff9afd3881ab89b49e017e255228 (diff)
downloaduscxml-9f3dfcd9982cff90cf0466413d17fc1061c43f00.zip
uscxml-9f3dfcd9982cff90cf0466413d17fc1061c43f00.tar.gz
uscxml-9f3dfcd9982cff90cf0466413d17fc1061c43f00.tar.bz2
Fixed the 100% CPU utilization bug and replaced the bool() cast operator for data by empty()
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt37
1 files changed, 23 insertions, 14 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3d4b2ea..909b167 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -370,21 +370,29 @@ elseif (${CMAKE_CXX_COMPILER_ID} STREQUAL "MSVC")
add_definitions("-D_SCL_SECURE_NO_WARNINGS")
add_definitions("-D_CRT_SECURE_NO_WARNINGS")
add_definitions("/bigobj")
-
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GL")
-
- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LTCG")
- set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /LTCG")
- set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /LTCG")
- set(STATIC_LIBRARY_FLAGS "${STATIC_LIBRARY_FLAGS} /LTCG")
- # set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /NODEFAULTLIB:LIBCMT")
- # set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB:LIBCMT")
- # set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} /NODEFAULTLIB:LIBCMT")
- # set(STATIC_LIBRARY_FLAGS "${STATIC_LIBRARY_FLAGS} /NODEFAULTLIB:LIBCMT")
+ # set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GL") # /LTCG is implied with /GL.
+
+ # be very clear about linking debug / non-debug C++ runtimes
+ foreach(FLAGS CMAKE_EXE_LINKER_FLAGS_RELEASE CMAKE_SHARED_LINKER_FLAGS_RELEASE CMAKE_MODULE_LINKER_FLAGS_RELEASE)
+ set(${FLAGS} "${${FLAGS}} /ignore:4099 /NODEFAULTLIB:MSVCRTD")
+ endforeach()
+
+ # use static MSVCRT
+ # foreach(FLAGS
+ # CMAKE_C_FLAGS_DEBUG
+ # CMAKE_C_FLAGS_MINSIZEREL
+ # CMAKE_C_FLAGS_RELEASE
+ # CMAKE_C_FLAGS_RELWITHDEBINFO
+ # CMAKE_CXX_FLAGS_DEBUG
+ # CMAKE_CXX_FLAGS_MINSIZEREL
+ # CMAKE_CXX_FLAGS_RELEASE
+ # CMAKE_CXX_FLAGS_RELWITHDEBINFO)
+ # if(${FLAGS} MATCHES "/MD")
+ # string(REGEX REPLACE "/MD" "/MT" ${FLAGS} "${${FLAGS}}")
+ # endif()
+ # endforeach()
- # SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /NODEFAULTLIB")
- # SET(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} /NODEFAULTLIB:MSVCRTD.lib")
elseif (${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-parentheses-equality")
@@ -796,7 +804,7 @@ find_package(MILES)
#set(JPEG_ROOT_PATH "" CACHE STRING "Where to find libjpeg")
if (MILES_FOUND)
- if (OFF)
+ if (NOT WIN32)
# openal is only needed for miles
find_package(OpenAL)
find_package(JPEG)
@@ -937,6 +945,7 @@ endif()
if (NOT CMAKE_CROSSCOMPILING)
add_executable(uscxml-browser apps/uscxml-browser.cpp)
target_link_libraries(uscxml-browser uscxml)
+
if (NOT CMAKE_CROSSCOMPILING)
set_target_properties(uscxml-browser PROPERTIES COTIRE_ADD_UNITY_BUILD FALSE)
# cotire(uscxml-browser)