From 0aa084d2612041b82b5bc7d1e336b70f9344de3f Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Fri, 22 Dec 2023 14:26:40 +0100 Subject: [PATCH] [cmake,lto] only check again if not detected --- cmake/CommonConfigOptions.cmake | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/cmake/CommonConfigOptions.cmake b/cmake/CommonConfigOptions.cmake index 0f767b93a..606039004 100644 --- a/cmake/CommonConfigOptions.cmake +++ b/cmake/CommonConfigOptions.cmake @@ -5,15 +5,18 @@ option(WITH_LIBRARY_VERSIONING "Use library version triplet" ON) option(WITH_BINARY_VERSIONING "Use binary versioning" OFF) option(BUILD_SHARED_LIBS "Build shared libraries" ON) -# TODO: The detection does not properly work -# -#include(CheckIPOSupported) -#check_ipo_supported(RESULT supported OUTPUT error) -#if (NOT supported) -# message(WARNING "LTO not supported, got ${error}") -#endif() +# known issue on android, thus disabled until we support newer CMake +# https://github.com/android/ndk/issues/1444 +if (NOT ANDROID) + cmake_policy(SET CMP0069 NEW) + include(CheckIPOSupported) + check_ipo_supported(RESULT supported OUTPUT error) + if (NOT supported) + message(WARNING "LTO not supported, got ${error}") + endif() -option(CMAKE_INTERPROCEDURAL_OPTIMIZATION "build with link time optimization" OFF) + option(CMAKE_INTERPROCEDURAL_OPTIMIZATION "build with link time optimization" ${supported}) +endif() # Default to release build type if(NOT CMAKE_BUILD_TYPE)