From 032f0f543e1f0bcbec7ad2881f15af0ce50058c2 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Mon, 23 Jun 2014 18:43:06 -0700 Subject: Fix building of the C++11 config.test on Windows with ICL The Intel compiler does support C++11 options on the command-line. configure.exe will correctly try to run it, but the test would fail for incorrect reasons. First, we need to pass the option -Qstd=c++11 to enable it. Second, on Windows, the GCC experimental define isn't defined, nor is __cplusplus updated yet. So we have to rely on the Intel-specific macro. Third, we need CONFIG += console so that the application succeeds in linking against a main() function, as opposed to a WinMain one. Change-Id: I8f3252189df4f8854a9d9aa2cd919c288d2df420 Reviewed-by: Oswald Buddenhagen Reviewed-by: Thiago Macieira --- config.tests/common/c++11/c++11.cpp | 4 ++-- config.tests/common/c++11/c++11.pro | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'config.tests/common') diff --git a/config.tests/common/c++11/c++11.cpp b/config.tests/common/c++11/c++11.cpp index 2c501ad6ca..b41ac7001b 100644 --- a/config.tests/common/c++11/c++11.cpp +++ b/config.tests/common/c++11/c++11.cpp @@ -39,10 +39,10 @@ ** ****************************************************************************/ -#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__) +#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__) || defined(__INTEL_CXX11_MODE__) // Compiler claims to support C++11, trust it #else -# error "__cplusplus must be >= 201103L, or __GXX_EXPERIMENTAL_CXX0X__ must be defined" +# error "__cplusplus must be >= 201103L, or one of __GXX_EXPERIMENTAL_CXX0X__ or __INTEL_CXX11_MODE__ must be defined" #endif #include diff --git a/config.tests/common/c++11/c++11.pro b/config.tests/common/c++11/c++11.pro index dbe764ba84..3620f99c71 100644 --- a/config.tests/common/c++11/c++11.pro +++ b/config.tests/common/c++11/c++11.pro @@ -1,3 +1,3 @@ SOURCES = c++11.cpp -CONFIG += c++11 +CONFIG += c++11 console CONFIG -= qt -- cgit v1.2.3