diff options
author | Brad King <brad.king@kitware.com> | 2010-06-07 14:13:33 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2010-06-07 14:15:58 (GMT) |
commit | 693f98c10565d169c1879f6be37339828eb044bc (patch) | |
tree | ad7b7a9533745e343439f6516aa4a8b0754c3aa2 /Modules/Platform | |
parent | 2847d86c68590f8b330bd97b3f78f7033a3c87e0 (diff) | |
download | CMake-693f98c10565d169c1879f6be37339828eb044bc.zip CMake-693f98c10565d169c1879f6be37339828eb044bc.tar.gz CMake-693f98c10565d169c1879f6be37339828eb044bc.tar.bz2 |
Fix rpath-link flag for SunPro C++ 5.11 on Linux
Commit 82c081ba (Fix rpath-link flag for SunPro C++ on Linux,
2009-07-13) taught CMake to pass '-rpath-link' because SunPro C++ 5.9
does not support '-Wl,'. Now SunPro C++ 5.11 does not recognize the
option without using '-Wl,'. Detect whether to use '-Wl,' based on the
output of "sunCC -flags".
Diffstat (limited to 'Modules/Platform')
-rw-r--r-- | Modules/Platform/Linux-SunPro-CXX.cmake | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/Modules/Platform/Linux-SunPro-CXX.cmake b/Modules/Platform/Linux-SunPro-CXX.cmake index 5490473..8ee9658 100644 --- a/Modules/Platform/Linux-SunPro-CXX.cmake +++ b/Modules/Platform/Linux-SunPro-CXX.cmake @@ -1,2 +1,9 @@ -SET(CMAKE_SHARED_LIBRARY_RPATH_LINK_CXX_FLAG "-rpath-link ") +# Sun C++ 5.9 does not support -Wl, but Sun C++ 5.11 does not work without it. +# Query the compiler flags to detect whether to use -Wl. +execute_process(COMMAND ${CMAKE_CXX_COMPILER} -flags OUTPUT_VARIABLE _cxx_flags ERROR_VARIABLE _cxx_error) +if("${_cxx_flags}" MATCHES "\n-W[^\n]*component") + set(CMAKE_SHARED_LIBRARY_RPATH_LINK_CXX_FLAG "-Wl,-rpath-link,") +else() + set(CMAKE_SHARED_LIBRARY_RPATH_LINK_CXX_FLAG "-rpath-link ") +endif() SET(CMAKE_EXE_EXPORTS_CXX_FLAG "--export-dynamic") |