diff options
author | Brad King <brad.king@kitware.com> | 2023-12-08 17:37:57 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2023-12-08 21:32:20 (GMT) |
commit | df025444b216f69f57a6bf060a75ca883f5ddce8 (patch) | |
tree | f47ea723dde51a5c18fd472bc5e6308863dfa280 /Modules/Internal | |
parent | c1e48a19a5603565d8e691e62ff058ecce61d679 (diff) | |
download | CMake-df025444b216f69f57a6bf060a75ca883f5ddce8.zip CMake-df025444b216f69f57a6bf060a75ca883f5ddce8.tar.gz CMake-df025444b216f69f57a6bf060a75ca883f5ddce8.tar.bz2 |
LinkerId: Identify AIX and SunOS system linkers
Populate `CMAKE_<LANG>_COMPILER_LINKER_{ID,VERSION}` on these platforms.
Diffstat (limited to 'Modules/Internal')
-rw-r--r-- | Modules/Internal/CMakeDetermineLinkerId.cmake | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Modules/Internal/CMakeDetermineLinkerId.cmake b/Modules/Internal/CMakeDetermineLinkerId.cmake index 7311862..05c83d2 100644 --- a/Modules/Internal/CMakeDetermineLinkerId.cmake +++ b/Modules/Internal/CMakeDetermineLinkerId.cmake @@ -26,6 +26,7 @@ function(cmake_determine_linker_id lang linker) # Compute the linker ID and version. foreach(flags IN ITEMS "-v" # AppleClang, GNU, GNUgold, MOLD + "-V" # AIX, Solaris "--version" # LLD ) execute_process(COMMAND "${linker}" ${flags} @@ -72,6 +73,14 @@ function(cmake_determine_linker_id lang linker) set(linker_frontend "MSVC") set(linker_version "${CMAKE_MATCH_1}") break() + elseif (CMAKE_SYSTEM_NAME STREQUAL "SunOS" AND linker_desc MATCHES "Solaris Link Editors: ([0-9.-]+)") + set(linker_id "Solaris") + set(linker_version "${CMAKE_MATCH_1}") + break() + elseif (CMAKE_SYSTEM_NAME STREQUAL "AIX" AND linker_desc MATCHES " LD ([0-9.]+)") + set(linker_id "AIX") + set(linker_version "${CMAKE_MATCH_1}") + break() endif() endforeach() if(NOT linker_id) |