summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2018-07-05 10:03:27 +0300
committerSamuli Piippo <samuli.piippo@qt.io>2018-07-05 10:03:27 +0300
commitfe1bc76ad4cc4e114a639ca94716cfd24f0b5ad5 (patch)
treed007fed4c6c9f33c41573550e76fc325b040b59b
parent0ab7116f9cbb93b3132481731db296245044fbff (diff)
parent0263af75c053d1d7ea4882a75cf59b230fbb88ad (diff)
downloadmeta-qt5-fe1bc76ad4cc4e114a639ca94716cfd24f0b5ad5.tar.gz
Merge remote-tracking branch 'qtyocto/upstream/master' into 5.11
* qtyocto/upstream/master: qt5: add option to build Qt5 statically qtbase: fix install locations used in static builds qttranslations: do not use qt meta catalog translation package qttools: Disable clang support qtbase: add PACKAGECONFIG for Link Time Optimization qt5: remove all references to qtquick1 import path qt5/qtscript: Fix qtscript cross compile error README: Add Yocto Project Compatible badge and fix formatting Change-Id: Ic8cb74f6e87634b26f79c9effffb80deb6a51b6b
-rw-r--r--README.md8
-rw-r--r--classes/cmake_qt5.bbclass1
-rw-r--r--classes/populate_sdk_qt5_base.bbclass1
-rw-r--r--classes/qmake5_base.bbclass2
-rw-r--r--classes/qmake5_paths.bbclass1
-rw-r--r--recipes-qt/qt5/nativesdk-qtbase_git.bb1
-rw-r--r--recipes-qt/qt5/qt5.inc35
-rw-r--r--recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch27
-rw-r--r--recipes-qt/qt5/qtbase_git.bb3
-rw-r--r--recipes-qt/qt5/qtdeclarative_git.bb3
-rw-r--r--recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch58
-rw-r--r--recipes-qt/qt5/qtscript_git.bb2
-rw-r--r--recipes-qt/qt5/qttools_git.bb5
-rw-r--r--recipes-qt/qt5/qttranslations_git.bb7
-rw-r--r--recipes-qt/qt5/qtwebengine_git.bb4
15 files changed, 125 insertions, 33 deletions
diff --git a/README.md b/README.md
index fe943211..705f2f27 100644
--- a/README.md
+++ b/README.md
@@ -3,9 +3,7 @@ Qt5 OpenEmbedded/Yocto Project layer
3 3
4This layer depends on: 4This layer depends on:
5 5
6URI: https://github.com/openembedded/openembedded-core 6URI: https://github.com/openembedded/openembedded-core (branch: master)
7branch: master
8revision: HEAD
9 7
10When building stuff like `qtdeclarative`, `qtquick`, `qtwebkit`, make 8When building stuff like `qtdeclarative`, `qtquick`, `qtwebkit`, make
11sure that you have required `PACKAGECONFIG` options enabled in qtbase 9sure that you have required `PACKAGECONFIG` options enabled in qtbase
@@ -28,5 +26,7 @@ Maintainers
28Yocto Project Compatible 26Yocto Project Compatible
29------------------------ 27------------------------
30 28
31meta-qt5 has Yocto Project Compatible status since 2013: 29![Yocto Project Compatible](https://github.com/meta-qt5/meta-qt5/blob/master/files/YoctoProject_Badge_Compatible.png)
30
31meta-qt5 has Yocto Project Compatible status since 2013. Check it at:
32https://www.yoctoproject.org/product/meta-qt5 32https://www.yoctoproject.org/product/meta-qt5
diff --git a/classes/cmake_qt5.bbclass b/classes/cmake_qt5.bbclass
index 5d605a68..5ba960ec 100644
--- a/classes/cmake_qt5.bbclass
+++ b/classes/cmake_qt5.bbclass
@@ -12,7 +12,6 @@ EXTRA_OECMAKE_prepend = " \
12 -DOE_QMAKE_PATH_BINS=${OE_QMAKE_PATH_BINS} \ 12 -DOE_QMAKE_PATH_BINS=${OE_QMAKE_PATH_BINS} \
13 -DOE_QMAKE_PATH_LIBEXECS=${OE_QMAKE_PATH_LIBEXECS} \ 13 -DOE_QMAKE_PATH_LIBEXECS=${OE_QMAKE_PATH_LIBEXECS} \
14 -DOE_QMAKE_PATH_PLUGINS=${OE_QMAKE_PATH_PLUGINS} \ 14 -DOE_QMAKE_PATH_PLUGINS=${OE_QMAKE_PATH_PLUGINS} \
15 -DOE_QMAKE_PATH_IMPORTS=${OE_QMAKE_PATH_IMPORTS} \
16 -DOE_QMAKE_PATH_QML=${OE_QMAKE_PATH_QML} \ 15 -DOE_QMAKE_PATH_QML=${OE_QMAKE_PATH_QML} \
17 -DOE_QMAKE_PATH_TRANSLATIONS=${OE_QMAKE_PATH_TRANSLATIONS} \ 16 -DOE_QMAKE_PATH_TRANSLATIONS=${OE_QMAKE_PATH_TRANSLATIONS} \
18 -DOE_QMAKE_PATH_DOCS=${OE_QMAKE_PATH_DOCS} \ 17 -DOE_QMAKE_PATH_DOCS=${OE_QMAKE_PATH_DOCS} \
diff --git a/classes/populate_sdk_qt5_base.bbclass b/classes/populate_sdk_qt5_base.bbclass
index b6ce5967..c26fee44 100644
--- a/classes/populate_sdk_qt5_base.bbclass
+++ b/classes/populate_sdk_qt5_base.bbclass
@@ -14,7 +14,6 @@ create_sdk_files_prepend () {
14 echo 'Binaries = ${OE_QMAKE_PATH_QT_BINS}' >> $qtconf 14 echo 'Binaries = ${OE_QMAKE_PATH_QT_BINS}' >> $qtconf
15 echo 'LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}' >> $qtconf 15 echo 'LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}' >> $qtconf
16 echo 'Plugins = ${OE_QMAKE_PATH_PLUGINS}' >> $qtconf 16 echo 'Plugins = ${OE_QMAKE_PATH_PLUGINS}' >> $qtconf
17 echo 'Imports = ${OE_QMAKE_PATH_IMPORTS}' >> $qtconf
18 echo 'Qml2Imports = ${OE_QMAKE_PATH_QML}' >> $qtconf 17 echo 'Qml2Imports = ${OE_QMAKE_PATH_QML}' >> $qtconf
19 echo 'Translations = ${OE_QMAKE_PATH_QT_TRANSLATIONS}' >> $qtconf 18 echo 'Translations = ${OE_QMAKE_PATH_QT_TRANSLATIONS}' >> $qtconf
20 echo 'Documentation = ${OE_QMAKE_PATH_QT_DOCS}' >> $qtconf 19 echo 'Documentation = ${OE_QMAKE_PATH_QT_DOCS}' >> $qtconf
diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass
index 8f1d143a..b3a4826a 100644
--- a/classes/qmake5_base.bbclass
+++ b/classes/qmake5_base.bbclass
@@ -60,7 +60,6 @@ Data = ${OE_QMAKE_PATH_DATA}
60Binaries = ${OE_QMAKE_PATH_BINS} 60Binaries = ${OE_QMAKE_PATH_BINS}
61LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} 61LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}
62Plugins = ${OE_QMAKE_PATH_PLUGINS} 62Plugins = ${OE_QMAKE_PATH_PLUGINS}
63Imports = ${OE_QMAKE_PATH_IMPORTS}
64Qml2Imports = ${OE_QMAKE_PATH_QML} 63Qml2Imports = ${OE_QMAKE_PATH_QML}
65Translations = ${OE_QMAKE_PATH_TRANSLATIONS} 64Translations = ${OE_QMAKE_PATH_TRANSLATIONS}
66Documentation = ${OE_QMAKE_PATH_DOCS} 65Documentation = ${OE_QMAKE_PATH_DOCS}
@@ -93,7 +92,6 @@ Data = ${OE_QMAKE_PATH_DATA}
93Binaries = ${OE_QMAKE_PATH_BINS} 92Binaries = ${OE_QMAKE_PATH_BINS}
94LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS} 93LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}
95Plugins = ${OE_QMAKE_PATH_PLUGINS} 94Plugins = ${OE_QMAKE_PATH_PLUGINS}
96Imports = ${OE_QMAKE_PATH_IMPORTS}
97Qml2Imports = ${OE_QMAKE_PATH_QML} 95Qml2Imports = ${OE_QMAKE_PATH_QML}
98Translations = ${OE_QMAKE_PATH_TRANSLATIONS} 96Translations = ${OE_QMAKE_PATH_TRANSLATIONS}
99Documentation = ${OE_QMAKE_PATH_DOCS} 97Documentation = ${OE_QMAKE_PATH_DOCS}
diff --git a/classes/qmake5_paths.bbclass b/classes/qmake5_paths.bbclass
index e1101a9c..f3c7b112 100644
--- a/classes/qmake5_paths.bbclass
+++ b/classes/qmake5_paths.bbclass
@@ -20,7 +20,6 @@ OE_QMAKE_PATH_DATA = "${datadir}"
20OE_QMAKE_PATH_BINS = "${bindir}" 20OE_QMAKE_PATH_BINS = "${bindir}"
21OE_QMAKE_PATH_LIBEXECS = "${libdir}${QT_DIR_NAME}/libexec" 21OE_QMAKE_PATH_LIBEXECS = "${libdir}${QT_DIR_NAME}/libexec"
22OE_QMAKE_PATH_PLUGINS = "${libdir}${QT_DIR_NAME}/plugins" 22OE_QMAKE_PATH_PLUGINS = "${libdir}${QT_DIR_NAME}/plugins"
23OE_QMAKE_PATH_IMPORTS = "${libdir}${QT_DIR_NAME}/imports"
24OE_QMAKE_PATH_QML = "${libdir}${QT_DIR_NAME}/qml" 23OE_QMAKE_PATH_QML = "${libdir}${QT_DIR_NAME}/qml"
25OE_QMAKE_PATH_TRANSLATIONS = "${datadir}/translations" 24OE_QMAKE_PATH_TRANSLATIONS = "${datadir}/translations"
26OE_QMAKE_PATH_DOCS = "${docdir}" 25OE_QMAKE_PATH_DOCS = "${docdir}"
diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb
index 6ee5334a..ddca5bf9 100644
--- a/recipes-qt/qt5/nativesdk-qtbase_git.bb
+++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb
@@ -140,7 +140,6 @@ do_configure() {
140 -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ 140 -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \
141 -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ 141 -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \
142 -plugindir ${OE_QMAKE_PATH_PLUGINS} \ 142 -plugindir ${OE_QMAKE_PATH_PLUGINS} \
143 -importdir ${OE_QMAKE_PATH_IMPORTS} \
144 -qmldir ${OE_QMAKE_PATH_QML} \ 143 -qmldir ${OE_QMAKE_PATH_QML} \
145 -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ 144 -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \
146 -testsdir ${OE_QMAKE_PATH_TESTS} \ 145 -testsdir ${OE_QMAKE_PATH_TESTS} \
diff --git a/recipes-qt/qt5/qt5.inc b/recipes-qt/qt5/qt5.inc
index edae5724..99105bd9 100644
--- a/recipes-qt/qt5/qt5.inc
+++ b/recipes-qt/qt5/qt5.inc
@@ -37,6 +37,14 @@ python __anonymous() {
37 d.setVar("PACKAGE_ARCH", tarch) 37 d.setVar("PACKAGE_ARCH", tarch)
38} 38}
39 39
40# if building static Qt5, add qtdeclarative-native dependency to all recipes
41# that depend on qtdeclarative as it's required for qmlimportscannertool
42python __anonymous() {
43 if bb.utils.contains('DISTRO_FEATURES', "qt5-static", True, False, d):
44 if bb.utils.contains('DEPENDS', "qtdeclarative", True, False, d):
45 d.appendVar("DEPENDS", " qtdeclarative-native")
46}
47
40# Many examples come with libraries installed outside of standard libdir, 48# Many examples come with libraries installed outside of standard libdir,
41# suppress QA check complaining 49# suppress QA check complaining
42INSANE_SKIP_${PN}-dbg += "libdir" 50INSANE_SKIP_${PN}-dbg += "libdir"
@@ -48,6 +56,8 @@ PACKAGES =. "${PN}-qmlplugins-dbg ${PN}-tools-dbg ${PN}-plugins-dbg ${PN}-qmldes
48 56
49ALLOW_EMPTY_${PN} = "1" 57ALLOW_EMPTY_${PN} = "1"
50ALLOW_EMPTY_${PN}-dbg = "1" 58ALLOW_EMPTY_${PN}-dbg = "1"
59ALLOW_EMPTY_${PN}-plugins = "1"
60ALLOW_EMPTY_${PN}-qmlplugins = "1"
51 61
52RRECOMMENDS_${PN} = " \ 62RRECOMMENDS_${PN} = " \
53 ${PN}-plugins \ 63 ${PN}-plugins \
@@ -72,9 +82,6 @@ FILES_${PN}-qmlplugins-dbg = " \
72 ${OE_QMAKE_PATH_QML}/*/*/.debug \ 82 ${OE_QMAKE_PATH_QML}/*/*/.debug \
73 ${OE_QMAKE_PATH_QML}/*/*/*/.debug \ 83 ${OE_QMAKE_PATH_QML}/*/*/*/.debug \
74 ${OE_QMAKE_PATH_QML}/*/*/*/*/.debug \ 84 ${OE_QMAKE_PATH_QML}/*/*/*/*/.debug \
75 ${OE_QMAKE_PATH_IMPORTS}/*/.debug \
76 ${OE_QMAKE_PATH_IMPORTS}/*/*/.debug \
77 ${OE_QMAKE_PATH_IMPORTS}/*/*/*/.debug \
78" 85"
79FILES_${PN}-tools-dbg = " \ 86FILES_${PN}-tools-dbg = " \
80 ${OE_QMAKE_PATH_BINS}/.debug \ 87 ${OE_QMAKE_PATH_BINS}/.debug \
@@ -129,16 +136,6 @@ FILES_${PN}-qmlplugins = " \
129 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.js \ 136 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.js \
130 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.jsc \ 137 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.jsc \
131 ${OE_QMAKE_PATH_QML}/*/*/*/*/*/*.png \ 138 ${OE_QMAKE_PATH_QML}/*/*/*/*/*/*.png \
132 ${OE_QMAKE_PATH_IMPORTS}/*.qmltypes \
133 ${OE_QMAKE_PATH_IMPORTS}/*/*${SOLIBSDEV} \
134 ${OE_QMAKE_PATH_IMPORTS}/*/*.qmltypes \
135 ${OE_QMAKE_PATH_IMPORTS}/*/qmldir \
136 ${OE_QMAKE_PATH_IMPORTS}/*/*/*${SOLIBSDEV} \
137 ${OE_QMAKE_PATH_IMPORTS}/*/*/*.qmltypes \
138 ${OE_QMAKE_PATH_IMPORTS}/*/*/qmldir \
139 ${OE_QMAKE_PATH_IMPORTS}/*/*/*/*${SOLIBSDEV} \
140 ${OE_QMAKE_PATH_IMPORTS}/*/*/*/*.qmltypes \
141 ${OE_QMAKE_PATH_IMPORTS}/*/*/*/qmldir \
142" 139"
143 140
144FILES_${PN}-tools = " \ 141FILES_${PN}-tools = " \
@@ -172,6 +169,18 @@ FILES_${PN}-dbg += " \
172" 169"
173FILES_${PN}-staticdev += " \ 170FILES_${PN}-staticdev += " \
174 ${OE_QMAKE_PATH_LIBS}/*.a \ 171 ${OE_QMAKE_PATH_LIBS}/*.a \
172 ${OE_QMAKE_PATH_PLUGINS}/*/*.a \
173 ${OE_QMAKE_PATH_PLUGINS}/*/*.prl \
174 ${OE_QMAKE_PATH_PLUGINS}/*/*/*.a \
175 ${OE_QMAKE_PATH_PLUGINS}/*/*/*.prl \
176 ${OE_QMAKE_PATH_QML}/*/*.a \
177 ${OE_QMAKE_PATH_QML}/*/*.prl \
178 ${OE_QMAKE_PATH_QML}/*/*/*.a \
179 ${OE_QMAKE_PATH_QML}/*/*/*.prl \
180 ${OE_QMAKE_PATH_QML}/*/*/*/*.a \
181 ${OE_QMAKE_PATH_QML}/*/*/*/*.prl \
182 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.a \
183 ${OE_QMAKE_PATH_QML}/*/*/*/*/*.prl \
175" 184"
176FILES_${PN}-examples = " \ 185FILES_${PN}-examples = " \
177 ${OE_QMAKE_PATH_EXAMPLES}/* \ 186 ${OE_QMAKE_PATH_EXAMPLES}/* \
diff --git a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
index 8f7afb6d..f4dfe0b7 100644
--- a/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
+++ b/recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch
@@ -22,10 +22,11 @@ Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
22--- 22---
23 configure | 2 +- 23 configure | 2 +-
24 mkspecs/features/configure.prf | 4 +-- 24 mkspecs/features/configure.prf | 4 +--
25 mkspecs/features/qt.prf | 6 ++--
25 mkspecs/features/qt_functions.prf | 2 +- 26 mkspecs/features/qt_functions.prf | 2 +-
26 mkspecs/linux-oe-g++/qmake.conf | 42 ++++++++++++++++++++++++++++ 27 mkspecs/linux-oe-g++/qmake.conf | 42 ++++++++++++++++++++++++++++
27 mkspecs/linux-oe-g++/qplatformdefs.h | 1 + 28 mkspecs/linux-oe-g++/qplatformdefs.h | 1 +
28 5 files changed, 47 insertions(+), 4 deletions(-) 29 6 files changed, 50 insertions(+), 7 deletions(-)
29 create mode 100644 mkspecs/linux-oe-g++/qmake.conf 30 create mode 100644 mkspecs/linux-oe-g++/qmake.conf
30 create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h 31 create mode 100644 mkspecs/linux-oe-g++/qplatformdefs.h
31 32
@@ -63,6 +64,30 @@ index 934a18a924..0f5b1b6333 100644
63 log("yes$$escape_expand(\\n)") 64 log("yes$$escape_expand(\\n)")
64 msg = "test $$1 succeeded" 65 msg = "test $$1 succeeded"
65 write_file($$QMAKE_CONFIG_LOG, msg, append) 66 write_file($$QMAKE_CONFIG_LOG, msg, append)
67diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf
68index b57afcf72d..afa1c39b3e 100644
69--- a/mkspecs/features/qt.prf
70+++ b/mkspecs/features/qt.prf
71@@ -147,7 +147,7 @@ import_plugins:qtConfig(static) {
72 !isEmpty(plug_type) {
73 plug_path = $$eval(QT_PLUGIN.$${plug}.PATH)
74 isEmpty(plug_path): \
75- plug_path = $$[QT_INSTALL_PLUGINS/get]
76+ plug_path = $$[QT_INSTALL_PLUGINS]
77 LIBS += -L$$plug_path/$$plug_type
78 }
79 LIBS += -l$${plug}$$qtPlatformTargetSuffix()
80@@ -298,8 +298,8 @@ for(ever) {
81 # static builds: link qml import plugins into the target.
82 contains(all_qt_module_deps, qml): \
83 qtConfig(static):import_plugins:!host_build:!no_import_scan {
84- exists($$[QT_INSTALL_QML/get]): \
85- QMLPATHS *= $$[QT_INSTALL_QML/get]
86+ exists($$[QT_INSTALL_QML]): \
87+ QMLPATHS *= $$[QT_INSTALL_QML]
88
89 # run qmlimportscanner
90 qtPrepareTool(QMLIMPORTSCANNER, qmlimportscanner, , system)
66diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf 91diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
67index 1903e509c8..c093dd4592 100644 92index 1903e509c8..c093dd4592 100644
68--- a/mkspecs/features/qt_functions.prf 93--- a/mkspecs/features/qt_functions.prf
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index c68a963e..b991b926 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -69,6 +69,7 @@ PACKAGECONFIG_RELEASE ?= "release"
69# PACKAGECONFIG_OPENSSL ?= "openssl" 69# PACKAGECONFIG_OPENSSL ?= "openssl"
70PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests \ 70PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests \
71 ${@bb.utils.contains('SELECTED_OPTIMIZATION', '-Os', 'optimize-size ltcg', '', d)} \ 71 ${@bb.utils.contains('SELECTED_OPTIMIZATION', '-Os', 'optimize-size ltcg', '', d)} \
72 ${@bb.utils.contains('DISTRO_FEATURES', 'qt5-static', 'static', '', d)} \
72" 73"
73 74
74PACKAGECONFIG ?= " \ 75PACKAGECONFIG ?= " \
@@ -83,6 +84,7 @@ PACKAGECONFIG ?= " \
83 ${PACKAGECONFIG_DISTRO} \ 84 ${PACKAGECONFIG_DISTRO} \
84" 85"
85 86
87PACKAGECONFIG[static] = "-static,-shared"
86PACKAGECONFIG[release] = "-release,-debug" 88PACKAGECONFIG[release] = "-release,-debug"
87PACKAGECONFIG[debug] = "" 89PACKAGECONFIG[debug] = ""
88PACKAGECONFIG[developer] = "-developer-build" 90PACKAGECONFIG[developer] = "-developer-build"
@@ -190,7 +192,6 @@ do_configure() {
190 -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \ 192 -archdatadir ${OE_QMAKE_PATH_ARCHDATA} \
191 -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \ 193 -libexecdir ${OE_QMAKE_PATH_LIBEXECS} \
192 -plugindir ${OE_QMAKE_PATH_PLUGINS} \ 194 -plugindir ${OE_QMAKE_PATH_PLUGINS} \
193 -importdir ${OE_QMAKE_PATH_IMPORTS} \
194 -qmldir ${OE_QMAKE_PATH_QML} \ 195 -qmldir ${OE_QMAKE_PATH_QML} \
195 -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \ 196 -translationdir ${OE_QMAKE_PATH_TRANSLATIONS} \
196 -testsdir ${OE_QMAKE_PATH_TESTS} \ 197 -testsdir ${OE_QMAKE_PATH_TESTS} \
diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb
index 5524460c..df81b2d2 100644
--- a/recipes-qt/qt5/qtdeclarative_git.bb
+++ b/recipes-qt/qt5/qtdeclarative_git.bb
@@ -14,10 +14,11 @@ LIC_FILES_CHKSUM = " \
14 14
15DEPENDS += "qtbase" 15DEPENDS += "qtbase"
16 16
17PACKAGECONFIG ??= "qtxmlpatterns qml-debug qml-network" 17PACKAGECONFIG ??= "qtxmlpatterns qml-debug qml-network ${@bb.utils.contains('DISTRO_FEATURES', 'qt5-static', 'static', '', d)}"
18PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns" 18PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns"
19PACKAGECONFIG[qml-debug] = "-qml-debug,-no-qml-debug" 19PACKAGECONFIG[qml-debug] = "-qml-debug,-no-qml-debug"
20PACKAGECONFIG[qml-network] = "-qml-network, -no-qml-network" 20PACKAGECONFIG[qml-network] = "-qml-network, -no-qml-network"
21PACKAGECONFIG[static] = ",,qtdeclarative-native"
21 22
22do_configure_prepend() { 23do_configure_prepend() {
23 # disable qtxmlpatterns test if it isn't enabled by PACKAGECONFIG 24 # disable qtxmlpatterns test if it isn't enabled by PACKAGECONFIG
diff --git a/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch b/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch
new file mode 100644
index 00000000..a083decf
--- /dev/null
+++ b/recipes-qt/qt5/qtscript/0001-javascriptcore-Use-64-bit-ints.patch
@@ -0,0 +1,58 @@
1From 8fd53951d53ef8c5b62fe985665dad0545bb3161 Mon Sep 17 00:00:00 2001
2From: Alistair Francis <alistair.francis@wdc.com>
3Date: Mon, 4 Jun 2018 14:24:59 -0700
4Subject: [PATCH] javascriptcore: Use 64-bit ints
5
6Where required use 64-bit integers for casts.
7
8Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
9Upstream-Status: Pending
10---
11 .../JavaScriptCore/assembler/X86Assembler.h | 2 +-
12 .../javascriptcore/JavaScriptCore/runtime/JSValue.h | 8 ++++++++
13 2 files changed, 9 insertions(+), 1 deletion(-)
14
15diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h
16index ab3d05f..ed5965f 100644
17--- a/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h
18+++ b/src/3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h
19@@ -2033,7 +2033,7 @@ private:
20 }
21 }
22
23-#if !CPU(X86_64)
24+#if CPU(X86)
25 void memoryModRM(int reg, void* address)
26 {
27 // noBase + ModRmMemoryNoDisp means noBase + ModRmMemoryDisp32!
28diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h
29index 7584c52..958ac89 100644
30--- a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h
31+++ b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSValue.h
32@@ -490,7 +490,11 @@ namespace JSC {
33 u.asBits.tag = CellTag;
34 else
35 u.asBits.tag = EmptyValueTag;
36+#if CPU(X86)
37 u.asBits.payload = reinterpret_cast<int32_t>(ptr);
38+#else
39+ u.asBits.payload = reinterpret_cast<int64_t>(ptr);
40+#endif
41 #if ENABLE(JSC_ZOMBIES)
42 ASSERT(!isZombie());
43 #endif
44@@ -502,7 +506,11 @@ namespace JSC {
45 u.asBits.tag = CellTag;
46 else
47 u.asBits.tag = EmptyValueTag;
48+#if CPU(X86)
49 u.asBits.payload = reinterpret_cast<int32_t>(const_cast<JSCell*>(ptr));
50+#else
51+ u.asBits.payload = reinterpret_cast<int64_t>(const_cast<JSCell*>(ptr));
52+#endif
53 #if ENABLE(JSC_ZOMBIES)
54 ASSERT(!isZombie());
55 #endif
56--
572.17.1
58
diff --git a/recipes-qt/qt5/qtscript_git.bb b/recipes-qt/qt5/qtscript_git.bb
index dc4bed03..09dc8576 100644
--- a/recipes-qt/qt5/qtscript_git.bb
+++ b/recipes-qt/qt5/qtscript_git.bb
@@ -11,6 +11,8 @@ LIC_FILES_CHKSUM = " \
11 file://LICENSE.LGPL3;md5=e6a600fd5e1d9cbde2d983680233ad02 \ 11 file://LICENSE.LGPL3;md5=e6a600fd5e1d9cbde2d983680233ad02 \
12" 12"
13 13
14SRC_URI += "file://0001-javascriptcore-Use-64-bit-ints.patch"
15
14# qemuarm build fails with: 16# qemuarm build fails with:
15# /OE/build/oe-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/qtscript/5.4.1+gitAUTOINC+822df36f25-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/assembler/AssemblerBuffer.h: In member function 'void QTJSC::AssemblerBuffer::putInt64Unchecked(int64_t)': 17# /OE/build/oe-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/qtscript/5.4.1+gitAUTOINC+822df36f25-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/assembler/AssemblerBuffer.h: In member function 'void QTJSC::AssemblerBuffer::putInt64Unchecked(int64_t)':
16#/OE/build/oe-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/qtscript/5.4.1+gitAUTOINC+822df36f25-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/assembler/AssemblerBuffer.h:106:58: warning: cast from 'char*' to 'int64_t* {aka long long int*}' increases required alignment of target type [-Wcast-align] 18#/OE/build/oe-core/tmp-glibc/work/armv5te-oe-linux-gnueabi/qtscript/5.4.1+gitAUTOINC+822df36f25-r0/git/src/3rdparty/javascriptcore/JavaScriptCore/assembler/AssemblerBuffer.h:106:58: warning: cast from 'char*' to 'int64_t* {aka long long int*}' increases required alignment of target type [-Wcast-align]
diff --git a/recipes-qt/qt5/qttools_git.bb b/recipes-qt/qt5/qttools_git.bb
index 763381da..99cff16e 100644
--- a/recipes-qt/qt5/qttools_git.bb
+++ b/recipes-qt/qt5/qttools_git.bb
@@ -27,7 +27,10 @@ FILES_${PN}-examples = "${datadir}${QT_DIR_NAME}/examples"
27PACKAGECONFIG ??= "" 27PACKAGECONFIG ??= ""
28PACKAGECONFIG[qtwebkit] = ",,qtwebkit" 28PACKAGECONFIG[qtwebkit] = ",,qtwebkit"
29 29
30EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)}" 30EXTRA_QMAKEVARS_PRE += " \
31 CONFIG-=config_clang \
32 ${@bb.utils.contains('PACKAGECONFIG', 'qtwebkit', '', 'CONFIG+=noqtwebkit', d)} \
33"
31 34
32SRCREV = "4ec82667f632992e827299c96d3bfd2b221a029b" 35SRCREV = "4ec82667f632992e827299c96d3bfd2b221a029b"
33 36
diff --git a/recipes-qt/qt5/qttranslations_git.bb b/recipes-qt/qt5/qttranslations_git.bb
index d402bf1b..7b434e73 100644
--- a/recipes-qt/qt5/qttranslations_git.bb
+++ b/recipes-qt/qt5/qttranslations_git.bb
@@ -10,7 +10,7 @@ DEPENDS += "qtbase qttools-native"
10 10
11do_install_append() { 11do_install_append() {
12 # remove qtquick1 translations - qtquick1 is gone 12 # remove qtquick1 translations - qtquick1 is gone
13 for transfile in `find ${D}/${OE_QMAKE_PATH_TRANSLATIONS} -name qtquick1_*.qm`; do 13 for transfile in `find ${D}/${OE_QMAKE_PATH_TRANSLATIONS} -name qtquick1_*.qm -o -name qt_*.qm ! -name qt_help_*.qm`; do
14 rm $transfile 14 rm $transfile
15 done 15 done
16} 16}
@@ -33,7 +33,6 @@ PACKAGES =. " \
33 ${PN}-qtserialport \ 33 ${PN}-qtserialport \
34 ${PN}-qtbase \ 34 ${PN}-qtbase \
35 ${PN}-qthelp \ 35 ${PN}-qthelp \
36 ${PN}-qt \
37" 36"
38 37
39FILES_${PN}-assistant = " \ 38FILES_${PN}-assistant = " \
@@ -104,8 +103,4 @@ FILES_${PN}-qthelp = " \
104 ${OE_QMAKE_PATH_TRANSLATIONS}/qt_help_*.qm \ 103 ${OE_QMAKE_PATH_TRANSLATIONS}/qt_help_*.qm \
105" 104"
106 105
107FILES_${PN}-qt = " \
108 ${OE_QMAKE_PATH_TRANSLATIONS}/qt_*.qm \
109"
110
111SRCREV = "3e0de1e1cd4fd194d1069b61f57a55b8d23ab60d" 106SRCREV = "3e0de1e1cd4fd194d1069b61f57a55b8d23ab60d"
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb
index 2dfb50a5..d6565c85 100644
--- a/recipes-qt/qt5/qtwebengine_git.bb
+++ b/recipes-qt/qt5/qtwebengine_git.bb
@@ -73,6 +73,10 @@ inherit qmake5
73inherit gettext 73inherit gettext
74inherit pythonnative 74inherit pythonnative
75inherit perlnative 75inherit perlnative
76inherit distro_features_check
77
78# Static builds of QtWebEngine aren't supported.
79CONFLICT_DISTRO_FEATURES = "qt5-static"
76 80
77# we don't want gettext.bbclass to append --enable-nls 81# we don't want gettext.bbclass to append --enable-nls
78def gettext_oeconf(d): 82def gettext_oeconf(d):