summaryrefslogtreecommitdiffstats
path: root/recipes-qt/qt5/qtbase_git.bb
diff options
context:
space:
mode:
authorMikko Gronoff <mikko.gronoff@qt.io>2017-09-21 12:49:50 +0300
committerMikko Gronoff <mikko.gronoff@qt.io>2017-09-25 12:14:50 +0300
commit6269d8a5bc402e6dafd8ee8499481d29792d1c4a (patch)
tree604131cc4f8a02426006aa728178540d9e76f303 /recipes-qt/qt5/qtbase_git.bb
parent65172464082a07301fd46a8bc34d78860d2bc5ef (diff)
parent268429962056a12e0e899612dafb433c257af5cf (diff)
downloadmeta-qt5-6269d8a5bc402e6dafd8ee8499481d29792d1c4a.tar.gz
Merge remote-tracking branch 'qtyocto/upstream/master' into 5.9
* qtyocto/upstream/master: qtwebengine: add patch for long paths qtwebengine: update 0004-Force-host-toolchain-configuration.patch qtwebengine: fix build with glibc-2.26 qt: upgrade to latest revision in 5.9 branch qt: refresh remaining patches and add links to meta-qt5 repos qtwebengine: add a fix for building demobrowser without printing support Upgrade to Qt 5.9.0 qtbase, qtgraphicaleffect, qtmultimedia, qtscript, qtlocation, qtwayland: disable gold to work around binutils bug qtwebengine: disable SECURITY_STRINGFORMAT to fix the build meta-toolchain-qt5: don't rely on COREBASE/LICENSE qtbase: fix Krogoth build regression from efa8aaf qt3d: refresh patches qtwebengine: refresh patches qtbase: refresh the patches gstreamer1.0-plugins-bad: add qt5 packageconfig qtbase: remove qtbase-native from DEPENDS qt3d: Fix build with clang qtwebkit: Backport a patch to fix build with icu-59 quazip: update to 0.7.3 and add missing metadata qtbase: Use sched_yield instead of pthread_yield qtbase: Fix ptests with clang qt5-ptest: fix build with yocto < 2.3 (pyro) qtbase: add ptest qwt-qt5.inc: fix QA warning qt5-git.inc: set CVE_PRODUCT to qt python-pyqt5: include QtWidgets module qt5-creator: Link with libexecinfo on musl qtvirtualkeyboard: Include sys/time.h qtwebengine: Fix build on musl qt5-creator: Fix build with NO_ACCESSIBILITY maliit-framework-qt5: Always have optimize flags qtbase-native: Fix qdbuscpp2xml segfault qt5-ptest.inc: append do_populate_sysroot only for target qtwebengine: fix build with gcc7 qwt-qt5: Fix rpath issues qtquickcontrols2: fix compilation of examples/texteditor qtquick1: add ptest qtdeclarative: add ptest qtxmlpatterns: add ptest qt5: add qt5-ptest.inc QtSystems module not updated as newer version fails to build with Yocto. Conflicts: recipes-qt/qt5/nativesdk-qtbase_git.bb recipes-qt/qt5/qt3d/0001-Allow-a-tools-only-build.patch recipes-qt/qt5/qt3d_git.bb recipes-qt/qt5/qtbase-native_git.bb recipes-qt/qt5/qtbase/0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch recipes-qt/qt5/qtbase/0005-configure-bump-path-length-from-256-to-512-character.patch recipes-qt/qt5/qtbase/0012-qdbuscpp2xml.pro-do-not-build-with-bootstrapped-depe.patch recipes-qt/qt5/qtbase_git.bb recipes-qt/qt5/qtcharts_git.bb recipes-qt/qt5/qtdeclarative_git.bb recipes-qt/qt5/qtenginio_git.bb recipes-qt/qt5/qtgraphicaleffects_git.bb recipes-qt/qt5/qtlocation/0001-Make-mapbox-gl-build-configurable.patch recipes-qt/qt5/qtlocation_git.bb recipes-qt/qt5/qtmultimedia_git.bb recipes-qt/qt5/qtquick1_git.bb recipes-qt/qt5/qtquickcontrols_git.bb recipes-qt/qt5/qtremoteobjects_git.bb recipes-qt/qt5/qtscript_git.bb recipes-qt/qt5/qtsensors_git.bb recipes-qt/qt5/qtsvg_git.bb recipes-qt/qt5/qttools_git.bb recipes-qt/qt5/qtwayland_git.bb recipes-qt/qt5/qtwebchannel_git.bb recipes-qt/qt5/qtwebengine/0001-functions.prf-allow-build-for-linux-oe-g-platform.patch recipes-qt/qt5/qtwebengine/0002-WebEngine-qquickwebengineview_p_p.h-add-include-QCol.patch recipes-qt/qt5/qtwebengine/0003-Include-dependency-to-QCoreApplication-translate.patch recipes-qt/qt5/qtwebengine_git.bb recipes-qt/qt5/qtwebkit-examples_git.bb recipes-qt/qt5/qtwebkit_git.bb recipes-qt/qt5/qtwebsockets_git.bb recipes-qt/qt5/qtwebview_git.bb Task-number: QTBUG-62635 Change-Id: I32dbc0b9c26916d57865a08ec6d55cd175c28fd0
Diffstat (limited to 'recipes-qt/qt5/qtbase_git.bb')
-rw-r--r--recipes-qt/qt5/qtbase_git.bb52
1 files changed, 46 insertions, 6 deletions
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index b13766d4..89e1b4ca 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -15,22 +15,49 @@ LIC_FILES_CHKSUM = " \
15" 15"
16 16
17# common for qtbase-native, qtbase-nativesdk and qtbase 17# common for qtbase-native, qtbase-nativesdk and qtbase
18# Patches from https://github.com/meta-qt5/qtbase/commits/b5.9-shared
19# 5.9.meta-qt5-shared.2
18SRC_URI += "\ 20SRC_URI += "\
19 file://0001-Add-linux-oe-g-platform.patch \ 21 file://0001-Add-linux-oe-g-platform.patch \
20 file://0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch \ 22 file://0002-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS.patch \
21 file://0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \ 23 file://0003-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch \
22 file://0005-configure-bump-path-length-from-256-to-512-character.patch \ 24 file://0004-configure-bump-path-length-from-256-to-512-character.patch \
23 file://0009-Disable-all-unknown-features-instead-of-erroring-out.patch \ 25 file://0005-Disable-all-unknown-features-instead-of-erroring-out.patch \
24 file://0010-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch \ 26 file://0006-Pretend-Qt5-wasn-t-found-if-OE_QMAKE_PATH_EXTERNAL_H.patch \
27 file://0007-Delete-qlonglong-and-qulonglong.patch \
28 file://0008-Replace-pthread_yield-with-sched_yield.patch \
29 file://run-ptest \
25" 30"
26 31
27DEPENDS += "qtbase-native" 32inherit ptest
28 33
29# LGPL-3.0 is used only in src/plugins/platforms/android/extract.cpp 34# LGPL-3.0 is used only in src/plugins/platforms/android/extract.cpp
30 35
31# for syncqt 36# for syncqt
32RDEPENDS_${PN}-tools += "perl" 37RDEPENDS_${PN}-tools += "perl"
33 38
39# workaround for gold bug:
40# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=842304
41# https://sourceware.org/bugzilla/show_bug.cgi?id=21712
42# it's triggered only in combination of gold and security_flags.inc,
43# because security_flags.inc now enable pie by default.
44# Adding -no-pie or changing -fuse-ld=gold to -fuse-ld=bfd
45# works around this issue, will use -fuse-ld=bfd as it's considered
46# binutils bug.
47# OE @ ~/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/tests/auto/corelib/kernel/qmetatype $ i586-oe-linux-g++ -m32 -march=i586 --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -fuse-ld=gold -Wl,--enable-new-dtags -o tst_qmetatype .obj/tst_qmetatype.o -L/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/lib -lQt5Test -lQt5Core -lpthread
48# .obj/tst_qmetatype.o(.qtversion+0x0): error: unexpected reloc 3 against global symbol qt_version_tag without base register in object file when generating a position-independent output file
49# collect2: error: ld returned 1 exit status
50#
51# with -no-pie:
52# OE @ ~/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/tests/auto/corelib/kernel/qmetatype $ i586-oe-linux-g++ -no-pie -m32 -march=i586 --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -fuse-ld=gold -Wl,--enable-new-dtags -o tst_qmetatype .obj/tst_qmetatype.o -L/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/lib -lQt5Test -lQt5Core -lpthread
53#
54# with -fuse-ld=gold replaced with -fuse-ld=bfd:
55# OE @ ~/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/tests/auto/corelib/kernel/qmetatype $ i586-oe-linux-g++ -m32 -march=i586 --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed --sysroot=/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/recipe-sysroot -Wl,-O1 -fuse-ld=bfd -Wl,--enable-new-dtags -o tst_qmetatype .obj/tst_qmetatype.o -L/OE/build/oe-core/tmp-glibc/work/i586-oe-linux/qtbase/5.9.0+gitAUTOINC+f6b36eaafe-r0/build/lib -lQt5Test -lQt5Core -lpthread
56#
57# http://errors.yoctoproject.org/Errors/Details/150329/
58QT_CONFIG_FLAGS_GOLD_x86 = "-no-use-gold-linker"
59LDFLAGS_append_x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}"
60
34# separate some parts of PACKAGECONFIG which are often changed 61# separate some parts of PACKAGECONFIG which are often changed
35PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)}" 62PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)}"
36PACKAGECONFIG_FB ?= "${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}" 63PACKAGECONFIG_FB ?= "${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
@@ -42,7 +69,7 @@ PACKAGECONFIG_DISTRO ?= ""
42PACKAGECONFIG_RELEASE ?= "release" 69PACKAGECONFIG_RELEASE ?= "release"
43# This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency 70# This is in qt5.inc, because qtwebkit-examples are using it to enable ca-certificates dependency
44# PACKAGECONFIG_OPENSSL ?= "openssl" 71# PACKAGECONFIG_OPENSSL ?= "openssl"
45PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype" 72PACKAGECONFIG_DEFAULT ?= "dbus udev evdev widgets tools libs freetype tests"
46 73
47PACKAGECONFIG ?= " \ 74PACKAGECONFIG ?= " \
48 ${PACKAGECONFIG_RELEASE} \ 75 ${PACKAGECONFIG_RELEASE} \
@@ -118,7 +145,9 @@ PACKAGECONFIG[libproxy] = "-libproxy,-no-libproxy,libproxy"
118PACKAGECONFIG[libinput] = "-libinput,-no-libinput,libinput" 145PACKAGECONFIG[libinput] = "-libinput,-no-libinput,libinput"
119PACKAGECONFIG[journald] = "-journald,-no-journald,systemd" 146PACKAGECONFIG[journald] = "-journald,-no-journald,systemd"
120 147
148QT_CONFIG_FLAGS_GOLD = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '-use-gold-linker', '-no-use-gold-linker', d)}"
121QT_CONFIG_FLAGS += " \ 149QT_CONFIG_FLAGS += " \
150 ${QT_CONFIG_FLAGS_GOLD} \
122 -shared \ 151 -shared \
123 -silent \ 152 -silent \
124 -no-pch \ 153 -no-pch \
@@ -163,6 +192,17 @@ do_configure() {
163 ${QT_CONFIG_FLAGS} 192 ${QT_CONFIG_FLAGS}
164} 193}
165 194
195fakeroot do_install_ptest() {
196 mkdir -p ${D}${PTEST_PATH}
197 t=${D}${PTEST_PATH}
198 for var in ` find ${B}/tests/auto/ -name tst_*`; do
199 if [ not ` echo ${var##*/} | grep '\.'` ]; then
200 echo ${var##*/} >> ${t}/tst_list
201 install -m 0644 ${var} ${t}
202 fi
203 done
204}
205
166do_install_append() { 206do_install_append() {
167 # Avoid qmake error "Cannot read [...]/usr/lib/qt5/mkspecs/oe-device-extra.pri: No such file or directory" 207 # Avoid qmake error "Cannot read [...]/usr/lib/qt5/mkspecs/oe-device-extra.pri: No such file or directory"
168 touch ${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/oe-device-extra.pri 208 touch ${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/oe-device-extra.pri