commit 7eea0b6fa8942cef7f024fc77d1c10550ec68ef7
Author: Kornel Benko <[email protected]>
Date:   Fri Jul 15 10:37:18 2016 +0200

    Cmake build: Added code to compile with QT5.7
    
    QT5.7 cmake config files explicitly instruct cmake to use `-std=gnu++11`.
    This is not the same as is found by our FindCXX11Compiler.cmake,
    which leads to compilation errors.
    Here we overrule the setting.
    
    Thanks to helpfull hand from Brad King <[email protected]>
---
 CMakeLists.txt |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 48688dc..7fd8b26 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -572,7 +572,15 @@ if(NOT MSVC)
        if(NOT LYX_QUIET)
                set(CMAKE_VERBOSE_MAKEFILE ON)
        endif()
-    set(LYX_CXX_FLAGS "-Wall -Wunused-parameter ${LYX_GCC11_MODE}")
+       set(LYX_CXX_FLAGS "-Wall -Wunused-parameter ${LYX_GCC11_MODE}")
+       if(LYX_CXX_FLAGS MATCHES "\\+\\+(14|11|98)")
+         # Thanks to Brad King <[email protected]>
+         # for the pointer to 
https://cmake.org/cmake/help/v3.6/variable/CMAKE_CXX_STANDARD.html
+         # This allows us to use QT5.7 with recent g++ (version >= 4.9) 
compilers
+         # and still use our own c++ extension tests
+         set(CMAKE_CXX_STANDARD ${CMAKE_MATCH_1})
+         message(STATUS "CMAKE_CXX_STANDARD set to ${CMAKE_CXX_STANDARD}")
+       endif()
        if(LYX_STDLIB_DEBUG)
                set(LYX_CXX_FLAGS "${LYX_CXX_FLAGS} -D_GLIBCXX_DEBUG 
-D_GLIBCXX_DEBUG_PEDANTIC")
        endif()

Reply via email to