aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikko Gronoff <mikko.gronoff@qt.io>2018-01-10 10:10:17 +0200
committerMikko Gronoff <mikko.gronoff@qt.io>2018-01-10 10:10:17 +0200
commitbc0625e7a03f9f04fdae3a89137812a216e977cd (patch)
tree4adb4e8357aea4922fd27e9758ea649deba73362
parenta22c728d16e449f3f573f4fd1324486753378592 (diff)
parent3cf0bbb8e1113376d5b5b26ecff362e180a180fd (diff)
Merge remote-tracking branch 'qtyocto/upstream/master' into 5.10
* qtyocto/upstream/master: qtbase_git: install qt.conf for the target qtbase: mkspecs: add default toolchain options qt5: remove use of OE_QMAKE_WAYLAND_SCANNER gstreamer1.0-plugins-bad: add expansion parameter qtlocation: correct PACKAGECONFIG for mapboxgl qt5: use correct HostPrefix qwt-qt5: rewrite completely Fix missing OE_QMAKE_STRIP env variable Upgrade to Qt 5.10.0 qtwebengine: make test suite succeed Conflicts: recipes-qt/qt5/nativesdk-qtbase_git.bb recipes-qt/qt5/qt3d_git.bb recipes-qt/qt5/qt5-git.inc recipes-qt/qt5/qtbase-native_git.bb ecipes-qt/qt5/qtbase_git.bb recipes-qt/qt5/qtcanvas3d_git.bb recipes-qt/qt5/qtcharts_git.bb recipes-qt/qt5/qtconnectivity_git.bb recipes-qt/qt5/qtdatavis3d_git.bb recipes-qt/qt5/qtdeclarative_git.bb recipes-qt/qt5/qtgamepad_git.bb recipes-qt/qt5/qtgraphicaleffects_git.bb recipes-qt/qt5/qtimageformats_git.bb recipes-qt/qt5/qtlocation_git.bb recipes-qt/qt5/qtmultimedia_git.bb recipes-qt/qt5/qtnetworkauth_git.bb recipes-qt/qt5/qtquickcontrols2_git.bb recipes-qt/qt5/qtquickcontrols_git.bb recipes-qt/qt5/qtremoteobjects_git.bb recipes-qt/qt5/qtscript_git.bb recipes-qt/qt5/qtscxml_git.bb recipes-qt/qt5/qtsensors_git.bb recipes-qt/qt5/qtserialbus_git.bb recipes-qt/qt5/qtserialport_git.bb recipes-qt/qt5/qtsvg_git.bb recipes-qt/qt5/qttools_git.bb recipes-qt/qt5/qttranslations_git.bb recipes-qt/qt5/qtvirtualkeyboard_git.bb recipes-qt/qt5/qtwayland_git.bb recipes-qt/qt5/qtwebchannel_git.bb recipes-qt/qt5/qtwebengine_git.bb recipes-qt/qt5/qtwebsockets_git.bb recipes-qt/qt5/qtwebview_git.bb recipes-qt/qt5/qtx11extras_git.bb recipes-qt/qt5/qtxmlpatterns_git.bb Task-number: QTBUG-65164 Change-Id: I3a54ce7f3f82dcce2d9d1a13585a41178bda358c
-rw-r--r--classes/qmake5_base.bbclass29
-rw-r--r--recipes-qt/qt5/nativesdk-qtbase_git.bb5
-rw-r--r--recipes-qt/qt5/qtbase_git.bb26
-rw-r--r--recipes-qt/qt5/qtserialbus/0001-Add-missing-include-for-struct-timeval.patch25
-rw-r--r--recipes-qt/qt5/qtwebengine/0004-Force-host-toolchain-configuration.patch14
-rw-r--r--recipes-qt/qt5/qtwebengine/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch34
-rw-r--r--recipes-qt/qt5/qtwebengine/0005-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch37
-rw-r--r--recipes-qt/qt5/qtwebengine/0006-musl-link-against-libexecinfo.patch24
-rw-r--r--recipes-qt/qt5/qtwebengine/0008-chromium-musl-linux-glibc-make-the-distinction.patch10
-rw-r--r--recipes-qt/qt5/qtwebengine/0014-chromium-musl-Adjust-default-pthread-stack-size.patch34
-rw-r--r--recipes-qt/qt5/qtwebengine_git.bb2
-rw-r--r--recipes-qt/qwt/qwt-qt5.inc48
-rw-r--r--recipes-qt/qwt/qwt-qt5/0001-Remove-rpath-from-binaries-they-point-to-buuild-area.patch69
-rw-r--r--recipes-qt/qwt/qwt-qt5/remove_rpath.patch17
-rw-r--r--recipes-qt/qwt/qwt-qt5_6.1.3.bb45
15 files changed, 314 insertions, 105 deletions
diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass
index 3bc1279d..8f1d143a 100644
--- a/classes/qmake5_base.bbclass
+++ b/classes/qmake5_base.bbclass
@@ -48,6 +48,35 @@ export OE_QMAKE_QTCONF_PATH = "${WORKDIR}/qt.conf"
inherit qmake5_paths remove-libtool
+generate_target_qt_config_file() {
+ qtconf="$1"
+ cat > "${qtconf}" <<EOF
+[Paths]
+Prefix = ${OE_QMAKE_PATH_PREFIX}
+Headers = ${OE_QMAKE_PATH_HEADERS}
+Libraries = ${OE_QMAKE_PATH_LIBS}
+ArchData = ${OE_QMAKE_PATH_ARCHDATA}
+Data = ${OE_QMAKE_PATH_DATA}
+Binaries = ${OE_QMAKE_PATH_BINS}
+LibraryExecutables = ${OE_QMAKE_PATH_LIBEXECS}
+Plugins = ${OE_QMAKE_PATH_PLUGINS}
+Imports = ${OE_QMAKE_PATH_IMPORTS}
+Qml2Imports = ${OE_QMAKE_PATH_QML}
+Translations = ${OE_QMAKE_PATH_TRANSLATIONS}
+Documentation = ${OE_QMAKE_PATH_DOCS}
+Settings = ${OE_QMAKE_PATH_SETTINGS}
+Examples = ${OE_QMAKE_PATH_EXAMPLES}
+Tests = ${OE_QMAKE_PATH_TESTS}
+HostBinaries = ${OE_QMAKE_PATH_BINS}
+HostData = ${OE_QMAKE_PATH_ARCHDATA}
+HostLibraries = ${OE_QMAKE_PATH_LIBS}
+HostSpec = ${OE_QMAKE_PLATFORM}
+TargetSpec = ${OE_QMAKE_PLATFORM}
+ExternalHostBinaries = ${OE_QMAKE_PATH_BINS}
+Sysroot =
+EOF
+}
+
do_generate_qt_config_file() {
generate_qt_config_file_paths
generate_qt_config_file_effective_paths
diff --git a/recipes-qt/qt5/nativesdk-qtbase_git.bb b/recipes-qt/qt5/nativesdk-qtbase_git.bb
index 201c77d6..9b728c47 100644
--- a/recipes-qt/qt5/nativesdk-qtbase_git.bb
+++ b/recipes-qt/qt5/nativesdk-qtbase_git.bb
@@ -165,6 +165,10 @@ do_install() {
# Install CMake's toolchain configuration
mkdir -p ${D}${datadir}/cmake/OEToolchainConfig.cmake.d/
install -m 644 ${WORKDIR}/OEQt5Toolchain.cmake ${D}${datadir}/cmake/OEToolchainConfig.cmake.d/
+
+ # Fix up absolute paths in scripts
+ grep -lr /usr/bin/python ${D}${OE_QMAKE_PATH_QT_ARCHDATA}/ | \
+ xargs -r sed -i -e '1s,#!.*python,#! ${USRBINPATH}/env python,'
}
fakeroot do_generate_qt_environment_file() {
@@ -179,6 +183,7 @@ fakeroot do_generate_qt_environment_file() {
echo 'export OE_QMAKE_CXX=$CXX' >> $script
echo 'export OE_QMAKE_LINK=$CXX' >> $script
echo 'export OE_QMAKE_AR=$AR' >> $script
+ echo 'export OE_QMAKE_STRIP=$STRIP' >> $script
echo 'export QT_CONF_PATH=${OE_QMAKE_PATH_HOST_BINS}/qt.conf' >> $script
echo 'export OE_QMAKE_LIBDIR_QT=`qmake -query QT_INSTALL_LIBS`' >> $script
echo 'export OE_QMAKE_INCDIR_QT=`qmake -query QT_INSTALL_HEADERS`' >> $script
diff --git a/recipes-qt/qt5/qtbase_git.bb b/recipes-qt/qt5/qtbase_git.bb
index 5bbbffeb..aa89280b 100644
--- a/recipes-qt/qt5/qtbase_git.bb
+++ b/recipes-qt/qt5/qtbase_git.bb
@@ -218,9 +218,29 @@ do_install_append() {
-e 's|${STAGING_DIR_HOST}|$$[QT_SYSROOT]|g' \
${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/*.pri
- # Fix up absolute paths in scripts
- grep -lr /usr/bin/perl ${D}${OE_QMAKE_PATH_QT_ARCHDATA}/ | \
- xargs -r sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,'
+ # Update the mkspecs to include the default OE toolchain config for the target
+ conf=${D}/${OE_QMAKE_PATH_QT_ARCHDATA}/mkspecs/${XPLATFORM}/qmake.conf
+
+ # qmake already knows the sysroot, see above $$[QT_SYSROOT], so remove the hardcoded sysroot
+ OE_QMAKE_CC_NO_SYSROOT=$(echo ${OE_QMAKE_CC} | sed -e 's!--sysroot=[^ ]*!!g')
+ OE_QMAKE_CXX_NO_SYSROOT=$(echo ${OE_QMAKE_CXX} | sed -e 's!--sysroot=[^ ]*!!g')
+ OE_QMAKE_LINK_NO_SYSROOT=$(echo ${OE_QMAKE_LINK} | sed -e 's!--sysroot=[^ ]*!!g')
+
+ echo "" >> $conf
+ echo "# default compiler options which can be overwritten from the environment" >> $conf
+ echo "isEmpty(QMAKE_AR): QMAKE_AR = ${OE_QMAKE_AR} cqs" >> $conf
+ echo "isEmpty(QMAKE_CC): QMAKE_CC = $OE_QMAKE_CC_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_CFLAGS): QMAKE_CFLAGS = ${OE_QMAKE_CFLAGS}" >> $conf
+ echo "isEmpty(QMAKE_CXX): QMAKE_CXX = $OE_QMAKE_CXX_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_CXXFLAGS): QMAKE_CXXFLAGS = ${OE_QMAKE_CXXFLAGS}" >> $conf
+ echo "isEmpty(QMAKE_LINK): QMAKE_LINK = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_LINK_SHLIB): QMAKE_LINK_SHLIB = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_LINK_C): QMAKE_LINK_C = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_LINK_C_SHLIB): QMAKE_LINK_C_SHLIB = $OE_QMAKE_LINK_NO_SYSROOT" >> $conf
+ echo "isEmpty(QMAKE_LFLAGS): QMAKE_LFLAGS = ${OE_QMAKE_LDFLAGS}" >> $conf
+ echo "isEmpty(QMAKE_STRIP): QMAKE_STRIP = ${TARGET_PREFIX}strip" >> $conf
+
+ generate_target_qt_config_file ${D}${OE_QMAKE_PATH_BINS}/qt.conf
}
# mkspecs have mac specific scripts that depend on perl and bash
diff --git a/recipes-qt/qt5/qtserialbus/0001-Add-missing-include-for-struct-timeval.patch b/recipes-qt/qt5/qtserialbus/0001-Add-missing-include-for-struct-timeval.patch
new file mode 100644
index 00000000..070c8e57
--- /dev/null
+++ b/recipes-qt/qt5/qtserialbus/0001-Add-missing-include-for-struct-timeval.patch
@@ -0,0 +1,25 @@
+From 896e90350f94654901e88f3365dd54986a6ba1fd Mon Sep 17 00:00:00 2001
+From: Samuli Piippo <samuli.piippo@qt.io>
+Date: Mon, 11 Dec 2017 14:39:34 +0200
+Subject: [PATCH] Add missing include for struct timeval
+
+Fix build failure with musl libc:
+socketcanbackend.h:88:38: error: 'timeval' was not declared in this scope
+
+Change-Id: I4089f5a906095c21b2790d35ad131d9a0713ff3b
+---
+ src/plugins/canbus/socketcan/socketcanbackend.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/plugins/canbus/socketcan/socketcanbackend.h b/src/plugins/canbus/socketcan/socketcanbackend.h
+index 50976b1..b49d267 100644
+--- a/src/plugins/canbus/socketcan/socketcanbackend.h
++++ b/src/plugins/canbus/socketcan/socketcanbackend.h
+@@ -50,6 +50,7 @@
+ #include <sys/socket.h>
+ #include <sys/uio.h>
+ #include <linux/can.h>
++#include <sys/time.h>
+
+ QT_BEGIN_NAMESPACE
+
diff --git a/recipes-qt/qt5/qtwebengine/0004-Force-host-toolchain-configuration.patch b/recipes-qt/qt5/qtwebengine/0004-Force-host-toolchain-configuration.patch
index bda0ba1a..464c7648 100644
--- a/recipes-qt/qt5/qtwebengine/0004-Force-host-toolchain-configuration.patch
+++ b/recipes-qt/qt5/qtwebengine/0004-Force-host-toolchain-configuration.patch
@@ -1,4 +1,4 @@
-From 9bdd03ad0bbb221ad7bffe0e570605c21c28b1b5 Mon Sep 17 00:00:00 2001
+From 2a3c39550955ed44cfc8410ab2da124c58ca66c0 Mon Sep 17 00:00:00 2001
From: Samuli Piippo <samuli.piippo@qt.io>
Date: Wed, 15 Mar 2017 13:53:28 +0200
Subject: [PATCH] Force host toolchain configuration
@@ -18,7 +18,7 @@ Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/src/buildtools/configure_host.pro b/src/buildtools/configure_host.pro
-index f1b3d47b..12123729 100644
+index dd0d3e3..70161c8 100644
--- a/src/buildtools/configure_host.pro
+++ b/src/buildtools/configure_host.pro
@@ -4,7 +4,7 @@ TEMPLATE = aux
@@ -30,7 +30,7 @@ index f1b3d47b..12123729 100644
!isEmpty(QT_TARGET_ARCH): GN_TARGET_CPU = $$gnArch($$QT_TARGET_ARCH)
else: GN_TARGET_CPU = $$GN_HOST_CPU
GN_OS = $$gnOS()
-@@ -29,9 +29,9 @@ GN_CONTENTS = \
+@@ -31,9 +31,9 @@ GN_CONTENTS = \
"import(\"//build/config/sysroot.gni\")" \
"import(\"//build/toolchain/gcc_toolchain.gni\")" \
"gcc_toolchain(\"host\") {" \
@@ -42,8 +42,8 @@ index f1b3d47b..12123729 100644
+" ld = \"$$which(g++)\" " \
" ar = \"$$which(ar)\" " \
" nm = \"$$which(nm)\" " \
- " toolchain_args = { " \
-@@ -42,9 +42,9 @@ GN_CONTENTS = \
+ " extra_cppflags = \"$$GN_HOST_EXTRA_CPPFLAGS\" " \
+@@ -45,9 +45,9 @@ GN_CONTENTS = \
" } " \
"}" \
"gcc_toolchain(\"v8_snapshot\") {" \
@@ -57,10 +57,10 @@ index f1b3d47b..12123729 100644
" nm = \"$$which(nm)\" " \
" toolchain_args = { " \
diff --git a/src/core/config/linux.pri b/src/core/config/linux.pri
-index 714c864d..f66ca551 100644
+index 6f7b27f..1b9434b 100644
--- a/src/core/config/linux.pri
+++ b/src/core/config/linux.pri
-@@ -98,7 +98,7 @@ contains(QT_ARCH, "mips"):!host_build {
+@@ -91,7 +91,7 @@ contains(QT_ARCH, "mips") {
host_build {
gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\"
diff --git a/recipes-qt/qt5/qtwebengine/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch b/recipes-qt/qt5/qtwebengine/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
index bf1f1891..1e187956 100644
--- a/recipes-qt/qt5/qtwebengine/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
+++ b/recipes-qt/qt5/qtwebengine/0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch
@@ -1,19 +1,41 @@
-From e695f37fc52defd1b96664b003444692e9b6cb65 Mon Sep 17 00:00:00 2001
+From f6c6a5522f006b14c4d9c4daa23f96c4e8e65a32 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 7 Jul 2017 14:09:06 -0700
Subject: [PATCH] chromium: musl: Avoid mallinfo() APIs on non-glibc/linux
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
+ chromium/base/process/process_metrics_posix.cc | 4 ++--
chromium/base/trace_event/malloc_dump_provider.cc | 3 ++-
chromium/content/child/content_child_helpers.cc | 2 +-
- 2 files changed, 3 insertions(+), 2 deletions(-)
+ 3 files changed, 5 insertions(+), 4 deletions(-)
+diff --git a/chromium/base/process/process_metrics_posix.cc b/chromium/base/process/process_metrics_posix.cc
+index 0eb5c1f..8af7799 100644
+--- a/chromium/base/process/process_metrics_posix.cc
++++ b/chromium/base/process/process_metrics_posix.cc
+@@ -94,14 +94,14 @@ size_t ProcessMetrics::GetMallocUsage() {
+ malloc_statistics_t stats = {0};
+ malloc_zone_statistics(nullptr, &stats);
+ return stats.size_in_use;
+-#elif defined(OS_LINUX) || defined(OS_ANDROID)
++#elif defined(__GLIBC__) || defined(OS_ANDROID)
+ struct mallinfo minfo = mallinfo();
+ #if defined(USE_TCMALLOC)
+ return minfo.uordblks;
+ #else
+ return minfo.hblkhd + minfo.arena;
+ #endif
+-#elif defined(OS_FUCHSIA)
++#else
+ // TODO(fuchsia): Not currently exposed. https://crbug.com/735087.
+ return 0;
+ #endif
diff --git a/chromium/base/trace_event/malloc_dump_provider.cc b/chromium/base/trace_event/malloc_dump_provider.cc
-index 7d0cb57931..10be59ebad 100644
+index 14ba0a2..e5d9581 100644
--- a/chromium/base/trace_event/malloc_dump_provider.cc
+++ b/chromium/base/trace_event/malloc_dump_provider.cc
-@@ -210,6 +210,7 @@ MallocDumpProvider::~MallocDumpProvider() {}
+@@ -197,6 +197,7 @@ MallocDumpProvider::~MallocDumpProvider() {}
// the current process.
bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
ProcessMemoryDump* pmd) {
@@ -21,7 +43,7 @@ index 7d0cb57931..10be59ebad 100644
size_t total_virtual_size = 0;
size_t resident_size = 0;
size_t allocated_objects_size = 0;
-@@ -321,7 +322,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
+@@ -317,7 +318,7 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDumpArgs& args,
pmd->DumpHeapUsage(metrics_by_context, overhead, "malloc");
}
tid_dumping_heap_ = kInvalidThreadId;
@@ -31,7 +53,7 @@ index 7d0cb57931..10be59ebad 100644
}
diff --git a/chromium/content/child/content_child_helpers.cc b/chromium/content/child/content_child_helpers.cc
-index 7ddeb4d16a..b8c73b09c5 100644
+index 7ddeb4d..b8c73b0 100644
--- a/chromium/content/child/content_child_helpers.cc
+++ b/chromium/content/child/content_child_helpers.cc
@@ -25,7 +25,7 @@ namespace content {
diff --git a/recipes-qt/qt5/qtwebengine/0005-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch b/recipes-qt/qt5/qtwebengine/0005-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch
new file mode 100644
index 00000000..38fa8729
--- /dev/null
+++ b/recipes-qt/qt5/qtwebengine/0005-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch
@@ -0,0 +1,37 @@
+From 0fd704beb18948577e793b73c569dc933c478f2e Mon Sep 17 00:00:00 2001
+From: Samuli Piippo <samuli.piippo@qt.io>
+Date: Tue, 12 Dec 2017 16:06:14 +0200
+Subject: [PATCH] musl: don't use pvalloc as it's not available on musl
+
+Change-Id: I7145463ac7b9560e7459d3384a3db108bd727403
+Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
+---
+ src/core/api/qtbug-61521.cpp | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/src/core/api/qtbug-61521.cpp b/src/core/api/qtbug-61521.cpp
+index 002a1af..8fd2da3 100644
+--- a/src/core/api/qtbug-61521.cpp
++++ b/src/core/api/qtbug-61521.cpp
+@@ -74,10 +74,6 @@ SHIM_SYMBOL_VERSION(valloc);
+ void* __valloc(size_t size)
+ SHIM_ALIAS_SYMBOL(ShimValloc);
+
+-SHIM_SYMBOL_VERSION(pvalloc);
+-void* __pvalloc(size_t size)
+- SHIM_ALIAS_SYMBOL(ShimPvalloc);
+-
+ SHIM_SYMBOL_VERSION(posix_memalign);
+ int __posix_memalign(void** r, size_t a, size_t s)
+ SHIM_ALIAS_SYMBOL(ShimPosixMemalign);
+@@ -110,10 +106,6 @@ SHIM_HIDDEN void* ShimValloc(size_t size) {
+ return valloc(size);
+ }
+
+-SHIM_HIDDEN void* ShimPvalloc(size_t size) {
+- return pvalloc(size);
+-}
+-
+ SHIM_HIDDEN int ShimPosixMemalign(void** r, size_t a, size_t s) {
+ return posix_memalign(r,a,s);
+ }
diff --git a/recipes-qt/qt5/qtwebengine/0006-musl-link-against-libexecinfo.patch b/recipes-qt/qt5/qtwebengine/0006-musl-link-against-libexecinfo.patch
new file mode 100644
index 00000000..cabc598e
--- /dev/null
+++ b/recipes-qt/qt5/qtwebengine/0006-musl-link-against-libexecinfo.patch
@@ -0,0 +1,24 @@
+From 59fd9db95db829e51840df09962f7c6baf484246 Mon Sep 17 00:00:00 2001
+From: Samuli Piippo <samuli.piippo@qt.io>
+Date: Thu, 14 Dec 2017 11:28:10 +0200
+Subject: [PATCH] musl: link against libexecinfo
+
+Change-Id: Ifada60f9c72691973612850121f6fb152d70839a
+Signed-off-by: Samuli Piippo <samuli.piippo@qt.io>
+---
+ src/core/core_module.pro | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/core/core_module.pro b/src/core/core_module.pro
+index 2409ccb..e41e5a9 100644
+--- a/src/core/core_module.pro
++++ b/src/core/core_module.pro
+@@ -45,7 +45,7 @@ else: QMAKE_LFLAGS += $$NINJA_LFLAGS
+ POST_TARGETDEPS += $$NINJA_TARGETDEPS
+
+
+-LIBS_PRIVATE += -L$$api_library_path
++LIBS_PRIVATE += -L$$api_library_path -lexecinfo
+ CONFIG *= no_smart_library_merge
+ osx {
+ LIBS_PRIVATE += -Wl,-force_load,$${api_library_path}$${QMAKE_DIR_SEP}lib$${api_library_name}.a
diff --git a/recipes-qt/qt5/qtwebengine/0008-chromium-musl-linux-glibc-make-the-distinction.patch b/recipes-qt/qt5/qtwebengine/0008-chromium-musl-linux-glibc-make-the-distinction.patch
index 7a778c22..d6de1c00 100644
--- a/recipes-qt/qt5/qtwebengine/0008-chromium-musl-linux-glibc-make-the-distinction.patch
+++ b/recipes-qt/qt5/qtwebengine/0008-chromium-musl-linux-glibc-make-the-distinction.patch
@@ -1,4 +1,4 @@
-From d0621f9278ddd04c05b6ab3ef638be65f96f1bd6 Mon Sep 17 00:00:00 2001
+From 2ed7538fb95ce3bb8a5917c648e2361f85b9c67b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 7 Jul 2017 14:54:38 -0700
Subject: [PATCH] chromium: musl: linux != glibc, make the distinction
@@ -9,12 +9,12 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chromium/base/allocator/allocator_check.cc b/chromium/base/allocator/allocator_check.cc
-index 5a0564d2f3..8c2dc6491d 100644
+index 9cd5d22..1e70095 100644
--- a/chromium/base/allocator/allocator_check.cc
+++ b/chromium/base/allocator/allocator_check.cc
-@@ -21,7 +21,7 @@ bool IsAllocatorInitialized() {
- #if defined(OS_WIN) && defined(ALLOCATOR_SHIM)
- // Set by allocator_shim_win.cc when the shimmed _set_new_mode() is called.
+@@ -27,7 +27,7 @@ bool IsAllocatorInitialized() {
+ // Set by allocator_shim_override_ucrt_symbols_win.h when the
+ // shimmed _set_new_mode() is called.
return g_is_win_shim_layer_initialized;
-#elif defined(OS_LINUX) && defined(USE_TCMALLOC) && \
+#elif defined(__GLIBC__) && defined(USE_TCMALLOC) && \
diff --git a/recipes-qt/qt5/qtwebengine/0014-chromium-musl-Adjust-default-pthread-stack-size.patch b/recipes-qt/qt5/qtwebengine/0014-chromium-musl-Adjust-default-pthread-stack-size.patch
index f1cc205b..652b89ec 100644
--- a/recipes-qt/qt5/qtwebengine/0014-chromium-musl-Adjust-default-pthread-stack-size.patch
+++ b/recipes-qt/qt5/qtwebengine/0014-chromium-musl-Adjust-default-pthread-stack-size.patch
@@ -1,16 +1,16 @@
-From 72a77c994434ecb708b2790ba9efaf1decc02503 Mon Sep 17 00:00:00 2001
+From d42b48975e92cfc4510030315ad8093bece4b7c5 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 7 Jul 2017 16:41:23 -0700
Subject: [PATCH] chromium: musl: Adjust default pthread stack size
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- chromium/base/threading/platform_thread_linux.cc | 3 ++-
- chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp | 4 ++--
+ chromium/base/threading/platform_thread_linux.cc | 3 ++-
+ chromium/third_party/WebKit/Source/platform/wtf/StackUtil.cpp | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/chromium/base/threading/platform_thread_linux.cc b/chromium/base/threading/platform_thread_linux.cc
-index 92fbda5ee1..c41579d4ed 100644
+index 8d411ed..4b56cf3 100644
--- a/chromium/base/threading/platform_thread_linux.cc
+++ b/chromium/base/threading/platform_thread_linux.cc
@@ -175,7 +175,8 @@ void TerminateOnThread() {}
@@ -23,25 +23,25 @@ index 92fbda5ee1..c41579d4ed 100644
#else
// ThreadSanitizer bloats the stack heavily. Evidence has been that the
// default stack size isn't enough for some browser tests.
-diff --git a/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp b/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp
-index 1d164f510a..3358deb256 100644
---- a/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp
-+++ b/chromium/third_party/WebKit/Source/platform/heap/StackFrameDepth.cpp
-@@ -68,7 +68,7 @@ size_t StackFrameDepth::getUnderestimatedStackSize() {
+diff --git a/chromium/third_party/WebKit/Source/platform/wtf/StackUtil.cpp b/chromium/third_party/WebKit/Source/platform/wtf/StackUtil.cpp
+index 13c3f90..07308e0 100644
+--- a/chromium/third_party/WebKit/Source/platform/wtf/StackUtil.cpp
++++ b/chromium/third_party/WebKit/Source/platform/wtf/StackUtil.cpp
+@@ -28,7 +28,7 @@ size_t GetUnderestimatedStackSize() {
// FIXME: On Mac OSX and Linux, this method cannot estimate stack size
// correctly for the main thread.
--#if defined(__GLIBC__) || OS(ANDROID) || OS(FREEBSD)
-+#if OS(LINUX) || OS(ANDROID) || OS(FREEBSD)
+-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
+ defined(OS_FUCHSIA)
// pthread_getattr_np() can fail if the thread is not invoked by
// pthread_create() (e.g., the main thread of webkit_unit_tests).
- // If so, a conservative size estimate is returned.
-@@ -135,7 +135,7 @@ size_t StackFrameDepth::getUnderestimatedStackSize() {
+@@ -96,7 +96,7 @@ size_t GetUnderestimatedStackSize() {
}
- void* StackFrameDepth::getStackStart() {
--#if defined(__GLIBC__) || OS(ANDROID) || OS(FREEBSD)
-+#if OS(LINUX) || OS(ANDROID) || OS(FREEBSD)
+ void* GetStackStart() {
+-#if defined(__GLIBC__) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
++#if defined(OS_LINUX) || defined(OS_ANDROID) || defined(OS_FREEBSD) || \
+ defined(OS_FUCHSIA)
pthread_attr_t attr;
int error;
- #if OS(FREEBSD)
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb
index 100458aa..214b9ac3 100644
--- a/recipes-qt/qt5/qtwebengine_git.bb
+++ b/recipes-qt/qt5/qtwebengine_git.bb
@@ -139,6 +139,8 @@ SRC_URI += " \
"
SRC_URI_append_libc-musl = "\
+ file://0005-musl-don-t-use-pvalloc-as-it-s-not-available-on-musl.patch \
+ file://0006-musl-link-against-libexecinfo.patch \
file://0004-chromium-musl-sandbox-Define-TEMP_FAILURE_RETRY-if-n.patch;patchdir=src/3rdparty \
file://0005-chromium-musl-Avoid-mallinfo-APIs-on-non-glibc-linux.patch;patchdir=src/3rdparty \
file://0006-chromium-musl-include-fcntl.h-for-loff_t.patch;patchdir=src/3rdparty \
diff --git a/recipes-qt/qwt/qwt-qt5.inc b/recipes-qt/qwt/qwt-qt5.inc
deleted file mode 100644
index f3ece399..00000000
--- a/recipes-qt/qwt/qwt-qt5.inc
+++ /dev/null
@@ -1,48 +0,0 @@
-DESCRIPTION = "Qt Widget Extension for Technical Applications"
-SECTION = "libs"
-
-# LGPLv2.1 + some exceptions
-LICENSE = "QWTv1.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=dac2743472b0462ff3cfb4af42051c88"
-
-DEPENDS = "qtbase qtsvg qttools"
-
-SRC_URI = "${SOURCEFORGE_MIRROR}/qwt/qwt-${PV}.tar.bz2;name=qwt \
- file://remove_rpath.patch \
- "
-
-S = "${WORKDIR}/qwt-${PV}"
-
-do_configure_prepend() {
- cd ${S}
- sed -i -e 's:RELEASE_SUFFIX = :RELEASE_SUFFIX = ${QT_LIBINFIX}:' *.pri
- sed -i -e 's:qtAddLibrary(qwt:qtAddLibrary(qwt)${QT_LIBINFIX}:g' *.prf
- sed -e 's/# QWT_CONFIG += QwtExamples/QWT_CONFIG += QwtExamples/g' -i qwtconfig.pri
- sed -i -e 's:/usr/local/qwt-$$QWT_VERSION:${D}${prefix}:g' ${S}/*.pri
-}
-
-do_install() {
- cd ${S}
- oe_runmake -e install
-# install -d ${D}${datadir}/doc/${PN}
-# mv ${D}${prefix}/doc/* ${D}${datadir}/doc/${PN}/
-# rmdir ${D}${prefix}/doc
-# cd ${S}/examples
-# install -d ${D}/${bindir}
-# cd bin${QT_LIBINFIX}/
-# for i in * ; do
-# cp -pPR ${i} ${D}/${bindir}/${i}${QT_LIBINFIX}
-# done
-# install -d ${D}${libdir}/${QT_DIR_NAME}
-# mv ${D}${prefix}/plugins ${D}${libdir}/${QT_DIR_NAME}
-}
-
-PACKAGES_prepend = "${PN}-examples ${PN}-features ${PN}-plugins "
-FILES_${PN}-examples = "${bindir}/*"
-FILES_${PN}-features = "${prefix}/features"
-FILES_${PN}-plugins = "${prefix}/plugins/designer/*.so"
-FILES_${PN}-dbg += "${prefix}/plugins/designer/.debug"
-FILES_${PN}-doc += "${prefix}/doc"
-
-INSANE_SKIP_${PN}-plugins += "libdir"
-INSANE_SKIP_${PN}-dbg += "libdir"
diff --git a/recipes-qt/qwt/qwt-qt5/0001-Remove-rpath-from-binaries-they-point-to-buuild-area.patch b/recipes-qt/qwt/qwt-qt5/0001-Remove-rpath-from-binaries-they-point-to-buuild-area.patch
new file mode 100644
index 00000000..fa63c347
--- /dev/null
+++ b/recipes-qt/qwt/qwt-qt5/0001-Remove-rpath-from-binaries-they-point-to-buuild-area.patch
@@ -0,0 +1,69 @@
+From ff950c71bf841a4d62952aac72f3c5a830cf9cff Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
+Date: Wed, 29 Nov 2017 22:31:07 +0100
+Subject: [PATCH] Remove rpath from binaries - they point to buuild area
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This is a rework of the patch submitted by Khem Raj.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
+---
+ designer/designer.pro | 1 -
+ examples/examples.pri | 1 -
+ playground/playground.pri | 1 -
+ qwt.prf | 1 -
+ 4 files changed, 4 deletions(-)
+
+diff --git a/designer/designer.pro b/designer/designer.pro
+index 7d44a44..a11847d 100644
+--- a/designer/designer.pro
++++ b/designer/designer.pro
+@@ -83,7 +83,6 @@ contains(QWT_CONFIG, QwtDesigner) {
+ # compile the path for finding the Qwt library
+ # into the plugin. Not supported on Windows !
+
+- QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
+
+ contains(QWT_CONFIG, QwtDll) {
+diff --git a/examples/examples.pri b/examples/examples.pri
+index 200b188..b7776a8 100644
+--- a/examples/examples.pri
++++ b/examples/examples.pri
+@@ -34,7 +34,6 @@ else {
+ }
+ }
+
+-QMAKE_RPATHDIR *= $${QWT_OUT_ROOT}/lib
+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+diff --git a/playground/playground.pri b/playground/playground.pri
+index c544360..fd0275f 100644
+--- a/playground/playground.pri
++++ b/playground/playground.pri
+@@ -35,7 +35,6 @@ else {
+ }
+
+
+-QMAKE_RPATHDIR *= $${QWT_ROOT}/lib
+ qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
+
+ greaterThan(QT_MAJOR_VERSION, 4) {
+diff --git a/qwt.prf b/qwt.prf
+index 2625b31..7860153 100644
+--- a/qwt.prf
++++ b/qwt.prf
+@@ -33,5 +33,4 @@ else {
+ INCLUDEPATH *= $${QWT_INSTALL_HEADERS}
+ }
+
+-# QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
+ qwtAddLibrary($${QWT_INSTALL_LIBS}, qwt)
+--
+2.9.5
+
diff --git a/recipes-qt/qwt/qwt-qt5/remove_rpath.patch b/recipes-qt/qwt/qwt-qt5/remove_rpath.patch
deleted file mode 100644
index 14b65d6a..00000000
--- a/recipes-qt/qwt/qwt-qt5/remove_rpath.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Remove rpath from library, it points to build area which is not
-ok
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Index: qwt-6.1.3/designer/designer.pro
-===================================================================
---- qwt-6.1.3.orig/designer/designer.pro
-+++ qwt-6.1.3/designer/designer.pro
-@@ -83,7 +83,6 @@ contains(QWT_CONFIG, QwtDesigner) {
- # compile the path for finding the Qwt library
- # into the plugin. Not supported on Windows !
-
-- QMAKE_RPATHDIR *= $${QWT_INSTALL_LIBS}
- qwtAddLibrary($${QWT_OUT_ROOT}/lib, qwt)
-
- contains(QWT_CONFIG, QwtDll) {
diff --git a/recipes-qt/qwt/qwt-qt5_6.1.3.bb b/recipes-qt/qwt/qwt-qt5_6.1.3.bb
index 626bd0ab..1c6e10b7 100644
--- a/recipes-qt/qwt/qwt-qt5_6.1.3.bb
+++ b/recipes-qt/qwt/qwt-qt5_6.1.3.bb
@@ -1,8 +1,49 @@
-inherit qmake5
+SUMMARY = "Qt Widget Extension for Technical Applications"
+SECTION = "libs"
+HOMEPAGE = "http://qwt.sourceforge.net/index.html"
+
+# LGPLv2.1 + some exceptions
+LICENSE = "QWTv1.0"
+LIC_FILES_CHKSUM = "file://COPYING;md5=dac2743472b0462ff3cfb4af42051c88"
+
+DEPENDS = "qtbase qtsvg qttools"
-require qwt-qt5.inc
+inherit qmake5
+SRC_URI = " \
+ ${SOURCEFORGE_MIRROR}/qwt/qwt-${PV}.tar.bz2;name=qwt \
+ file://0001-Remove-rpath-from-binaries-they-point-to-buuild-area.patch \
+"
SRC_URI[qwt.md5sum] = "19d1f5fa5e22054d22ee3accc37c54ba"
SRC_URI[qwt.sha256sum] = "f3ecd34e72a9a2b08422fb6c8e909ca76f4ce5fa77acad7a2883b701f4309733"
+S = "${WORKDIR}/qwt-${PV}"
+
+EXTRA_QMAKEVARS_PRE += " \
+ QWT_CONFIG+=QwtPkgConfig \
+ QWT_CONFIG+=QwtExamples \
+"
+
+do_configure_prepend() {
+ sed -i 's:/usr/local/qwt-$$QWT_VERSION:${prefix}:' ${S}/*.pri
+}
+
+do_install_append() {
+ # seems out of tree build confuses installation of examples
+ # so install them manually
+ install -d ${D}${bindir}/
+ cp ${B}/examples/bin/* ${D}${bindir}/
+}
+
+
+PACKAGES_prepend = "${PN}-examples ${PN}-features ${PN}-plugins "
+FILES_${PN}-examples = "${bindir}/*"
+FILES_${PN}-features = "${prefix}/features"
+FILES_${PN}-plugins = "${prefix}/plugins/designer/*.so"
+FILES_${PN}-dbg += "${prefix}/plugins/designer/.debug"
+FILES_${PN}-doc += "${prefix}/doc"
+
+INSANE_SKIP_${PN}-plugins += "libdir"
+INSANE_SKIP_${PN}-dbg += "libdir"
+
RPROVIDES_${PN}-dev = "libqwt-qt5-dev"