diff options
author | Liang Qi <liang.qi@qt.io> | 2016-12-13 09:36:26 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-12-13 09:39:20 +0100 |
commit | 6755ec891a1740110c48895afd53d39e8370704a (patch) | |
tree | 982606f3bc582262e4b315a63f55ccb141fff97b /mkspecs/features | |
parent | 449204f8c0d6679ae0e58dbb8a30b8a86fbdb4ec (diff) | |
parent | 00c9ec63a552d040e851b561c11428fabf1a2b08 (diff) |
Merge remote-tracking branch 'origin/5.8' into dev
Conflicts:
configure
qmake/Makefile.unix.macos
qmake/Makefile.unix.win32
qmake/generators/win32/msvc_vcproj.cpp
src/3rdparty/pcre/qt_attribution.json
src/corelib/io/qsettings.cpp
src/corelib/kernel/qdeadlinetimer.cpp
src/platformsupport/kmsconvenience/qkmsdevice.cpp
src/platformsupport/kmsconvenience/qkmsdevice_p.h
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h
tests/manual/qstorageinfo/printvolumes.cpp
tools/configure/configureapp.cpp
Change-Id: Ibaabcc8e965c44926f9fb018466e8b132b8df49e
Diffstat (limited to 'mkspecs/features')
-rw-r--r-- | mkspecs/features/moc.prf | 3 | ||||
-rw-r--r-- | mkspecs/features/qt.prf | 9 | ||||
-rw-r--r-- | mkspecs/features/qt_app.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/qt_build_config.prf | 16 | ||||
-rw-r--r-- | mkspecs/features/qt_configure.prf | 16 | ||||
-rw-r--r-- | mkspecs/features/qt_example_installs.prf | 3 | ||||
-rw-r--r-- | mkspecs/features/qt_module_headers.prf | 11 |
7 files changed, 48 insertions, 12 deletions
diff --git a/mkspecs/features/moc.prf b/mkspecs/features/moc.prf index 0bc7482ec7..333d06f63a 100644 --- a/mkspecs/features/moc.prf +++ b/mkspecs/features/moc.prf @@ -32,7 +32,8 @@ if(gcc|intel_icl|msvc):!rim_qcc:!uikit:if(!macos|count(QMAKE_APPLE_DEVICE_ARCHS, gcc: moc_predefs.commands = $$QMAKE_CXX $$QMAKE_CXXFLAGS -dM -E -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN} else:intel_icl: moc_predefs.commands = $$QMAKE_CXX $$QMAKE_CXXFLAGS -QdM -P -Fi${QMAKE_FILE_OUT} ${QMAKE_FILE_IN} else:msvc { - moc_predefs.commands += $$QMAKE_CXX -Bx$$QMAKE_QMAKE $$QMAKE_CXXFLAGS -E ${QMAKE_FILE_IN} 2>NUL >${QMAKE_FILE_OUT} + moc_predefs.commands += $$QMAKE_CXX -Bx$$shell_quote($$shell_path($$QMAKE_QMAKE)) $$QMAKE_CXXFLAGS \ + -E ${QMAKE_FILE_IN} 2>NUL >${QMAKE_FILE_OUT} } else: error("Oops, I messed up") moc_predefs.output = $$MOC_DIR/moc_predefs.h moc_predefs.input = MOC_PREDEF_FILE diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index 07b7565f48..634757a653 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -194,13 +194,8 @@ qt_module_deps = $$resolve_depends(qt_module_deps, "QT.") # static builds: link qml import plugins into the app. contains(qt_module_deps, qml): \ qtConfig(static):contains(TEMPLATE, .*app):!host_build:!no_import_scan { - !isEmpty(QTREPOS) { - for (qrep, QTREPOS): \ - exists($$qrep/qml): \ - QMLPATHS += $$qrep/qml - } else { - QMLPATHS += $$[QT_INSTALL_QML/get] - } + exists($$[QT_INSTALL_QML/get]): \ + QMLPATHS *= $$[QT_INSTALL_QML/get] # run qmlimportscanner qtPrepareTool(QMLIMPORTSCANNER, qmlimportscanner, , system) diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf index 87e32d6d42..cb84ae0da8 100644 --- a/mkspecs/features/qt_app.prf +++ b/mkspecs/features/qt_app.prf @@ -37,6 +37,8 @@ INSTALLS += target load(qt_targets) load(qt_common) +qtSetQmlPath() + no_launch_target: return() load(resolve_target) diff --git a/mkspecs/features/qt_build_config.prf b/mkspecs/features/qt_build_config.prf index f543b47351..8b1034a2d8 100644 --- a/mkspecs/features/qt_build_config.prf +++ b/mkspecs/features/qt_build_config.prf @@ -52,6 +52,22 @@ QMAKE_DIR_REPLACE_SANE = PRECOMPILED_DIR OBJECTS_DIR MOC_DIR RCC_DIR UI_DIR unset(modpath) } +defineTest(qtSetQmlPath) { + !qtConfig(static)|host_build|no_import_scan: \ + return() + deps = $$replace(QT, -private$, _private) + deps = $$resolve_depends(deps, "QT.") + !contains(deps, qml): \ + return() + + isEmpty(QTREPOS): \ + QTREPOS = $$shadowed($$dirname(_QMAKE_CONF_)) + for (qrep, QTREPOS): \ + exists($$qrep/qml): \ + QMLPATHS += $$qrep/qml + export(QMLPATHS) +} + # Apply extra compiler flags passed via configure last. CONFIG = qt_build_extra $$CONFIG diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index 1181566fec..9b3deff331 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -22,12 +22,18 @@ defineTest(qtConfAddWarning) { defineTest(qtConfAddError) { QT_CONFIGURE_ERRORS += "ERROR: $$join(1, $$escape_expand(\\n))" export(QT_CONFIGURE_ERRORS) - equals(2, log) { + equals(2, log):qt_conf_tests_allowed { CONFIG += mention_config_log export(CONFIG) } } +defineTest(qtConfFatalError) { + qtConfAddError($$1, $$2) + qtConfPrintReport() + error() +} + defineTest(qtConfCommandlineSetInput) { arg = $${1} val = $${2} @@ -782,9 +788,7 @@ defineTest(qtConfTest_compile) { defineTest(qtConfTest_verifySpec) { qtConfTest_compile($$1): return(true) - qtConfAddError("Cannot compile a minimal program. The toolchain or QMakeSpec is broken.", log) - qtConfPrintReport() - error() + qtConfFatalError("Cannot compile a minimal program. The toolchain or QMakeSpec is broken.", log) } defineTest(qtConfTest_files) { @@ -1314,6 +1318,10 @@ defineTest(qtConfReport_error) { qtConfAddError($${1}, log) } +defineTest(qtConfReport_fatal) { + qtConfFatalError($${1}) +} + defineTest(qtConfCreateReportRecurse) { equals(2, false) { indent = "" diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf index 4c68cfd72f..0a008374e5 100644 --- a/mkspecs/features/qt_example_installs.prf +++ b/mkspecs/features/qt_example_installs.prf @@ -9,6 +9,9 @@ # We mean it. # +contains(TEMPLATE, .*app): \ + qtSetQmlPath() + contains(TEMPLATE, "vc.*"): return() defineTest(addInstallFiles) { diff --git a/mkspecs/features/qt_module_headers.prf b/mkspecs/features/qt_module_headers.prf index 790a4ee29e..a0be15c4a0 100644 --- a/mkspecs/features/qt_module_headers.prf +++ b/mkspecs/features/qt_module_headers.prf @@ -204,9 +204,20 @@ headersclean:!internal_module { !contains(QT_ARCH, arm):!contains(QT_ARCH, mips): \ hcleanFLAGS += -Wcast-align + greaterThan(QT_CLANG_MAJOR_VERSION, 3) { + hcleanFLAGS += -Wdouble-promotion + } greaterThan(QT_CLANG_MAJOR_VERSION, 2):greaterThan(QT_CLANG_MINOR_VERSION, 7) { + hcleanFLAGS += -Wdouble-promotion + } + !clang { # options accepted only by GCC + greaterThan(QT_GCC_MAJOR_VERSION, 4) { + hcleanFLAGS += -Wdouble-promotion + } greaterThan(QT_GCC_MAJOR_VERSION, 3):greaterThan(QT_GCC_MINOR_VERSION, 4) { + hcleanFLAGS += -Wdouble-promotion + } c++11 { # only enabled for actual c++11 builds due to # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52806 |