mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-11 08:20:18 -06:00
committed by
Brad King
parent
4d1066c578
commit
a47283801e
2
Modules/Platform/GNU-GNU-C.cmake
Normal file
2
Modules/Platform/GNU-GNU-C.cmake
Normal file
@@ -0,0 +1,2 @@
|
||||
include(Platform/GNU-GNU)
|
||||
__gnu_compiler_gnu(C)
|
||||
2
Modules/Platform/GNU-GNU-CXX.cmake
Normal file
2
Modules/Platform/GNU-GNU-CXX.cmake
Normal file
@@ -0,0 +1,2 @@
|
||||
include(Platform/GNU-GNU)
|
||||
__gnu_compiler_gnu(CXX)
|
||||
3
Modules/Platform/GNU-GNU-Fortran.cmake
Normal file
3
Modules/Platform/GNU-GNU-Fortran.cmake
Normal file
@@ -0,0 +1,3 @@
|
||||
include(Platform/GNU-GNU)
|
||||
__gnu_compiler_gnu(Fortran)
|
||||
set(CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS "")
|
||||
27
Modules/Platform/GNU-GNU.cmake
Normal file
27
Modules/Platform/GNU-GNU.cmake
Normal file
@@ -0,0 +1,27 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
|
||||
# This module is shared by multiple languages; use include blocker.
|
||||
if(__GNU_COMPILER_GNU)
|
||||
return()
|
||||
endif()
|
||||
set(__GNU_COMPILER_GNU 1)
|
||||
|
||||
macro(__gnu_compiler_gnu lang)
|
||||
# We pass this for historical reasons. Projects may have
|
||||
# executables that use dlopen but do not set ENABLE_EXPORTS.
|
||||
set(CMAKE_SHARED_LIBRARY_LINK_${lang}_FLAGS "-rdynamic")
|
||||
|
||||
set(CMAKE_${lang}_VERBOSE_LINK_FLAG "-Wl,-v")
|
||||
|
||||
# linker selection
|
||||
set(CMAKE_${lang}_USING_LINKER_SYSTEM "")
|
||||
set(CMAKE_${lang}_USING_LINKER_LLD "-fuse-ld=lld")
|
||||
set(CMAKE_${lang}_USING_LINKER_BFD "-fuse-ld=bfd")
|
||||
set(CMAKE_${lang}_USING_LINKER_GOLD "-fuse-ld=gold")
|
||||
if(NOT CMAKE_${lang}_COMPILER_ID STREQUAL "GNU"
|
||||
OR CMAKE_${lang}_COMPILER_VERSION VERSION_GREATER_EQUAL "12.1")
|
||||
set(CMAKE_${lang}_USING_LINKER_MOLD "-fuse-ld=mold")
|
||||
endif()
|
||||
endmacro()
|
||||
Reference in New Issue
Block a user