Add an option to enable building with -fvisibility=hidden.
When this option is set gtest itself is built with -fvisibility=hidden with gcc and clang. This replicates MSVC's default behaviour with gcc and clang.
This commit is contained in:
parent
bb5c92f9d1
commit
580378d522
|
@ -22,6 +22,11 @@ option(gtest_build_samples "Build gtest's sample programs." OFF)
|
||||||
|
|
||||||
option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF)
|
option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF)
|
||||||
|
|
||||||
|
option(
|
||||||
|
gtest_hide_internal_symbols
|
||||||
|
"Build gtest with internal symbols hidden in shared libraries."
|
||||||
|
OFF)
|
||||||
|
|
||||||
# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build().
|
# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build().
|
||||||
include(cmake/hermetic_build.cmake OPTIONAL)
|
include(cmake/hermetic_build.cmake OPTIONAL)
|
||||||
|
|
||||||
|
@ -46,6 +51,11 @@ if (COMMAND set_up_hermetic_build)
|
||||||
set_up_hermetic_build()
|
set_up_hermetic_build()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (gtest_hide_internal_symbols)
|
||||||
|
set(CMAKE_CXX_VISIBILITY_PRESET hidden)
|
||||||
|
set(CMAKE_VISIBILITY_INLINES_HIDDEN 1)
|
||||||
|
endif()
|
||||||
|
|
||||||
# Define helper functions and macros used by Google Test.
|
# Define helper functions and macros used by Google Test.
|
||||||
include(cmake/internal_utils.cmake)
|
include(cmake/internal_utils.cmake)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user