Преглед изворни кода

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.
Brad King пре 15 година
родитељ
комит
e498527f1d
2 измењених фајлова са 6 додато и 6 уклоњено
  1. 2 2
      Modules/Platform/Darwin-GNU.cmake
  2. 4 4
      Modules/Platform/Darwin-icc.cmake

+ 2 - 2
Modules/Platform/Darwin-GNU.cmake

@@ -20,8 +20,8 @@ set(__DARWIN_COMPILER_GNU 1)
 
 
 macro(__darwin_compiler_gnu lang)
 macro(__darwin_compiler_gnu lang)
   # GNU does not have -shared on OS X
   # 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()
 endmacro()
 
 
 macro(cmake_gnu_has_isysroot lang)
 macro(cmake_gnu_has_isysroot lang)

+ 4 - 4
Modules/Platform/Darwin-icc.cmake

@@ -33,11 +33,11 @@ SET(CMAKE_SHARED_MODULE_PREFIX "lib")
 SET(CMAKE_SHARED_MODULE_SUFFIX ".so")
 SET(CMAKE_SHARED_MODULE_SUFFIX ".so")
 SET(CMAKE_MODULE_EXISTS 1)
 SET(CMAKE_MODULE_EXISTS 1)
 SET(CMAKE_DL_LIBS "")
 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_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")
 SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib" ".so" ".a")