Merge topic 'mingw-flto' into release-3.24

7b2a87c2eb IPO: Do not use -flto=auto with GCC 10.x on Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !7559
This commit is contained in:
Brad King
2022-08-15 14:48:18 +00:00
committed by Kitware Robot

View File

@@ -79,8 +79,15 @@ macro(__compiler_gnu lang)
# * https://gcc.gnu.org/onlinedocs/gcc-9.5.0/gcc/Optimize-Options.html#Optimize-Options (no)
# * https://gcc.gnu.org/onlinedocs/gcc-10.1.0/gcc/Optimize-Options.html#Optimize-Options (yes)
# Since GCC 12.1, the abundance of a parameter produces a warning if compiling multiple targets.
if(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 10.1)
# FIXME: What version of GCC for Windows added support for -flto=auto? 10.3 does not have it.
if(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 11.0)
list(APPEND __lto_flags -flto=auto)
elseif(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 10.1)
if (CMAKE_HOST_WIN32)
list(APPEND __lto_flags -flto=1)
else()
list(APPEND __lto_flags -flto=auto)
endif()
else()
list(APPEND __lto_flags -flto)
endif()