From c3304ed1a1f4a2396823da05c2f82470074004b9 Mon Sep 17 00:00:00 2001 From: Andreas Lauser Date: Mon, 18 Aug 2014 12:16:04 +0200 Subject: [PATCH] FindQuadmath: add -fext-numeric-literals if the compiler supports it this is required for GCC >= 4.8 to support the 'Q' suffix for floating point literals (which are used in the quadmath.h header) In order to prevent compilers which eat the flag but do not support it from complaining constantly, it is tested for with "-Werror" enabled... --- cmake/Modules/FindQuadmath.cmake | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cmake/Modules/FindQuadmath.cmake b/cmake/Modules/FindQuadmath.cmake index 51948d2aa..06487d339 100644 --- a/cmake/Modules/FindQuadmath.cmake +++ b/cmake/Modules/FindQuadmath.cmake @@ -9,6 +9,12 @@ include(CheckCSourceCompiles) include(CheckCXXSourceCompiles) include(CMakePushCheckState) +include(CheckCXXCompilerFlag) + +check_cxx_compiler_flag("-Werror -fext-numeric-literals" HAVE_EXTENDED_NUMERIC_LITERALS) +if (HAVE_EXTENDED_NUMERIC_LITERALS) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fext-numeric-literals") +endif() cmake_push_check_state() list(APPEND CMAKE_REQUIRED_LIBRARIES "quadmath")