|
|
@@ -53,6 +53,9 @@ macro(__compiler_gnu lang)
|
|
|
endif()
|
|
|
|
|
|
# define flags for linker depfile generation
|
|
|
+ set(CMAKE_${lang}_LINKER_DEPFILE_FLAGS "LINKER:--dependency-file,<DEP_FILE>")
|
|
|
+ set(CMAKE_${lang}_LINKER_DEPFILE_FORMAT gcc)
|
|
|
+
|
|
|
if(NOT DEFINED CMAKE_${lang}_LINKER_DEPFILE_SUPPORTED)
|
|
|
## Ensure ninja tool is recent enough...
|
|
|
if(CMAKE_GENERATOR MATCHES "^Ninja")
|
|
|
@@ -82,15 +85,19 @@ macro(__compiler_gnu lang)
|
|
|
unset(_linker_capabilities)
|
|
|
endif()
|
|
|
endif()
|
|
|
-
|
|
|
if (CMAKE_${lang}_LINKER_DEPFILE_SUPPORTED)
|
|
|
- set(CMAKE_${lang}_LINKER_DEPFILE_FLAGS "LINKER:--dependency-file,<DEP_FILE>")
|
|
|
- set(CMAKE_${lang}_LINKER_DEPFILE_FORMAT gcc)
|
|
|
set(CMAKE_${lang}_LINK_DEPENDS_USE_LINKER TRUE)
|
|
|
else()
|
|
|
unset(CMAKE_${lang}_LINK_DEPENDS_USE_LINKER)
|
|
|
endif()
|
|
|
|
|
|
+ # For now, due to GNU binutils ld bug when LTO is enabled (see GNU bug
|
|
|
+ # `30568 <https://sourceware.org/bugzilla/show_bug.cgi?id=30568>`_),
|
|
|
+ # deactivate this feature.
|
|
|
+ if (NOT DEFINED CMAKE_LINK_DEPENDS_USE_LINKER)
|
|
|
+ set(CMAKE_LINK_DEPENDS_USE_LINKER FALSE)
|
|
|
+ endif()
|
|
|
+
|
|
|
# Initial configuration flags.
|
|
|
string(APPEND CMAKE_${lang}_FLAGS_INIT " ")
|
|
|
string(APPEND CMAKE_${lang}_FLAGS_DEBUG_INIT " -g")
|