Pass Mac linker flag through all compilers with -Wl,
The Mac linker defines flag -headerpad_max_install_names but not all front-ends recognize the flag and pass it through (many did in the past, such as the Apple port of GCC). Use the -Wl, option prefix to tell front-ends to pass it through without trying to interpret it.
This commit is contained in:
parent
eda7841fd2
commit
e498527f1d
|
@ -20,8 +20,8 @@ set(__DARWIN_COMPILER_GNU 1)
|
|||
|
||||
macro(__darwin_compiler_gnu lang)
|
||||
# GNU does not have -shared on OS X
|
||||
set(CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS "-dynamiclib -headerpad_max_install_names")
|
||||
set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "-bundle -headerpad_max_install_names")
|
||||
set(CMAKE_SHARED_LIBRARY_CREATE_${lang}_FLAGS "-dynamiclib -Wl,-headerpad_max_install_names")
|
||||
set(CMAKE_SHARED_MODULE_CREATE_${lang}_FLAGS "-bundle -Wl,-headerpad_max_install_names")
|
||||
endmacro()
|
||||
|
||||
macro(cmake_gnu_has_isysroot lang)
|
||||
|
|
|
@ -33,11 +33,11 @@ SET(CMAKE_SHARED_MODULE_PREFIX "lib")
|
|||
SET(CMAKE_SHARED_MODULE_SUFFIX ".so")
|
||||
SET(CMAKE_MODULE_EXISTS 1)
|
||||
SET(CMAKE_DL_LIBS "")
|
||||
SET(CMAKE_C_LINK_FLAGS "-headerpad_max_install_names")
|
||||
SET(CMAKE_CXX_LINK_FLAGS "-headerpad_max_install_names")
|
||||
SET(CMAKE_C_LINK_FLAGS "-Wl,-headerpad_max_install_names")
|
||||
SET(CMAKE_CXX_LINK_FLAGS "-Wl,-headerpad_max_install_names")
|
||||
SET(CMAKE_PLATFORM_HAS_INSTALLNAME 1)
|
||||
SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-dynamiclib -headerpad_max_install_names")
|
||||
SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS "-bundle -headerpad_max_install_names")
|
||||
SET(CMAKE_SHARED_LIBRARY_CREATE_C_FLAGS "-dynamiclib -Wl,-headerpad_max_install_names")
|
||||
SET(CMAKE_SHARED_MODULE_CREATE_C_FLAGS "-bundle -Wl,-headerpad_max_install_names")
|
||||
SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".so" ".a")
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue