diff --git a/testing/qt5-qtwebengine/build b/testing/qt5-qtwebengine/build index 085aa8ce..2a7dae64 100755 --- a/testing/qt5-qtwebengine/build +++ b/testing/qt5-qtwebengine/build @@ -4,14 +4,20 @@ for patch in *.patch; do patch -p1 < "$patch" done -sed -i 's/dbus//g' \ - src/buildtools/config/support.pri +# Disable dbus. +{ + sed -i 's/dbus//g' \ + src/buildtools/config/support.pri -sed -i 's/use_dbus.*/use_dbus=false/' \ - src/3rdparty/chromium/build/config/features.gni + sed -i 's/use_dbus.*/use_dbus=false/' \ + src/3rdparty/chromium/build/config/features.gni +} + +# Fix nasm hardcoded glibcism +sed -i '/CANONICALIZE_FILE_NAME/d' \ + src/3rdparty/chromium/third_party/nasm/config/config-linux.h qmake -- \ - -feature-webengine-system-icu \ -feature-webengine-system-ninja \ -feature-webengine-system-zlib \ -feature-webengine-system-harfbuzz \ @@ -21,9 +27,10 @@ qmake -- \ -feature-webengine-system-opus \ -feature-webengine-system-libwebp \ -feature-webengine-system-ffmpeg \ + -no-feature-webengine-system-icu \ -no-feature-webengine-system-glib \ -no-feature-webengine-webrtc \ -no-feature-webengine-proprietary-codecs \ -make +make -j1 make install INSTALL_ROOT="$1" diff --git a/testing/qt5-qtwebengine/checksums b/testing/qt5-qtwebengine/checksums index b636ec6a..17e8f98e 100644 --- a/testing/qt5-qtwebengine/checksums +++ b/testing/qt5-qtwebengine/checksums @@ -1,5 +1,6 @@ 74f8c11cc318612c8d9dc87cf791badb1efe7080c10d8b3ed5843b249a942d32 qtwebengine-everywhere-src-5.14.0.tar.xz 1be1f8e2851f6420f0676fb4f1562368125f93da8bff977be741f85bb453a9fe 0004-mkspecs-Allow-builds-with-libc-glibc.patch +eb03407950b724c2131b930fb4b1b330ed5ed30f5584b383b6ba345596552495 0020-chromium-musl-Adjust-default-pthread-stack-size.patch a58627c95fef502a1a9eeaa29f77bd60d17ab39dd51c994dcc7073fe7590232e 0021-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch fe8057b83f02f19e169faa9e4e6ebd11a4e3ba33453ea46df6672293edf9dd09 0022-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch bd58ef5468799716187e0783c9c0a595eeb17ac619104c35b456c58350cf9b3e 0023-chromium-musl-pread-pwrite.patch diff --git a/testing/qt5-qtwebengine/depends b/testing/qt5-qtwebengine/depends index bd66b6f6..04aa0610 100644 --- a/testing/qt5-qtwebengine/depends +++ b/testing/qt5-qtwebengine/depends @@ -1,20 +1,20 @@ bison make -flex make -gperf make ffmpeg +flex make fontconfig freetype-harfbuzz +gperf make libXcomposite libXcursor libXi -libxml2 libXslt libXtst libdrm -samurai make +libevent +libxml2 +nss python2 make qt5 qt5-declarative -icu +samurai make zlib -libevent diff --git a/testing/qt5-qtwebengine/patches/0020-chromium-musl-Adjust-default-pthread-stack-size.patch b/testing/qt5-qtwebengine/patches/0020-chromium-musl-Adjust-default-pthread-stack-size.patch new file mode 100644 index 00000000..38c9f9dd --- /dev/null +++ b/testing/qt5-qtwebengine/patches/0020-chromium-musl-Adjust-default-pthread-stack-size.patch @@ -0,0 +1,47 @@ +From 50d5b6fa29696c873830af7632b51cb4836c2210 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 7 Jul 2017 16:41:23 -0700 +Subject: [PATCH] chromium: musl: Adjust default pthread stack size + +Signed-off-by: Khem Raj +--- + chromium/base/threading/platform_thread_linux.cc | 3 ++- + .../third_party/blink/renderer/platform/wtf/stack_util.cc | 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 095c49b8dc0..d1479b54d48 100644 +--- a/src/3rdparty/chromium/base/threading/platform_thread_linux.cc ++++ b/src/3rdparty/chromium/base/threading/platform_thread_linux.cc +@@ -186,7 +186,8 @@ void TerminateOnThread() {} + + size_t GetDefaultThreadStackSize(const pthread_attr_t& attributes) { + #if !defined(THREAD_SANITIZER) +- return 0; ++ // use 8mb like glibc to avoid running out of space ++ return (1 << 23); + #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/blink/renderer/platform/wtf/stack_util.cc b/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +index b2421649ff3..a31b96e90e6 100644 +--- a/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc ++++ b/src/3rdparty/chromium/third_party/blink/renderer/platform/wtf/stack_util.cc +@@ -29,7 +29,7 @@ size_t GetUnderestimatedStackSize() { + // FIXME: On Mac OSX and Linux, this method cannot estimate stack size + // correctly for the main thread. + +-#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 blink_unittests). +@@ -97,7 +97,7 @@ return Threading::ThreadStackSize(); + } + + 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; diff --git a/testing/qt5-qtwebengine/sources b/testing/qt5-qtwebengine/sources index cf13742b..1b8ca092 100644 --- a/testing/qt5-qtwebengine/sources +++ b/testing/qt5-qtwebengine/sources @@ -1,5 +1,6 @@ http://download.qt-project.org/official_releases/qt/5.14/5.14.0/submodules/qtwebengine-everywhere-src-5.14.0.tar.xz patches/0004-mkspecs-Allow-builds-with-libc-glibc.patch +patches/0020-chromium-musl-Adjust-default-pthread-stack-size.patch patches/0021-chromium-musl-Use-_fpstate-instead-of-_libc_fpstate-.patch patches/0022-chromium-musl-elf_reader.cc-include-sys-reg.h-to-get.patch patches/0023-chromium-musl-pread-pwrite.patch