Add gtest-specific flags when building/using as a shared library.

- Currently these flags are only used to define the relevant DLL export
  prefix for Windows.

Change-Id: I0c05207b512cb4a985390aefc779b91febdabb38
This commit is contained in:
Alex Stewart
2015-09-21 10:16:01 +01:00
parent c4c7947211
commit 26cd5326a1
+11
View File
@@ -252,6 +252,12 @@ if (BUILD_TESTING AND GFLAGS)
add_definitions(-DCERES_GFLAGS_NAMESPACE=${GFLAGS_NAMESPACE})
add_library(gtest gmock_gtest_all.cc gmock_main.cc)
if (BUILD_SHARED_LIBS)
# Define gtest-specific shared library flags for compilation.
set_target_properties(gtest PROPERTIES COMPILE_DEFINITIONS
GTEST_CREATE_SHARED_LIBRARY)
endif()
add_library(test_util
evaluator_test_utils.cc
numeric_diff_test_utils.cc
@@ -270,6 +276,11 @@ if (BUILD_TESTING AND GFLAGS)
macro (CERES_TEST NAME)
add_executable(${NAME}_test ${NAME}_test.cc)
target_link_libraries(${NAME}_test test_util ceres gtest)
if (BUILD_SHARED_LIBS)
# Define gtest-specific shared library flags for linking.
set_target_properties(${NAME}_test PROPERTIES COMPILE_DEFINITIONS
GTEST_LINKED_AS_SHARED_LIBRARY)
endif()
add_test(NAME ${NAME}_test
COMMAND ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${NAME}_test
--test_srcdir