Blame SOURCES/exiv2-simplify-compiler-info-in-cmake.patch

3f58c5
From f9e3c712fe23a9cb661c998fc4fd14e7e5d641f5 Mon Sep 17 00:00:00 2001
3f58c5
From: Luis Diaz Mas <piponazo@gmail.com>
3f58c5
Date: Thu, 17 Aug 2017 22:40:50 +0200
3f58c5
Subject: Simplify compiler info handling in CMake
3f58c5
3f58c5
(cherry picked from commit 69fb40fdc6d5797d10a025b9f5123978dda3bfa4)
3f58c5
3f58c5
diff --git a/CMakeLists.txt b/CMakeLists.txt
3f58c5
index f2103c44..e49fb78b 100644
3f58c5
--- a/CMakeLists.txt
3f58c5
+++ b/CMakeLists.txt
3f58c5
@@ -67,8 +67,8 @@ ENDIF()
3f58c5
 # set include path for FindXXX.cmake files
3f58c5
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/config/")
3f58c5
 
3f58c5
-IF( MINGW OR UNIX )
3f58c5
-    IF ( CMAKE_CXX_COMPILER STREQUAL "g++" OR CMAKE_C_COMPILER STREQUAL "gcc" )
3f58c5
+if( MINGW OR UNIX )
3f58c5
+    if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU)
3f58c5
         ADD_DEFINITIONS(-Wall
3f58c5
                     -Wcast-align
3f58c5
                     -Wpointer-arith
3f58c5
@@ -79,18 +79,8 @@ IF( MINGW OR UNIX )
3f58c5
                    )
3f58c5
     ENDIF()
3f58c5
 
3f58c5
-    execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version OUTPUT_VARIABLE COMPILER_VERSION)
3f58c5
-    string(REGEX MATCHALL "[a-z\+]+" GCC_COMPILER_COMPONENTS ${COMPILER_VERSION})
3f58c5
-    list(GET GCC_COMPILER_COMPONENTS 0 COMPILER)
3f58c5
-
3f58c5
-    execute_process(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GCC_VERSION)
3f58c5
-    string(REGEX MATCHALL "[0-9]+" GCC_VERSION_COMPONENTS ${GCC_VERSION})
3f58c5
-    list(GET GCC_VERSION_COMPONENTS 0 GCC_MAJOR)
3f58c5
-    list(GET GCC_VERSION_COMPONENTS 1 GCC_MINOR)
3f58c5
-
3f58c5
-    message(STATUS Compiler: ${COMPILER} " Major:" ${GCC_MAJOR} " Minor:" ${GCC_MINOR})
3f58c5
-
3f58c5
-    IF ( CYGWIN OR ( ${GCC_MAJOR} GREATER 5 ))
3f58c5
+    message(STATUS "Compiler info: ${CMAKE_CXX_COMPILER_ID} (${CMAKE_CXX_COMPILER}) ; version: ${CMAKE_CXX_COMPILER_VERSION}")
3f58c5
+    IF ( CYGWIN OR (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 5.0))
3f58c5
         ADD_DEFINITIONS( -std=gnu++98 ) # to support snprintf
3f58c5
     ELSE()
3f58c5
         ADD_DEFINITIONS( -std=c++98 )