diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index cf79f3d9718..eff4cc9a266 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -306,8 +306,6 @@ elseif(LINUX) set(QT_DEFAULT_MKSPEC linux-g++) elseif(CLANG) set(QT_DEFAULT_MKSPEC linux-clang) - elseif(ICC) - set(QT_DEFAULT_MKSPEC linux-icc-64) endif() elseif(ANDROID) if(GCC) diff --git a/cmake/QtBuildInformation.cmake b/cmake/QtBuildInformation.cmake index 81daae5f13d..a3adf810947 100644 --- a/cmake/QtBuildInformation.cmake +++ b/cmake/QtBuildInformation.cmake @@ -296,8 +296,6 @@ function(qt_configure_process_add_summary_build_type_and_config) string(APPEND message "clang (Intel LLVM)") elseif(CLANG) string(APPEND message "clang") - elseif(ICC) - string(APPEND message "intel_icc") elseif(QCC) string(APPEND message "rim_qcc") elseif(GCC) diff --git a/cmake/QtCompilerOptimization.cmake b/cmake/QtCompilerOptimization.cmake index 69029a59de6..f2ae3c31433 100644 --- a/cmake/QtCompilerOptimization.cmake +++ b/cmake/QtCompilerOptimization.cmake @@ -85,50 +85,6 @@ if (winrt) # FIXME: Correct variable set(QT_CFLAGS_SHANI "-arch:SSE2") endif() -if (ICC) - if (MSVC) - set(QT_CFLAGS_SSE2 "-QxSSE2") - set(QT_CFLAGS_SSE3 "-QxSSE3") - set(QT_CFLAGS_SSSE3 "-QxSSSE3") - set(QT_CFLAGS_SSE4_1 "-QxSSE4.1") - set(QT_CFLAGS_SSE4_2 "-QxSSE4.2") - set(QT_CFLAGS_AVX "-QxAVX") - set(QT_CFLAGS_AVX2 "-QxCORE-AVX2") - set(QT_CFLAGS_AVX512F "-QxCOMMON-AVX512") - set(QT_CFLAGS_AVX512CD "-QxCOMMON-AVX512") - set(QT_CFLAGS_AVX512ER "-QxMIC-AVX512") - set(QT_CFLAGS_AVX512PF "-QxMIC-AVX512") - set(QT_CFLAGS_AVX512DQ "-QxCORE-AVX512") - set(QT_CFLAGS_AVX512BW "-QxCORE-AVX512") - set(QT_CFLAGS_AVX512VL "-QxCORE-AVX512") - set(QT_CFLAGS_F16C "${QT_CFLAGS_AVX2}") - set(QT_CFLAGS_AESNI "-QxSSE2") - set(QT_CFLAGS_RDRND "") - set(QT_CFLAGS_RDSEED "") - set(QT_CFLAGS_SHANI "-QxSSE4.2") - else() - set(QT_CFLAGS_SSE2 "-msse2") - set(QT_CFLAGS_SSE3 "-msse3") - set(QT_CFLAGS_SSSE3 "-mssse3") - set(QT_CFLAGS_SSE4_1 "-msse4.1") - set(QT_CFLAGS_SSE4_2 "-msse4.2") - set(QT_CFLAGS_AVX "-march=core-avx") - set(QT_CFLAGS_AVX2 "-march=core-avx2") - set(QT_CFLAGS_AVX512F "-march=broadwell -xCOMMON-AVX512") - set(QT_CFLAGS_AVX512CD "-march=broadwell -xCOMMON-AVX512") - set(QT_CFLAGS_AVX512ER "-march=knl") - set(QT_CFLAGS_AVX512PF "-march=knl") - set(QT_CFLAGS_AVX512DQ "-march=skylake-avx512") - set(QT_CFLAGS_AVX512BW "-march=skylake-avx512") - set(QT_CFLAGS_AVX512VL "-march=skylake-avx512") - set(QT_CFLAGS_AESNI "-maes") - set(QT_CFLAGS_F16C "${QT_CFLAGS_AVX2}") - set(QT_CFLAGS_RDRND "-mrdrnd") - set(QT_CFLAGS_RDSEED "-mrdseed") - set(QT_CFLAGS_SHANI "-msha") - endif() -endif() - # Fall through is important, so that more specific flags that might be missing are set by the # previous base cases. # This mirrors qmake's mkspecs QMAKE_CFLAGS_OPTIMIZE assignments (mostly). @@ -148,7 +104,7 @@ if(GCC OR CLANG AND NOT WASM) endif() # Flags that CMake might set, aka flags the compiler would see as valid values. -if(GCC OR CLANG OR QCC OR ICC) +if(GCC OR CLANG OR QCC) set(QT_CFLAGS_OPTIMIZE_VALID_VALUES "-O0" "-O1" "-O2" "-O3" "-Os" "-Oz") endif() @@ -184,16 +140,6 @@ if (QCC) set(QT_CFLAGS_OPTIMIZE_FULL "-O3") endif() -if(ICC) - if(MSVC) - set(QT_CFLAGS_OPTIMIZE_FULL "-O3") - else() - # Should inherit gcc base - set(QT_CFLAGS_OPTIMIZE "-O2") - set(QT_CFLAGS_OPTIMIZE_SIZE "-Os") - endif() -endif() - if(WASM) set(QT_CFLAGS_OPTIMIZE "-O2") set(QT_CFLAGS_OPTIMIZE_FULL "-O3") diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake index 11d6a3933e7..3558dd46acd 100644 --- a/cmake/QtFlagHandlingHelpers.cmake +++ b/cmake/QtFlagHandlingHelpers.cmake @@ -101,7 +101,7 @@ function(qt_internal_apply_gc_binaries target visibility) target_link_options("${target}" ${visibility} "${gc_sections_flag}") endif() - if((GCC OR CLANG OR ICC) AND NOT WASM AND NOT UIKIT AND NOT MSVC) + if((GCC OR CLANG) AND NOT WASM AND NOT UIKIT AND NOT MSVC) set(split_sections_flags "-ffunction-sections" "-fdata-sections") endif() if(split_sections_flags) @@ -161,8 +161,6 @@ function(qt_internal_set_exceptions_flags target exceptions_on) else() set(_flag "-fno-exceptions") endif() - elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") - set(_flag "-fno-exceptions") endif() endif() @@ -242,8 +240,6 @@ function(qt_enable_utf8_sources target) set(utf8_flags "") if(MSVC) list(APPEND utf8_flags "-utf-8") - elseif(WIN32 AND ICC) - list(APPEND utf8_flags "-Qoption,cpp,--unicode_source_kind,UTF-8") endif() if(utf8_flags) diff --git a/cmake/QtHeadersClean.cmake b/cmake/QtHeadersClean.cmake index f2596b4733e..c2b83ccb480 100644 --- a/cmake/QtHeadersClean.cmake +++ b/cmake/QtHeadersClean.cmake @@ -97,8 +97,7 @@ function(qt_internal_add_headers_clean_target "$<${compile_flags_exist_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) + # 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) + if (NOT ((TEST_architecture_arch STREQUAL arm) + OR (TEST_architecture_arch STREQUAL mips))) + list(APPEND hcleanFLAGS -Wcast-align) + 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) - 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() + # 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() diff --git a/cmake/QtInternalTargets.cmake b/cmake/QtInternalTargets.cmake index 7bfa77d2b8a..c4bc90247ac 100644 --- a/cmake/QtInternalTargets.cmake +++ b/cmake/QtInternalTargets.cmake @@ -47,20 +47,6 @@ function(qt_internal_set_warnings_are_errors_flags target) if (ANDROID) list(APPEND flags -Wno-error=literal-suffix) endif() - elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") - # Intel CC 13.0 +, on Linux only - if (LINUX) - if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "13.0.0") - # 177: function "entity" was declared but never referenced - # (too aggressive; ICC reports even for functions created due to template instantiation) - # 1224: #warning directive - # 1478: function "entity" (declared at line N) was declared deprecated - # 1786: function "entity" (declared at line N of "file") was declared deprecated ("message") - # 1881: argument must be a constant null pointer value - # (NULL in C++ is usually a literal 0) - list(APPEND flags -Werror -ww177,1224,1478,1786,1881) - endif() - endif() elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") # Only enable for versions of MSVC that are known to work # 1929 is Visual Studio 2019 version 16.0 diff --git a/cmake/QtPlatformSupport.cmake b/cmake/QtPlatformSupport.cmake index e4a33ab46f9..11b316419ad 100644 --- a/cmake/QtPlatformSupport.cmake +++ b/cmake/QtPlatformSupport.cmake @@ -32,7 +32,6 @@ qt_set01(MACOS APPLE AND NOT UIKIT) qt_set01(GCC CMAKE_CXX_COMPILER_ID STREQUAL "GNU") qt_set01(CLANG CMAKE_CXX_COMPILER_ID MATCHES "Clang|IntelLLVM") qt_set01(APPLECLANG CMAKE_CXX_COMPILER_ID MATCHES "AppleClang") -qt_set01(ICC CMAKE_CXX_COMPILER_ID STREQUAL "Intel") qt_set01(IntelLLVM CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM") qt_set01(QCC CMAKE_CXX_COMPILER_ID STREQUAL "QCC") # CMP0047 diff --git a/cmake/QtPriHelpers.cmake b/cmake/QtPriHelpers.cmake index ba7322ad036..8f7e3e9b867 100644 --- a/cmake/QtPriHelpers.cmake +++ b/cmake/QtPriHelpers.cmake @@ -724,10 +724,6 @@ QT_PATCH_VERSION = ${PROJECT_VERSION_PATCH} set(compiler_version_major_var_name "QT_GCC_MAJOR_VERSION") set(compiler_version_minor_var_name "QT_GCC_MINOR_VERSION") set(compiler_version_patch_var_name "QT_GCC_PATCH_VERSION") - elseif(ICC) - set(compiler_version_major_var_name "QT_ICC_MAJOR_VERSION") - set(compiler_version_minor_var_name "QT_ICC_MINOR_VERSION") - set(compiler_version_patch_var_name "QT_ICC_PATCH_VERSION") elseif(MSVC) set(compiler_version_major_var_name "QT_MSVC_MAJOR_VERSION") set(compiler_version_minor_var_name "QT_MSVC_MINOR_VERSION") diff --git a/cmake/QtProcessConfigureArgs.cmake b/cmake/QtProcessConfigureArgs.cmake index e9aa7d32590..6cb17c4e7d6 100644 --- a/cmake/QtProcessConfigureArgs.cmake +++ b/cmake/QtProcessConfigureArgs.cmake @@ -744,9 +744,6 @@ function(guess_compiler_from_mkspec) elseif(mkspec MATCHES "-clang(-|$)" AND NOT mkspec MATCHES "android") set(c_compiler "clang") set(cxx_compiler "clang++") - elseif(mkspec MATCHES "-icc(-|$)") - set(c_compiler "icc") - set(cxx_compiler "icpc") elseif(mkspec MATCHES "-msvc(-|$)") set(c_compiler "cl") set(cxx_compiler "cl") diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt index 1f760cbd3aa..e1d63a34a03 100644 --- a/src/corelib/CMakeLists.txt +++ b/src/corelib/CMakeLists.txt @@ -690,12 +690,6 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_std_atomic64 WrapAtomic::WrapAtomic ) -qt_internal_extend_target(Core CONDITION ICC - COMPILE_OPTIONS - -fp-model - strict -) - qt_internal_extend_target(Core CONDITION QT_FEATURE_system_zlib LIBRARIES WrapZLIB::WrapZLIB @@ -776,7 +770,7 @@ qt_internal_extend_target(Core CONDITION QT_FEATURE_easingcurve tools/qtimeline.cpp tools/qtimeline.h ) -qt_internal_extend_target(Core CONDITION UNIX AND NOT HAIKU AND NOT INTEGRITY AND NOT VXWORKS AND NOT WASM AND (NOT ICC OR NOT MACOS) +qt_internal_extend_target(Core CONDITION UNIX AND NOT HAIKU AND NOT INTEGRITY AND NOT VXWORKS AND NOT WASM AND NOT MACOS LIBRARIES m ) diff --git a/src/plugins/platforms/xcb/CMakeLists.txt b/src/plugins/platforms/xcb/CMakeLists.txt index 48c44a92aba..c73b2de73fd 100644 --- a/src/plugins/platforms/xcb/CMakeLists.txt +++ b/src/plugins/platforms/xcb/CMakeLists.txt @@ -111,7 +111,7 @@ qt_internal_extend_target(XcbQpaPrivate CONDITION QT_FEATURE_dlopen ${CMAKE_DL_LIBS} ) -qt_internal_extend_target(XcbQpaPrivate CONDITION CLANG AND NOT ICC +qt_internal_extend_target(XcbQpaPrivate CONDITION CLANG COMPILE_OPTIONS -ftemplate-depth=1024 ) diff --git a/tests/auto/corelib/global/qnumeric/CMakeLists.txt b/tests/auto/corelib/global/qnumeric/CMakeLists.txt index 0359af03aeb..f86ddffc1d1 100644 --- a/tests/auto/corelib/global/qnumeric/CMakeLists.txt +++ b/tests/auto/corelib/global/qnumeric/CMakeLists.txt @@ -13,14 +13,3 @@ qt_internal_add_test(tst_qnumeric ## Scopes: ##################################################################### - -qt_internal_extend_target(tst_qnumeric CONDITION ICC - COMPILE_OPTIONS - -fp-model - strict -) - -qt_internal_extend_target(tst_qnumeric CONDITION intel_icl - COMPILE_OPTIONS - /fp:strict -) diff --git a/tests/auto/tools/moc/CMakeLists.txt b/tests/auto/tools/moc/CMakeLists.txt index 228af5992e9..44c9ee3fa93 100644 --- a/tests/auto/tools/moc/CMakeLists.txt +++ b/tests/auto/tools/moc/CMakeLists.txt @@ -85,11 +85,11 @@ qt_internal_extend_target(tst_moc CONDITION CMAKE_CROSSCOMPILING MOC_CROSS_COMPILED ) -if (UNIX AND (CLANG OR GCC OR ICC OR QCC)) +if (UNIX AND (CLANG OR GCC OR QCC)) qt_wrap_cpp(os9_moc os9-newlines.h) endif() -qt_internal_extend_target(tst_moc CONDITION UNIX AND (CLANG OR GCC OR ICC OR QCC) +qt_internal_extend_target(tst_moc CONDITION UNIX AND (CLANG OR GCC OR QCC) SOURCES os9-newlines.h win-newlines.h