From 24d73fa0eb2e9f7cdc8fb8192445ce3ee04cf7d3 Mon Sep 17 00:00:00 2001 From: Rolf Eike Beer Date: Wed, 25 Jan 2017 21:53:40 +0100 Subject: [PATCH] GNUC: also check __GNUG__ define when checking for g++ At least the scratchbox compiler for the N900, which basically is a gcc 4.2, sets only __GNUG__ in C++ mode, but not __GNUC__. It does indeed set __GNUC_MINOR__ and __GNUC_PATCHLEVEL__. Extend the compiler detection code for GNU compilers in C++ mode to look at __GNUG__ in case __GNUC__ is absent. --- ...mpiler.cmake => GNU-C-DetermineCompiler.cmake} | 0 Modules/Compiler/GNU-CXX-DetermineCompiler.cmake | 15 +++++++++++++++ 2 files changed, 15 insertions(+) rename Modules/Compiler/{GNU-DetermineCompiler.cmake => GNU-C-DetermineCompiler.cmake} (100%) create mode 100644 Modules/Compiler/GNU-CXX-DetermineCompiler.cmake diff --git a/Modules/Compiler/GNU-DetermineCompiler.cmake b/Modules/Compiler/GNU-C-DetermineCompiler.cmake similarity index 100% rename from Modules/Compiler/GNU-DetermineCompiler.cmake rename to Modules/Compiler/GNU-C-DetermineCompiler.cmake diff --git a/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake b/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake new file mode 100644 index 0000000000..c25b1471e1 --- /dev/null +++ b/Modules/Compiler/GNU-CXX-DetermineCompiler.cmake @@ -0,0 +1,15 @@ + +set(_compiler_id_pp_test "defined(__GNUC__) || defined(__GNUG__)") + +set(_compiler_id_version_compute " +# if defined(__GNUC__) +# define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__GNUC__) +# else +# define @PREFIX@COMPILER_VERSION_MAJOR @MACRO_DEC@(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define @PREFIX@COMPILER_VERSION_MINOR @MACRO_DEC@(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define @PREFIX@COMPILER_VERSION_PATCH @MACRO_DEC@(__GNUC_PATCHLEVEL__) +# endif")