Skip to content

Commit 17c332d

Browse files
committed
Add -fvisibility=hidden to interface targets
1 parent 368fb7f commit 17c332d

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,9 @@ if(NOT (CMAKE_VERSION VERSION_LESS 3.0)) # CMake >= 3.0
9191
$<BUILD_INTERFACE:${PYTHON_INCLUDE_DIRS}>
9292
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
9393
target_compile_options(pybind11 INTERFACE $<BUILD_INTERFACE:${PYBIND11_CPP_STANDARD}>)
94+
if(NOT MSVC)
95+
target_compile_options(pybind11 INTERFACE $<BUILD_INTERFACE:-fvisibility=hidden>)
96+
endif()
9497

9598
add_library(module INTERFACE)
9699
add_library(pybind11::module ALIAS module)

tools/pybind11Config.cmake.in

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,9 @@ if(NOT TARGET ${PN}::pybind11)
9191
endif()
9292

9393
set_property(TARGET ${PN}::pybind11 APPEND PROPERTY INTERFACE_COMPILE_OPTIONS "${PYBIND11_CPP_STANDARD}")
94+
if(NOT MSVC)
95+
set_property(TARGET ${PN}::pybind11 APPEND PROPERTY INTERFACE_COMPILE_OPTIONS "-fvisibility=hidden")
96+
endif()
9497

9598
get_property(_iid TARGET ${PN}::pybind11 PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
9699
get_property(_ill TARGET ${PN}::module PROPERTY INTERFACE_LINK_LIBRARIES)

0 commit comments

Comments
 (0)