* Use `GNUInstallDirs` in order to respect GNU conventions. This is especially important for multi-arch/multi-lib setups. * Specify position independent mode building properly, without using the historic hack of adding `-fPIC` as a definition. This makes the build system more portable. * Only detect C++ (and not C) to slightly speed up configuring. * Specify C++11 mode using modern CMake idioms. * Fix some whitespace issues.
34 lines
1.0 KiB
CMake
34 lines
1.0 KiB
CMake
# Suppress all warnings from external projects.
|
|
set_property(DIRECTORY APPEND PROPERTY COMPILE_OPTIONS -w)
|
|
|
|
if (TARGET gmock)
|
|
message(STATUS "Google Mock already configured - use it")
|
|
elseif(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/googletest)
|
|
# We need to make sure Google Test does not mess up with the
|
|
# global CRT settings on Windows.
|
|
if(WIN32)
|
|
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
|
endif(WIN32)
|
|
add_subdirectory(googletest)
|
|
set(GTEST_TARGETS
|
|
gtest
|
|
gtest_main
|
|
gmock
|
|
gmock_main)
|
|
foreach(target ${GTEST_TARGETS})
|
|
set_property(TARGET ${target} PROPERTY FOLDER gtest)
|
|
endforeach()
|
|
mark_as_advanced(gmock_build_tests
|
|
BUILD_GMOCK
|
|
BUILD_GTEST
|
|
BUILD_SHARED_LIBS
|
|
gtest_build_samples
|
|
gtest_build_tests
|
|
gtest_disable_pthreads
|
|
gtest_force_shared_crt
|
|
gtest_hide_internal_symbols)
|
|
else()
|
|
message(STATUS
|
|
"Google Mock was not found - tests based on that will not build")
|
|
endif()
|