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.
This commit is contained in:
Rolf Eike Beer
2017-01-25 21:53:40 +01:00
parent 014365ea97
commit 24d73fa0eb
2 changed files with 15 additions and 0 deletions

View File

@@ -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")