diff --git a/src/libgmshdg/CMakeLists.txt b/src/libgmshdg/CMakeLists.txt index d347dd9e4cef92e5313ea2d54656130a4969de6e..8f2008d860281a94a2ce675cc21209a0b7c453c5 100644 --- a/src/libgmshdg/CMakeLists.txt +++ b/src/libgmshdg/CMakeLists.txt @@ -33,4 +33,10 @@ if (OPT_ENABLE_GPU_SOLVER) else() add_library(gmshdg SHARED ${LIBGMSHDG_SOURCES}) target_link_libraries(gmshdg ${LINK_LIBS}) -endif() \ No newline at end of file +endif() + +if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") + set_property(TARGET gmshdg APPEND_STRING PROPERTY LINK_FLAGS " -Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/libgmshdg.lkr") + set_target_properties(gmshdg PROPERTIES LINK_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/libgmshdg.lkr") +endif() + diff --git a/src/libgmshdg/libgmshdg.lkr b/src/libgmshdg/libgmshdg.lkr new file mode 100644 index 0000000000000000000000000000000000000000..60ba8a45347852c240d4632c68f122cd3261376e --- /dev/null +++ b/src/libgmshdg/libgmshdg.lkr @@ -0,0 +1,11 @@ +{ + global: *; + local: + extern "C++" + { + Eigen::*; + *Eigen::internal::*; + sol::*; + }; +}; +