diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2021-10-12 13:39:37 -0700 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2021-10-13 12:49:49 -0700 |
commit | cb0ea3989598a83b2326f63e7da1669018a965e5 (patch) | |
tree | 7c2a85ef1ad971e2e653b986457117bf95e25c55 /cmake/QtHeadersClean.cmake | |
parent | 63d80c7c4b23b5802f1f20e6b322ccf4cdff5b12 (diff) |
CMake: remove support for building Qt with the old Intel compiler
This hasn't worked for some time. It's not in our CI and I don't think
it was working at all. When I tried to build it, I ran into several
problems with C++17 and an Internal Compiler Error I did not have any
interest in working around.
After discussing with the Intel compiler team, it was decided that
fixing those issues in the old compiler is not going to happen. Instead,
their recommendation is to adopt the new LLVM-based compiler, which
the last commit added support for.
This commit does not remove qmake support for the old ICC. It's possible
someone is using qmake with a non-Qt6 project and ICC.
Change-Id: Icb2516126f674e7b8bb3fffd16ad6350ddbd49e5
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'cmake/QtHeadersClean.cmake')
-rw-r--r-- | cmake/QtHeadersClean.cmake | 50 |
1 files changed, 18 insertions, 32 deletions
diff --git a/cmake/QtHeadersClean.cmake b/cmake/QtHeadersClean.cmake index f2596b4733..c2b83ccb48 100644 --- a/cmake/QtHeadersClean.cmake +++ b/cmake/QtHeadersClean.cmake @@ -97,8 +97,7 @@ function(qt_internal_add_headers_clean_target "$<${compile_flags_exist_genex}:$<JOIN:${target_compile_flags_genex},;>>") if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" - OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang|IntelLLVM" - OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") + OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang|IntelLLVM") # Turn on some extra warnings not found in -Wall -Wextra. set(hcleanFLAGS -Wall -Wextra -Werror -Woverloaded-virtual -Wshadow -Wundef -Wfloat-equal @@ -109,38 +108,25 @@ function(qt_internal_add_headers_clean_target list(APPEND hcleanFLAGS -fPIC) endif() - if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") - # these warnings are disabled because explicit constructors with zero or - # multiple arguments are permitted in C++11: - # 2304: non-explicit constructor with single argument may cause implicit type - # conversion - # 2305: declaration of 'explicit' constructor without a single argument is - # redundant - # - # ICC 14+ has a bug with -Wshadow, emitting it for cases where there's no - # shadowing (issue ID 0000698329, task DPD200245740) - list(APPEND hcleanFLAGS -wd2304,2305 -Wshadow) - else() - # options accepted by GCC and Clang - list(APPEND hcleanFLAGS -Wchar-subscripts -Wold-style-cast) - - if (NOT ((TEST_architecture_arch STREQUAL arm) - OR (TEST_architecture_arch STREQUAL mips))) - list(APPEND hcleanFLAGS -Wcast-align) - endif() + # options accepted by GCC and Clang + list(APPEND hcleanFLAGS -Wchar-subscripts -Wold-style-cast) - if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") - list(APPEND hcleanFLAGS -Wzero-as-null-pointer-constant) - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 4.5) - list(APPEND hcleanFLAGS -Wdouble-promotion) - endif() - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 4.9) - list(APPEND hcleanFLAGS -Wfloat-conversion) + if (NOT ((TEST_architecture_arch STREQUAL arm) + OR (TEST_architecture_arch STREQUAL mips))) + list(APPEND hcleanFLAGS -Wcast-align) + endif() - # GCC 9 has a lot of false positives relating to these - list(APPEND hcleanFlags -Wno-deprecated-copy -Wno-redundant-move - -Wno-format-overflow -Wno-init-list-lifetime) - endif() + if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + list(APPEND hcleanFLAGS -Wzero-as-null-pointer-constant) + if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 4.5) + list(APPEND hcleanFLAGS -Wdouble-promotion) + endif() + if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 4.9) + list(APPEND hcleanFLAGS -Wfloat-conversion) + + # GCC 9 has a lot of false positives relating to these + list(APPEND hcleanFlags -Wno-deprecated-copy -Wno-redundant-move + -Wno-format-overflow -Wno-init-list-lifetime) endif() endif() |