apache/arrow
cpp/CMakeLists.txt
:358
check_linker_flag(CXX
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/src/arrow/symbols.map"
CXX_LINKER_SUPPORTS_VERSION_SCRIPT)
check_linker_flag(CXX
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR}/src/arrow/symbols.map"
CXX_LINKER_SUPPORTS_VERSION_SCRIPT)
check_linker_flag(C "-Wl,--no-undefined" HAS_NO_UNDEFINED)
check_linker_flag(<lang> <flag> <var>)
check_linker_flag(C "-Wl,--enable-new-dtags" HAVE_ENABLE_NEW_DTAGS)
check_linker_flag(RESULT "${FLAG}")
check_linker_flag(C "-Wl,-z,nodlopen" C_LINKER_SUPPORTS_NODLOPEN)
check_linker_flag(C "-Wl,-z,noexecstack" C_LINKER_SUPPORTS_NOEXECSTACK)
check_linker_flag(C "-Wl,-z,relro" C_LINKER_SUPPORTS_RELRO)
check_linker_flag(C "-Wl,-z,now" C_LINKER_SUPPORTS_NOW)
check_linker_flag(C "-Wl,--as-needed" C_LINKER_SUPPORTS_AS_NEEDED)
check_linker_flag(C "-Wl,--no-copy-dt-needed-entries" C_LINKER_SUPPORTS_NO_COPY_DT_NEEDED_ENTRIES)
check_linker_flag(CXX "-Wl,-z,nodlopen" CXX_LINKER_SUPPORTS_NODLOPEN)
check_linker_flag(CXX "-Wl,-z,noexecstack" CXX_LINKER_SUPPORTS_NOEXECSTACK)
check_linker_flag(CXX "-Wl,-z,relro" CXX_LINKER_SUPPORTS_RELRO)
check_linker_flag(CXX "-Wl,-z,now" CXX_LINKER_SUPPORTS_NOW)
check_linker_flag(CXX "-Wl,--as-needed" CXX_LINKER_SUPPORTS_AS_NEEDED)
check_linker_flag(CXX "-Wl,--no-copy-dt-needed-entries" CXX_LINKER_SUPPORTS_NO_COPY_DT_NEEDED_ENTRIES)
check_linker_flag(C "-l${libname}" mi_has_lib${libname})
check_linker_flag(C "-l${libname}" mi_has_lib${libname})
# implement CHECK_LINKER_FLAG() like feature for CMake < 3.18
# clang-cl) since currently check_linker_flag() doesn't give correct
CHECK_LINKER_FLAG(C ${_flag} LD_FLAG_${varname})
check_linker_flag(CXX -Wl,--version-script=${CMAKE_CURRENT_BINARY_DIR}/cmaketest.map protobuf_HAVE_LD_VERSION_SCRIPT)
check_linker_flag(CXX "LINKER:-zexecstack" has_zexecstack_flag)
check_linker_flag(C "-Wl,-no_warn_duplicate_libraries" SWIFT_LINKER_SUPPORTS_NO_WARN_DUPLICATE_LIBRARIES)
# implement CHECK_LINKER_FLAG() like feature for CMake < 3.18
# clang-cl) since currently check_linker_flag() doesn't give correct
CHECK_LINKER_FLAG(C ${_flag} LD_FLAG_${varname})