diff options
author | Liang Qi <liang.qi@qt.io> | 2017-04-20 11:19:14 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-04-20 12:31:27 +0200 |
commit | 7950b6b283549c98f1e0f981c84b68071a13b616 (patch) | |
tree | cf7281872045ebd57c68e10064ff0f400084aa13 /mkspecs | |
parent | 58d2927861d3e57cac4f6db599e209d2bfb17a2c (diff) | |
parent | 0794d61c822585530243f638687b8a75f0a15d0c (diff) |
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts:
src/corelib/tools/qbytearray.h
src/corelib/tools/qdatetime.h
src/corelib/tools/qstring.h
src/corelib/tools/qversionnumber.h
src/plugins/platforms/android/qandroidplatformintegration.cpp
tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp
Change-Id: Iefd92a435e687a76cd593099e40d9a9620a1454d
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/clang-mac.conf | 2 | ||||
-rw-r--r-- | mkspecs/common/msvc-version.conf | 3 | ||||
-rw-r--r-- | mkspecs/features/android/resolve_target.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/link_ltcg.prf | 4 | ||||
-rw-r--r-- | mkspecs/features/mac/default_post.prf | 26 | ||||
-rw-r--r-- | mkspecs/features/qt_module_headers.prf | 16 | ||||
-rw-r--r-- | mkspecs/macx-icc/qmake.conf | 2 |
7 files changed, 40 insertions, 15 deletions
diff --git a/mkspecs/common/clang-mac.conf b/mkspecs/common/clang-mac.conf index 274fd73d00..cbae2e6262 100644 --- a/mkspecs/common/clang-mac.conf +++ b/mkspecs/common/clang-mac.conf @@ -9,3 +9,5 @@ QMAKE_XCODE_GCC_VERSION = com.apple.compilers.llvm.clang.1_0 QMAKE_CXXFLAGS += -stdlib=libc++ QMAKE_LFLAGS += -stdlib=libc++ QMAKE_AR_LTCG = libtool -static -o + +QMAKE_CFLAGS_APPLICATION_EXTENSION = -fapplication-extension diff --git a/mkspecs/common/msvc-version.conf b/mkspecs/common/msvc-version.conf index 945767ce8c..29f96b7abf 100644 --- a/mkspecs/common/msvc-version.conf +++ b/mkspecs/common/msvc-version.conf @@ -47,7 +47,7 @@ greaterThan(QMAKE_MSC_VER, 1799) { MSVC_VER = 12.0 COMPAT_MKSPEC = win32-msvc2013 QMAKE_CFLAGS += -FS - QMAKE_CXXFLAGS += -FS + QMAKE_CXXFLAGS += -FS -Zc:rvalueCast -Zc:inline QMAKE_CFLAGS_F16C = -arch:AVX @@ -80,6 +80,7 @@ greaterThan(QMAKE_MSC_VER, 1909) { # Visual Studio 2017 (15.0) / Visual C++ 19.10 and up MSVC_VER = 15.0 COMPAT_MKSPEC = win32-msvc2017 + QMAKE_CXXFLAGS += -Zc:referenceBinding } greaterThan(QMAKE_MSC_VER, 1910) { diff --git a/mkspecs/features/android/resolve_target.prf b/mkspecs/features/android/resolve_target.prf new file mode 100644 index 0000000000..2bbeffcfd0 --- /dev/null +++ b/mkspecs/features/android/resolve_target.prf @@ -0,0 +1,2 @@ +load(android) +load(resolve_target) diff --git a/mkspecs/features/link_ltcg.prf b/mkspecs/features/link_ltcg.prf index 03d0e813b6..4da061e1fe 100644 --- a/mkspecs/features/link_ltcg.prf +++ b/mkspecs/features/link_ltcg.prf @@ -1,6 +1,8 @@ gcc { # on Windows, MinGW's support for -flto=N is broken - !clang:!intel_icc:!equals(QMAKE_HOST.os, Windows):greaterThan(QMAKE_HOST.cpu_count, 1) { + intel_icc { + QMAKE_LFLAGS_LTCG ~= s/-ipo/-ipo=$$QMAKE_HOST.cpu_count/ + } else: !clang:!equals(QMAKE_HOST.os, Windows):greaterThan(QMAKE_HOST.cpu_count, 1) { # Override LTO number of jobs QMAKE_LFLAGS_LTCG ~= s/^-flto$/-flto=$$QMAKE_HOST.cpu_count/ } diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf index cb8543254a..2bba73d795 100644 --- a/mkspecs/features/mac/default_post.prf +++ b/mkspecs/features/mac/default_post.prf @@ -40,10 +40,10 @@ qt { !bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD app_extension_api_only { - QMAKE_CFLAGS += -fapplication-extension - QMAKE_CXXFLAGS += -fapplication-extension - QMAKE_CXXFLAGS_PRECOMPILE += -fapplication-extension - QMAKE_LFLAGS += -fapplication-extension + QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION + QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION + QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION + QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION } macx-xcode { @@ -157,13 +157,23 @@ macx-xcode { # Enable precompiled headers for multiple architectures QMAKE_CFLAGS_USE_PRECOMPILE = for (arch, VALID_ARCHS) { + icc_pch_style: \ + use_flag = "-pch-use " + else: \ + use_flag = -include + QMAKE_CFLAGS_USE_PRECOMPILE += \ -Xarch_$${arch} \ - -include${QMAKE_PCH_OUTPUT_$${arch}} + $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}} + } + icc_pch_style { + QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT} + QMAKE_CFLAGS_USE_PRECOMPILE = + } else { + QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE + QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE + QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE } - QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE - QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE - QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT} } diff --git a/mkspecs/features/qt_module_headers.prf b/mkspecs/features/qt_module_headers.prf index 4a4a41850d..a196ad4505 100644 --- a/mkspecs/features/qt_module_headers.prf +++ b/mkspecs/features/qt_module_headers.prf @@ -158,12 +158,18 @@ MODULE_MASTER_DEPS_HEADER = $$MODULE_BASE_OUTDIR/include/$$MODULE_INCNAME/$${MOD } SYNCQT.HEADER_FILES += $$MODULE_MASTER_DEPS_HEADER -# Automatically enable precompiled headers for Qt modules, -# except for Gcc/Windows: Larger precompiled headers crash cc1plus.exe -# (e.g. with i686-4.8.2-release-posix-dwarf-rt_v3-rev3) -!if(gcc:equals(QMAKE_HOST.os, Windows)):!equals(TEMPLATE, aux) { - isEmpty(PRECOMPILED_HEADER): PRECOMPILED_HEADER = $$MODULE_MASTER_DEPS_HEADER +# Automatically enable precompiled headers for Qt modules with more than 2 sources +combined_SOURCES = $$SOURCES $$OBJECTIVE_SOURCES +count(combined_SOURCES, 2, >) { + # except for Gcc/Windows: Larger precompiled headers crash cc1plus.exe + # (e.g. with i686-4.8.2-release-posix-dwarf-rt_v3-rev3) + !if(gcc:equals(QMAKE_HOST.os, Windows)):!equals(TEMPLATE, aux) { + !defined(PRECOMPILED_HEADER, "var"): PRECOMPILED_HEADER = $$MODULE_MASTER_DEPS_HEADER + } +} else { + CONFIG -= precompile_header } +unset(combined_SOURCES) headersclean:!internal_module { # Make sure that the header compiles with our strict options diff --git a/mkspecs/macx-icc/qmake.conf b/mkspecs/macx-icc/qmake.conf index 8d5c1d2418..feeaa08113 100644 --- a/mkspecs/macx-icc/qmake.conf +++ b/mkspecs/macx-icc/qmake.conf @@ -96,6 +96,8 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.10 +QMAKE_APPLE_DEVICE_ARCHS = x86_64 + include(../common/macx.conf) load(qt_config) |