diff options
author | vladlosev <vladlosev@861a406c-534a-0410-8894-cb66d6ee9925> | 2010-05-18 21:08:05 +0000 |
---|---|---|
committer | vladlosev <vladlosev@861a406c-534a-0410-8894-cb66d6ee9925> | 2010-05-18 21:08:05 +0000 |
commit | 3232e6797752028fabe8daddd212e52f0ea76ee6 (patch) | |
tree | 5b2ff1d3b9d0a4b9ad1b1bfb0bd59be180e4a52b | |
parent | c3ad69057c28427c2a000a462468b34883853c6e (diff) | |
download | gtest-3232e6797752028fabe8daddd212e52f0ea76ee6.tar.gz gtest-3232e6797752028fabe8daddd212e52f0ea76ee6.tar.bz2 gtest-3232e6797752028fabe8daddd212e52f0ea76ee6.tar.xz |
Introduces gtest_force_shared_crt option for CMake build scripts.
git-svn-id: http://googletest.googlecode.com/svn/trunk@434 861a406c-534a-0410-8894-cb66d6ee9925
-rw-r--r-- | CMakeLists.txt | 7 | ||||
-rw-r--r-- | cmake/internal_utils.cmake | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index fb43ad1..4a978a1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,6 +12,13 @@ # make it prominent in the GUI. option(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF) +# When other libraries are using a shared version of runtime libraries, +# Google Test also has to use one. +option( + gtest_force_shared_crt + "Use shared (DLL) run-time lib even when Google Test is built as static lib." + OFF) + option(gtest_build_tests "Build all of gtest's own tests." OFF) option(gtest_build_samples "Build gtest's sample programs." OFF) diff --git a/cmake/internal_utils.cmake b/cmake/internal_utils.cmake index c611025..01dda3f 100644 --- a/cmake/internal_utils.cmake +++ b/cmake/internal_utils.cmake @@ -15,7 +15,7 @@ macro(fix_default_settings) foreach (flag_var CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO) - if (NOT BUILD_SHARED_LIBS) + if (NOT BUILD_SHARED_LIBS AND NOT gtest_force_shared_crt) # When Google Test is built as a shared library, it should also use # shared runtime libraries. Otherwise, it may end up with multiple # copies of runtime library data in different modules, resulting in |