diff options
author | 2016-12-05 23:59:38 -0800 | |
---|---|---|
committer | 2016-12-05 23:59:38 -0800 | |
commit | f5e3b46ec8b4e5bcbdb84b2fe41fa85f272ea2fd (patch) | |
tree | 1ffd0e19a69ffdd47056e06cbcd3ff457c2e741d /dev-qt | |
parent | dev-util/strace: Sync with upstream (diff) | |
download | musl-f5e3b46ec8b4e5bcbdb84b2fe41fa85f272ea2fd.tar.gz musl-f5e3b46ec8b4e5bcbdb84b2fe41fa85f272ea2fd.tar.bz2 musl-f5e3b46ec8b4e5bcbdb84b2fe41fa85f272ea2fd.zip |
dev-qt/qtwebengine: Add 5.7.0
Sync with upstream.
(Took a while to accumulate all of the patches for this to work)
Diffstat (limited to 'dev-qt')
13 files changed, 579 insertions, 5 deletions
diff --git a/dev-qt/qtwebengine/Manifest b/dev-qt/qtwebengine/Manifest index 9d87ef05..61054c14 100644 --- a/dev-qt/qtwebengine/Manifest +++ b/dev-qt/qtwebengine/Manifest @@ -6,8 +6,19 @@ AUX qtwebengine-5.6.0-musl-sandbox.patch 843 SHA256 632177e9e36713ef528165229b36 AUX qtwebengine-5.6.0-musl-siginfo.patch 666 SHA256 42c3119595738e1e4757bee83d9774982d6265f14cb216dcd5100319339ba8c6 SHA512 2fead16e7d7379b622da0e3172905444d9d72d1a53ff080327a3d59f60541c5c076d9b58f110b039da8c9ebc3b5efec53af118e1172efd01886ff9ac2b730d5f WHIRLPOOL 52bb6af4faec65b6d50a810266a814ddcc996eca0a69668fca320d9e1c998ce11f7479de301f3f3957baba0e8d8e799d4b8c60810c37db2419f8e911066075bd AUX qtwebengine-5.6.0-musl-stack.patch 1469 SHA256 b2a66152c5f2c72aed97bd0358ee888d410a17c6048cfebc3a6867294e94c291 SHA512 50fd27962fdd2193b45ec334462535008d565a681bd6171d9c8e986e246ec42025e54eecdd8b8cbdaa118d4f6b0d88b73ad6add7c4d59cffc55899264c5b1bfd WHIRLPOOL 604f319f5229f02271e3f12166f5c50d8c2c25d78aebb93917ab333ce15adeded4cbd061afc0af0c1ea9c8bdf3411400c37a15827a31d29420f1787cfe49b97d AUX qtwebengine-5.6.0-musl-sysctl.patch 692 SHA256 a66b527eb717a5ad662c8c088540341a206c3c208c7f2fe5a20b71a17f7aacd4 SHA512 22b2380fdb1bec46c8f38d98d55c7fb72dca85859c6ae822f4b7aa441ea996dee12e11653c6f156575a1779437690d64b6101052ef12716e2dfbe046d0962b9a WHIRLPOOL d63e725ed25ffd8a219d97d1790ecf8bf44417c224ace98a5af743b84314914f50e8208fa5358fe31818fe865b01cb55e8841d879438a29bed30ff099b6e0e90 +AUX qtwebengine-5.7.0-fix-system-ffmpeg.patch 953 SHA256 046d2d09cb50a5b580a445edaf4545481e3575c30c1ba3197182f1e0f71e6478 SHA512 7fe43758f0f20ce1d4952d36773fede8def13c60dc4ac01186ef0d1b79055f02151a89e94c61b6dbe5e0a0560e53e3a27c2f40aaba181704b752b3618b3f3b9f WHIRLPOOL 64a566562652e4c7754a634de5ea4f4d64fe54033223157645d5efb64a0784a0e45c00785c4fa30f95adfeb9c830189f5796465b94ee834b04b11c3f871ad1e7 +AUX qtwebengine-5.7.0-gcc6.patch 3967 SHA256 1f97985725bc1dd46602045c83c4ba67f593ac2a1fda1db8d8e8848baaf26608 SHA512 badeeb698ba2b5a9d02c4f0812d4d4557f1549e25b8eba321553c208e36054407f75450ca335884a7ee544e02847914b0d743b0a7687af1d5aa00fd29890ecfc WHIRLPOOL 385c917ad1c11e5b84f06320898b85f4078f95b8e254c3c67e9820756b232fca65675338307a3ee9d81d6acb1f52c4f4fafca5f09ce3cd914ace9b5173e160ca +AUX qtwebengine-5.7.0-icu58.patch 3126 SHA256 0e9eaae292efd47c76a05e0380ffe8cc2f353f1a55fc1bf180a5313a529ab8cb SHA512 573741564c85dfa8df1f8b89f075214067f4892d9cc4280d986709c4438823a82ab1eb752b39fdae4e0321a0ae30479fce2ecacb4d35f197bc3699ee24583d67 WHIRLPOOL 79b02ab132b3dd56f70b6d8cb828605abbd27d33862556d1c22196c2b34ce7a9b0ff31dcc5d48b28f75a74888d96327cb572fdaca92284dd89ec4e2c23bbf6e7 +AUX qtwebengine-5.7.0-musl-mallinfo.patch 1522 SHA256 aa151b81bc4b744b9b8d9fae7fe1b1efcec60946c33d0608f297171b30d5bfea SHA512 ccf2a354a4d521385bf9edb73cc48ada146de2790b9c54d244a4498aeeb80965f230cfa698867630197f791021ff04407aaaffd3e06e40efebf54750a7e90afc WHIRLPOOL 53711f00cda7d09a9913ec07181a3378e27748a92175af1ed5e46a6b45566802f69412a07fb032198159c290b98ae084c088bd854d655ee985942baf1dc7c8a1 +AUX qtwebengine-5.7.0-musl-pthread-setname.patch 1173 SHA256 a18740a277fd9379ee57da1af203248efb23c429173d6ffad486da699fcbfc8c SHA512 da3baa6981b8897cf7dd30dc8d8889d2e3d23dc85bf4c27f9ea43c978be74ea380dba1362a3e131d810bd120013c8c6652cba0c5a56537b4a5aa89f7bec2479c WHIRLPOOL 21fbb93fef680b4c8610fb2de843f51274dc198714e12102f706db6f98e3cfb9f760001bf06a1bafa0fe3441849dce1b39553fbc85d6767be4a4c2ff496242a0 +AUX qtwebengine-5.7.0-musl-resolver.patch 2568 SHA256 07a3ee87d509e8dc963b8d60c5168a8dd615be7488c5aa23c1f993922ff38b96 SHA512 8913b0daf060f9f3ed7fb3e69f3108992d078394e9a3e1a02f0d7668bcbb8cb7f8df715b7b3463f2ac35765a2fafe2ae8407669ecdf84405b9a3cc90bf845891 WHIRLPOOL df4ed38e8dfe407c430ce58a2006192345b35952be209ef51fb6661070ba96f86a9b60c180ac7374beb4780546c230b2d7dbbb59cc054c2d34fb0d33f9d8b42a +AUX qtwebengine-5.7.0-musl-sandbox.patch 3185 SHA256 b4e616a6159a237e4ee0455e45e75c95702314f1ae42bfd3068a92ba1575ac01 SHA512 80a3c5eddf29cdf9beac3cd4e0c3d450ab32d85dbe794d2055d0abe0e1242db0fc69a44df7cf250d3ecf9a93a7e1d15d460a1d2409e65ceae1ac5c189f055918 WHIRLPOOL 6d4e1b055ce739e5b9f7d0235a7b628a52aebe03014e8f09e83968b2d1ddbb614ee00e4f8ffa792c6305822e759bd24265f1b63c5fae78834da6c1dcbb123305 +AUX qtwebengine-5.7.0-undef-madv_free.patch 1132 SHA256 2490dcbad1ec31a7eadf872ce0e63cbf9c12f8b9fa65f2f8b030274e283c0198 SHA512 1f581749438b07df03f8123957b31d2749a702c00dae06d5c4ab8bd9a4a3d9f14ee0457f5fa9221e7b1d0dc4eac8965990336140f09787df4e46757165b1e22e WHIRLPOOL 0c4404fd40e5fa3fdc55c11bac0f76843fb174b1048d24b0b934d0ecbe664ff7b04f03c09a1cb08df0a30622adcd515e837cbabee77c699eeecc87785f3ec354 +AUX qtwebengine-paxmark-mksnapshot.patch 1478 SHA256 540ab83071df14d5fc6881dcf6fc28a2daaa46584e9b0c3ad45b584c612f16af SHA512 3ad5312be5d0a1e08df9d5f25256678c12373d64a99f0d7fb0f96b711f719775328feb554144ac5cde22f8226a7b8d62bd07287270da613db09a1ed3c3303019 WHIRLPOOL d70127c7ef2e2262557b62aa0fd8709c90aed5e0143e43c8c53dd817378dd7accefe2dccdc9b90a740fa3d49f40a3438a4a1438f51995da86bdfba816aa319bb DIST qtwebengine-opensource-src-5.6.1-1.tar.xz 143729228 SHA256 c80e90237bb7bd52a3fa843415c17a8e8e6d779b65efd1393472f24f8642e04c SHA512 4612221fafd16c2d5ce38965bb264d2577b20b1c342792f34729e8a26978e9e430dc1425291530dfad254be5b3b42ebdafdec084c5d25edb23fc61bb3f71ac6f WHIRLPOOL dc05495c1afe755e51961c314b3305b43add7eee149816a0be3ab22b9a2ae10b54ebf5ca2861eaf8768e619c44533b35bd94645e12f94eb39cb5b9c8b19c1667 DIST qtwebengine-opensource-src-5.6.2.tar.xz 143752452 SHA256 2f0a1648e1a8b22bad0134f2b37d69d185074393c398c1a3c6a83b910ff39740 SHA512 c30a270bfb254a18d4b89af8ae28789912d6157cd58010b6838461c332c32c667c15b683d290fd14615b9f0be20aca9957bd8657c4abaa8d77c28278c58f7282 WHIRLPOOL 94e627c369cfa18a7c878f75007698839aa1cd1b10df4de8e42b2f393dcd2dedec33930c1fa41c50bfa39e63089d66c7c5d0861ea7093356b1cc2e93a605893e +DIST qtwebengine-opensource-src-5.7.0.tar.xz 165709640 SHA256 985762fff5cd8a1a0d2a644a4a51238676898685f9ff1a78c3f2800025d6dc5d SHA512 8f010ea8d7047880c0bc941749a4172deae0f363ff25e00412291ad2bb243ac4c51031403eae0bba11b4f42c3e3d414858d29e3a3fb0459703dcaaff9b7133cd WHIRLPOOL 112f80f8cc279d743641095f47512a95d43286c1fe32c678a5ada810a7da12b1ef6e4483401e1a08c32d7e0d6e23369c65fbaeeee5f9a4bc34e330f59359e648 EBUILD qtwebengine-5.6.1.ebuild 2399 SHA256 cf87e113dd9b731ab1a2c7ab6e2b94bf54a041d0d890725a7c48c0073447442c SHA512 f31ea3257a6153bfbd9a3ab9ed2ad7b4703ab7c76305be6b41451123b02537aaab07ca13967c586cbb76e1c9f989c03ec50c774443be8a6acd6d0ac37ea6fa32 WHIRLPOOL 14f86450d5c323d12592876bd9e7fc9c8cdfced1473415c41e17e15c89a3ed43818aa9db9ec49486bfbfb600c8ab03bf4a7333445a359b124ece4fcd6146f1a5 -EBUILD qtwebengine-5.6.2.ebuild 2402 SHA256 f0f1538be1af933089d9840ebf5a3fcf5feb53157eb248af5a4a26810c94cbf3 SHA512 a85bfe1f11a1e440d3d19e743c9305f784782836f19ec98ae363331683528f1bf0f8a42a0955c98055108de5762a2499aeeb9e27969c0ae3c7548e268b6be62f WHIRLPOOL 91c3028e85f65d571130683ef0a16dece6486ae5e7c749a3ca8c1b3f67c747e7121953c4a9a48b7f08dc3c95023d3f050197b82367978e1f66cbd348f5931084 -MISC metadata.xml 871 SHA256 1ecf17250e1d38e8f4facd8799f66f07ffdaade07f6afac35b5c0ad09687c346 SHA512 18a992c67d1a0260255226452bafb17485f1e0782eed1c031da8404055186c9b6e410e74d2d9bcd4105431ad4e2c6acd5ce1759201009e5dfc2285c72e53df87 WHIRLPOOL 74e04078eaf03693c25e89fe51f4a6785ac91c92db7b049bdd7a0e179f13ae9b31264332b5bbdcca60e1c799c1751a32756b76baca5426820f4a7a01adc6ca98 +EBUILD qtwebengine-5.6.2.ebuild 2779 SHA256 882e1a4a73498fd8512292950cb54b21d4dcb7b4b93db33be1152cd8c19e40d9 SHA512 0afbd02907494f78821208c361e9f47d1bdbc23e67d53a3ab6b1ee93aac2d50bcb0cea5e334c0f9f31e8cdb274995273666d795924f1a18dd889104588435642 WHIRLPOOL 38658acff380c65b30e2d5127a25eb73e012618196e6e95418bd5178544a1f6d29024a83f7d7339e57345d854960351d65d1776bf7981236075b0204aa491a8f +EBUILD qtwebengine-5.7.0.ebuild 3022 SHA256 31c40dfe70ba0fe129b87e999270c825c50a2edd5ee5c86fadf3c4085e88f816 SHA512 4dcf2d5e2629b9a3d94e6e4a58736bd722e6c0be91795ec2950bd9e7cd15247671afc1c4656a17e857840907305a0da9ae762dfb8c3797ed2714301494f8ffc5 WHIRLPOOL 51015b24cb6a5a712f65f1a5f302464726109e53d1fbd5f040ee05bd73621b695d69350acaa62499958c038fc3f2109e90069fdd8f58e006f995f66a5fba7b4a +MISC metadata.xml 947 SHA256 15083351c49bbcf033829248688471002ca7990644535e1228c5f29396839026 SHA512 a53fa56d2922b8abb2b10193ebc3cb61923697d9c1ddbb583f0d06886dc357604c192cbbbc2849a976be189a41473069b1931434d057b9c9d5b91c7333680224 WHIRLPOOL 7db472885a977071531059312cb171ceffe119900e68bf20a6de6aca9d90336b21067a47e71e80e2d79fc54193b0aa276d74e96b98d3001e58be3c7d0840f8a8 diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch new file mode 100644 index 00000000..71881e0f --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-fix-system-ffmpeg.patch @@ -0,0 +1,13 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h 2016-11-23 13:01:20.929772871 -0800 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.h 2016-11-23 13:02:18.879462854 -0800 +@@ -24,7 +24,9 @@ + // Disable deprecated features which result in spammy compile warnings. This + // list of defines must mirror those in the 'defines' section of BUILD.gn file & + // ffmpeg.gyp file or the headers below will generate different structures! ++#if !defined(USE_SYSTEM_FFMPEG) + #define FF_API_CONVERGENCE_DURATION 0 ++#endif + // Upstream libavcodec/utils.c still uses the deprecated + // av_dup_packet(), causing deprecation warnings. + // The normal fix for such things is to disable the feature as below, diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-gcc6.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-gcc6.patch new file mode 100644 index 00000000..2cc53e61 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-gcc6.patch @@ -0,0 +1,106 @@ +From cffcf22082879939bbcfa89e88057beda829a0a7 Mon Sep 17 00:00:00 2001 +From: David Faure <david.faure@kdab.com> +Date: Sat, 3 Sep 2016 18:01:40 +0200 +Subject: gcc6: set -fno-delete-null-pointer-checks for all files + +Not just v8, as v8_no_delete_null_pointer_checks does. +This is necessary e.g. for PaintLayer::enclosingSelfPaintingLayer +which also compares this with null. + +I'll remove v8_no_delete_null_pointer_checks in a later commit +to avoid a temporary breakage until qtwebengine is updated. + +Change-Id: I8782fadc8fab125b5394bd60857e70c6ae75f9b0 +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +(cherry picked from commit c42f53ec3ca90bfd98577988462ed51464feebe3) +--- + chromium/build/common.gypi | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/src/3rdparty/chromium/build/common.gypi b/src/3rdparty/chromium/build/common.gypi +index b6a0284..d768ab3 100644 +--- a/src/3rdparty/chromium/build/common.gypi ++++ b/src/3rdparty/chromium/build/common.gypi +@@ -4702,6 +4706,9 @@ + '-Wl,--disable-new-dtags', + ], + }], ++ [ 'no_delete_null_pointer_checks==1', { ++ 'cflags_cc': [ '-fno-delete-null-pointer-checks' ], ++ }], + ['clang==0', { + 'target_conditions': [ + ['_toolset=="target"', { +-- +cgit v1.0-4-g1e03 + +From ae73e50e7d8c1371ed293c10150646a2719f4598 Mon Sep 17 00:00:00 2001 +From: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> +Date: Wed, 14 Sep 2016 17:40:50 +0200 +Subject: FIXUP: gcc6: set -fno-delete-null-pointer-checks for all files + +Set a default and pull in the value from configuration, and +remove the old v8 only version. + +Change-Id: Ica9f971baa28c717178eb2acd074607424792e1d +Reviewed-by: David Faure <david.faure@kdab.com> +--- + chromium/build/common.gypi | 4 ++++ + chromium/v8/build/toolchain.gypi | 7 ------- + 2 files changed, 4 insertions(+), 7 deletions(-) + +diff --git a/src/3rdparty/chromium/build/common.gypi b/src/3rdparty/chromium/build/common.gypi +index d768ab3..8a1df22 100644 +--- a/src/3rdparty/chromium/build/common.gypi ++++ b/src/3rdparty/chromium/build/common.gypi +@@ -727,6 +727,9 @@ + # By default include non-appstore-compliant code. + 'appstore_compliant_code%': 0, + ++ # Enable this to turn off the delete-null-pointer-checks optimization in GCC 6+ ++ 'no_delete_null_pointer_checks%': 0, ++ + 'conditions': [ + # A flag for POSIX platforms + ['OS=="win"', { +@@ -1271,6 +1274,7 @@ + 'enable_hangout_services_extension%' : '<(enable_hangout_services_extension)', + 'proprietary_codecs%': '<(proprietary_codecs)', + 'appstore_compliant_code%': '<(appstore_compliant_code)', ++ 'no_delete_null_pointer_checks%': '<(no_delete_null_pointer_checks)', + 'use_goma%': '<(use_goma)', + 'gomadir%': '<(gomadir)', + 'use_lto%': '<(use_lto)', +-- +cgit v1.0-4-g1e03 + +From d6c8a2cf8fa374e6d1c0a578391b57112c047fa4 Mon Sep 17 00:00:00 2001 +From: David Faure <david.faure@kdab.com> +Date: Mon, 5 Sep 2016 15:25:02 +0200 +Subject: Enable -fno_delete_null_pointer_checks for g++ 6 on all of chromium + +This is necessary e.g. for PaintLayer::enclosingSelfPaintingLayer +which also compares this with null. + +Change-Id: I85d69432a0d7eeb0d8df8f395821880e36180dcc +Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> +--- + src/core/config/linux.pri | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/config/linux.pri b/src/core/config/linux.pri +index 9264932..a318e17 100644 +--- a/src/core/config/linux.pri ++++ b/src/core/config/linux.pri +@@ -29,6 +29,8 @@ use?(nss) { + use_openssl_certs=1 + } + ++gcc:!clang: greaterThan(QT_GCC_MAJOR_VERSION, 5): GYP_CONFIG += no_delete_null_pointer_checks=1 ++ + contains(QT_CONFIG, system-zlib): use?(system_minizip): GYP_CONFIG += use_system_zlib=1 + contains(QT_CONFIG, system-png): GYP_CONFIG += use_system_libpng=1 + contains(QT_CONFIG, system-jpeg): GYP_CONFIG += use_system_libjpeg=1 +-- +cgit v1.0-4-g1e03 + diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch new file mode 100644 index 00000000..ced5367c --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-icu58.patch @@ -0,0 +1,51 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:07:38.680665385 -0800 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:12:17.564001354 -0800 +@@ -26,6 +26,9 @@ + #include "wtf/StdLibExtras.h" + #include "wtf/text/CharacterNames.h" + ++#include <unicode/uchar.h> ++#include <unicode/uvernum.h> ++ + namespace blink { + + unsigned numGraphemeClusters(const String& string) +@@ -122,13 +125,18 @@ + { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0), 0, 0, 0, B(0, 0, 0, 0, 0, 0, 0, 0) }, // DEL + }; + ++#if U_ICU_VERSION_MAJOR_NUM >= 58 ++#define BA_LB_COUNT (U_LB_COUNT - 3) ++#else ++#define BA_LB_COUNT U_LB_COUNT ++#endif + // Line breaking table for CSS word-break: break-all. This table differs from + // asciiLineBreakTable in: + // - Indices are Line Breaking Classes defined in UAX#14 Unicode Line Breaking + // Algorithm: http://unicode.org/reports/tr14/#DescriptionOfProperties + // - 1 indicates additional break opportunities. 0 indicates to fallback to + // normal line break, not "prohibit break." +-static const unsigned char breakAllLineBreakClassTable[][U_LB_COUNT / 8 + 1] = { ++static const unsigned char breakAllLineBreakClassTable[][BA_LB_COUNT / 8 + 1] = { + // XX AI AL B2 BA BB BK CB CL CM CR EX GL HY ID IN IS LF NS NU OP PO PR QU SA SG SP SY ZW NL WJ H2 H3 JL JT JV CP CJ HL RI + { B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 0, 0) }, // XX + { B(0, 1, 1, 0, 1, 0, 0, 0), B(0, 0, 0, 0, 0, 1, 0, 0), B(0, 0, 0, 1, 1, 0, 1, 0), B(1, 0, 0, 0, 0, 0, 0, 0), B(0, 0, 0, 0, 0, 0, 1, 0) }, // AI +@@ -178,7 +186,7 @@ + #undef AL + + static_assert(WTF_ARRAY_LENGTH(asciiLineBreakTable) == asciiLineBreakTableLastChar - asciiLineBreakTableFirstChar + 1, "asciiLineBreakTable should be consistent"); +-static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == U_LB_COUNT, "breakAllLineBreakClassTable should be consistent"); ++static_assert(WTF_ARRAY_LENGTH(breakAllLineBreakClassTable) == BA_LB_COUNT, "breakAllLineBreakClassTable should be consistent"); + + static inline bool shouldBreakAfter(UChar lastCh, UChar ch, UChar nextCh) + { +@@ -209,7 +217,7 @@ + + static inline bool shouldBreakAfterBreakAll(ULineBreak lastLineBreak, ULineBreak lineBreak) + { +- if (lineBreak >= 0 && lineBreak < U_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < U_LB_COUNT) { ++ if (lineBreak >= 0 && lineBreak < BA_LB_COUNT && lastLineBreak >= 0 && lastLineBreak < BA_LB_COUNT) { + const unsigned char* tableRow = breakAllLineBreakClassTable[lastLineBreak]; + return tableRow[lineBreak / 8] & (1 << (lineBreak % 8)); + } diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-mallinfo.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-mallinfo.patch new file mode 100644 index 00000000..43ddac53 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-mallinfo.patch @@ -0,0 +1,24 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-10-06 22:02:53.540968618 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/base/trace_event/malloc_dump_provider.cc 2016-10-06 22:07:22.631008903 -0700 +@@ -61,7 +61,7 @@ + // fixed quantum, so the excess region will not be resident. + // See crrev.com/1531463004 for detailed explanation. + resident_size = stats.max_size_in_use; +-#else ++#elif defined(__GLIBC__) + struct mallinfo info = mallinfo(); + DCHECK_GE(info.arena + info.hblkhd, info.uordblks); + +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/content/child/content_child_helpers.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/content/child/content_child_helpers.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/content/child/content_child_helpers.cc 2016-10-06 22:03:03.098035960 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/content/child/content_child_helpers.cc 2016-10-06 22:06:05.905348789 -0700 +@@ -18,7 +18,7 @@ + + namespace content { + +-#if defined(OS_LINUX) || defined(OS_ANDROID) ++#if (defined(OS_LINUX) && defined(__GLIBC__)) || defined(OS_ANDROID) + size_t GetMemoryUsageKB() { + struct mallinfo minfo = mallinfo(); + uint64_t mem_usage = diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-pthread-setname.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-pthread-setname.patch new file mode 100644 index 00000000..a984f97c --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-pthread-setname.patch @@ -0,0 +1,25 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c 2016-10-07 08:13:22.385902742 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/usrsctp/usrsctplib/usrsctplib/netinet/sctp_userspace.c 2016-10-07 08:14:48.045335758 -0700 +@@ -37,6 +37,9 @@ + #if defined(__Userspace_os_FreeBSD) + #include <pthread_np.h> + #endif ++#if defined(__Userspace_os_Linux) && !defined(__GLIBC__) ++#include <sys/prctl.h> ++#endif + + #if defined(__Userspace_os_Windows) + /* Adapter to translate Unix thread start routines to Windows thread start +@@ -72,7 +75,11 @@ + pthread_setname_np(name); + #endif + #if defined(__Userspace_os_Linux) ++#if defined(__GLIBC__) + pthread_setname_np(pthread_self(), name); ++#else ++ prctl(PR_SET_NAME, name); ++#endif + #endif + #if defined(__Userspace_os_FreeBSD) + pthread_set_name_np(pthread_self(), name); diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-resolver.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-resolver.patch new file mode 100644 index 00000000..b6bdec57 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-resolver.patch @@ -0,0 +1,60 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2016-10-06 21:21:24.505574899 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/dns_config_service_posix.cc 2016-10-06 21:26:35.597302630 -0700 +@@ -25,6 +25,10 @@ + #include "net/dns/notify_watcher_mac.h" + #include "net/dns/serial_worker.h" + ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif ++ + #if defined(OS_MACOSX) && !defined(OS_IOS) + #include "net/dns/dns_config_watcher_mac.h" + #endif +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/dns_reloader.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/dns_reloader.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/dns_reloader.cc 2016-10-06 21:21:24.506574908 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/dns_reloader.cc 2016-10-06 21:27:43.025896377 -0700 +@@ -8,6 +8,9 @@ + !defined(OS_ANDROID) + + #include <resolv.h> ++#if defined(OS_LINUX) && !defined(__GLIBC__) ++#include "net/dns/resolv_compat.h" ++#endif + + #include "base/lazy_instance.h" + #include "base/logging.h" +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/resolv_compat.h qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/resolv_compat.h +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/net/dns/resolv_compat.h 1969-12-31 16:00:00.000000000 -0800 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/net/dns/resolv_compat.h 2016-10-06 21:26:35.597302630 -0700 +@@ -0,0 +1,29 @@ ++#if !defined(__GLIBC__) ++/*************************************************************************** ++ * resolv_compat.h ++ * ++ * Mimick GLIBC's res_ninit() and res_nclose() for musl libc ++ * Note: res_init() is actually deprecated according to ++ * http://docs.oracle.com/cd/E36784_01/html/E36875/res-nclose-3resolv.html ++ **************************************************************************/ ++#include <string.h> ++ ++static inline int res_ninit(res_state statp) ++{ ++ int rc = res_init(); ++ if (statp != &_res) { ++ memcpy(statp, &_res, sizeof(*statp)); ++ } ++ return rc; ++} ++ ++static inline int res_nclose(res_state statp) ++{ ++ if (!statp) ++ return -1; ++ if (statp != &_res) { ++ memset(statp, 0, sizeof(*statp)); ++ } ++ return 0; ++} ++#endif diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-sandbox.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-sandbox.patch new file mode 100644 index 00000000..e6c71d14 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-musl-sandbox.patch @@ -0,0 +1,66 @@ +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2016-10-07 20:26:54.170418460 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_parameters_restrictions.cc 2016-10-07 20:28:30.342515797 -0700 +@@ -116,21 +116,13 @@ + const Arg<unsigned long> flags(0); + + // TODO(mdempsky): Extend DSL to support (flags & ~mask1) == mask2. +- const uint64_t kAndroidCloneMask = CLONE_VM | CLONE_FS | CLONE_FILES | +- CLONE_SIGHAND | CLONE_THREAD | +- CLONE_SYSVSEM; +- const uint64_t kObsoleteAndroidCloneMask = kAndroidCloneMask | CLONE_DETACHED; ++ const int required = CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | ++ CLONE_THREAD | CLONE_SYSVSEM; ++ const int safe = CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID | ++ CLONE_DETACHED; ++ const BoolExpr thread_clone_ok = (flags & ~safe) == required; + +- const uint64_t kGlibcPthreadFlags = +- CLONE_VM | CLONE_FS | CLONE_FILES | CLONE_SIGHAND | CLONE_THREAD | +- CLONE_SYSVSEM | CLONE_SETTLS | CLONE_PARENT_SETTID | CLONE_CHILD_CLEARTID; +- const BoolExpr glibc_test = flags == kGlibcPthreadFlags; +- +- const BoolExpr android_test = +- AnyOf(flags == kAndroidCloneMask, flags == kObsoleteAndroidCloneMask, +- flags == kGlibcPthreadFlags); +- +- return If(IsAndroid() ? android_test : glibc_test, Allow()) ++ return If(thread_clone_ok, Allow()) + .ElseIf((flags & (CLONE_VM | CLONE_THREAD)) == 0, Error(EPERM)) + .Else(CrashSIGSYSClone()); + } +diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc +--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc 2016-10-07 20:26:54.169418448 -0700 ++++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/sandbox/linux/seccomp-bpf-helpers/syscall_sets.cc 2016-10-07 20:29:16.430041661 -0700 +@@ -414,6 +414,7 @@ + case __NR_epoll_create: + case __NR_epoll_wait: + #endif ++ case __NR_epoll_pwait: + case __NR_epoll_create1: + case __NR_epoll_ctl: + return true; +@@ -421,7 +422,6 @@ + #if defined(__x86_64__) + case __NR_epoll_ctl_old: + #endif +- case __NR_epoll_pwait: + #if defined(__x86_64__) + case __NR_epoll_wait_old: + #endif +@@ -494,6 +494,7 @@ + case __NR_mlock: + case __NR_munlock: + case __NR_munmap: ++ case __NR_mremap: + return true; + case __NR_madvise: + case __NR_mincore: +@@ -509,7 +510,6 @@ + case __NR_modify_ldt: + #endif + case __NR_mprotect: +- case __NR_mremap: + case __NR_msync: + case __NR_munlockall: + case __NR_readahead: diff --git a/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch new file mode 100644 index 00000000..193e7136 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-5.7.0-undef-madv_free.patch @@ -0,0 +1,33 @@ +From fa8cdb3a32c377b6290d0a92d2522186bcd48293 Mon Sep 17 00:00:00 2001 +From: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> +Date: Tue, 9 Aug 2016 16:21:29 +0200 +Subject: Do not depend on Linux 4.5 + +Avoid using MADV_FREE that was only recently added to Linux. It will fail when +run on older Linux kernels. + +Change-Id: I9b0369fb31402f088b2327c12f70dd39f5e4c8c0 +Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu> +--- + chromium/third_party/WebKit/Source/wtf/allocator/PageAllocator.cpp | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp +index 12c9a7b..1639013 100644 +--- a/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp ++++ b/src/3rdparty/chromium/third_party/WebKit/Source/wtf/PageAllocator.cpp +@@ -39,6 +39,11 @@ + + #include <sys/mman.h> + ++#if OS(LINUX) && defined(MADV_FREE) ++// Added in Linux 4.5, but we don't want to depend on 4.5 at runtime ++#undef MADV_FREE ++#endif ++ + #ifndef MADV_FREE + #define MADV_FREE MADV_DONTNEED + #endif +-- +cgit v1.0-4-g1e03 + diff --git a/dev-qt/qtwebengine/files/qtwebengine-paxmark-mksnapshot.patch b/dev-qt/qtwebengine/files/qtwebengine-paxmark-mksnapshot.patch new file mode 100644 index 00000000..c71cedc2 --- /dev/null +++ b/dev-qt/qtwebengine/files/qtwebengine-paxmark-mksnapshot.patch @@ -0,0 +1,46 @@ +--- qtwebengine-opensource-src-5.6.0-orig/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-03-04 01:48:36.000000000 +1100 ++++ qtwebengine-opensource-src-5.6.0/src/3rdparty/chromium/v8/tools/gyp/v8.gyp 2016-05-01 19:15:44.052770543 +1000 +@@ -33,6 +33,7 @@ + 'embed_script%': "", + 'v8_extra_library_files%': [], + 'mksnapshot_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)', ++ 'mksnapshot_u_exec': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot_u<(EXECUTABLE_SUFFIX)', + 'remove_v8base_debug_symbols%': 0, + }, + 'includes': ['../../build/toolchain.gypi', '../../build/features.gypi'], +@@ -1913,7 +1914,7 @@ + ] + }, + { +- 'target_name': 'mksnapshot', ++ 'target_name': 'mksnapshot_u', + 'type': 'executable', + 'dependencies': ['v8_base', 'v8_nosnapshot', 'v8_libplatform'], + 'include_dirs+': [ +@@ -1936,5 +1937,26 @@ + }], + ], + }, ++ { ++ 'target_name': 'mksnapshot', ++ 'type': 'executable', ++ 'dependencies': ['mksnapshot_u'], ++ 'actions': [ ++ { ++ 'action_name': 'paxmark_m_mksnapshot', ++ 'inputs': [ ++ '<(mksnapshot_u_exec)', ++ ], ++ 'outputs': [ ++ '<(mksnapshot_exec)', ++ ], ++ 'action': [ ++ 'sh', ++ '-c', ++ 'cp <(mksnapshot_u_exec) <(mksnapshot_exec) && paxmark.sh m <(mksnapshot_exec)', ++ ], ++ }, ++ ], ++ }, + ], + } diff --git a/dev-qt/qtwebengine/metadata.xml b/dev-qt/qtwebengine/metadata.xml index 881cc175..9c08bb1f 100644 --- a/dev-qt/qtwebengine/metadata.xml +++ b/dev-qt/qtwebengine/metadata.xml @@ -8,6 +8,7 @@ <use> <flag name="geolocation">Enable physical position determination via <pkg>dev-qt/qtpositioning</pkg></flag> + <flag name="pax_kernel">Enable building under a PaX enabled kernel</flag> <flag name="system-ffmpeg">Use the system-wide <pkg>media-video/ffmpeg</pkg> instead of bundled.</flag> <flag name="system-icu">Use the system-wide <pkg>dev-libs/icu</pkg> diff --git a/dev-qt/qtwebengine/qtwebengine-5.6.2.ebuild b/dev-qt/qtwebengine/qtwebengine-5.6.2.ebuild index b50b4b8b..0aa8ce06 100644 --- a/dev-qt/qtwebengine/qtwebengine-5.6.2.ebuild +++ b/dev-qt/qtwebengine/qtwebengine-5.6.2.ebuild @@ -4,7 +4,7 @@ EAPI=6 PYTHON_COMPAT=( python2_7 ) -inherit python-any-r1 qt5-build +inherit pax-utils python-any-r1 qt5-build DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" @@ -12,7 +12,7 @@ if [[ ${QT5_BUILD_TYPE} == release ]]; then KEYWORDS="~amd64 ~x86" fi -IUSE="bindist geolocation +system-ffmpeg +system-icu widgets" +IUSE="bindist geolocation pax_kernel +system-ffmpeg +system-icu widgets" RDEPEND=" app-arch/snappy @@ -40,7 +40,7 @@ RDEPEND=" media-libs/mesa media-libs/opus media-libs/speex - net-libs/libsrtp:= + net-libs/libsrtp:0= sys-apps/dbus sys-apps/pciutils sys-libs/libcap @@ -68,6 +68,7 @@ DEPEND="${RDEPEND} dev-util/ninja dev-util/re2c sys-devel/bison + pax_kernel? ( sys-apps/elfix ) " PATCHES=( @@ -82,6 +83,13 @@ PATCHES=( ) src_prepare() { + use pax_kernel && PATCHES+=( "${FILESDIR}/${PN}-paxmark-mksnapshot.patch" ) + + if use system-icu; then + # ensuire build against system headers - bug #601264 + rm -r src/3rdparty/chromium/third_party/icu/source || die + fi + qt_use_disable_mod geolocation positioning \ src/core/core_common.pri \ src/core/core_gyp_generator.pro @@ -101,3 +109,9 @@ src_configure() { ) qt5-build_src_configure } + +src_install() { + qt5-build_src_install + + pax-mark m "${D%/}${QT5_LIBEXECDIR}"/QtWebEngineProcess +} diff --git a/dev-qt/qtwebengine/qtwebengine-5.7.0.ebuild b/dev-qt/qtwebengine/qtwebengine-5.7.0.ebuild new file mode 100644 index 00000000..8fffc943 --- /dev/null +++ b/dev-qt/qtwebengine/qtwebengine-5.7.0.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +PYTHON_COMPAT=( python2_7 ) +inherit pax-utils python-any-r1 qt5-build + +DESCRIPTION="Library for rendering dynamic web content in Qt5 C++ and QML applications" + +if [[ ${QT5_BUILD_TYPE} == release ]]; then + KEYWORDS="~amd64 ~x86" +fi + +IUSE="bindist geolocation pax_kernel +system-ffmpeg +system-icu widgets" + +RDEPEND=" + app-arch/snappy + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + ~dev-qt/qtcore-${PV} + ~dev-qt/qtdeclarative-${PV} + ~dev-qt/qtgui-${PV} + ~dev-qt/qtnetwork-${PV} + ~dev-qt/qtwebchannel-${PV}[qml] + dev-libs/expat + dev-libs/jsoncpp:= + dev-libs/libevent:= + dev-libs/libxml2 + dev-libs/libxslt + media-libs/alsa-lib + media-libs/flac + media-libs/fontconfig + media-libs/freetype + media-libs/harfbuzz:= + media-libs/libpng:0= + >=media-libs/libvpx-1.4:= + media-libs/libwebp:= + media-libs/mesa + media-libs/opus + media-libs/speex + net-libs/libsrtp:0= + sys-apps/dbus + sys-apps/pciutils + sys-libs/libcap + sys-libs/zlib[minizip] + x11-libs/libdrm + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXScrnSaver + x11-libs/libXtst + geolocation? ( ~dev-qt/qtpositioning-${PV} ) + system-ffmpeg? ( media-video/ffmpeg:0= ) + system-icu? ( dev-libs/icu:= ) + widgets? ( ~dev-qt/qtwidgets-${PV} ) +" +DEPEND="${RDEPEND} + ${PYTHON_DEPS} + dev-util/gperf + dev-util/ninja + dev-util/re2c + sys-devel/bison + pax_kernel? ( sys-apps/elfix ) +" + +PATCHES=( + "${FILESDIR}/${PN}-5.7.0-fix-system-ffmpeg.patch" + "${FILESDIR}/${PN}-5.7.0-gcc6.patch" + "${FILESDIR}/${PN}-5.7.0-icu58.patch" + "${FILESDIR}/${PN}-5.7.0-undef-madv_free.patch" + + # musl patches + "${FILESDIR}/${PN}-5.6.0-musl-execinfo.patch" + "${FILESDIR}/${PN}-5.7.0-musl-mallinfo.patch" + "${FILESDIR}/${PN}-5.6.0-musl-off_t.patch" + "${FILESDIR}/${PN}-5.7.0-musl-pthread-setname.patch" + "${FILESDIR}/${PN}-5.7.0-musl-resolver.patch" + "${FILESDIR}/${PN}-5.7.0-musl-sandbox.patch" + "${FILESDIR}/${PN}-5.6.0-musl-siginfo.patch" + "${FILESDIR}/${PN}-5.6.0-musl-stack.patch" + "${FILESDIR}/${PN}-5.6.0-musl-sysctl.patch" +) + +src_prepare() { + use pax_kernel && PATCHES+=( "${FILESDIR}/${PN}-paxmark-mksnapshot.patch" ) + + if use system-icu; then + # ensuire build against system headers - bug #601264 + rm -r src/3rdparty/chromium/third_party/icu/source || die + fi + + qt_use_disable_mod geolocation positioning \ + src/core/core_common.pri \ + src/core/core_gyp_generator.pro + + qt_use_disable_mod widgets widgets src/src.pro + + qt5-build_src_prepare +} + +src_configure() { + export NINJA_PATH=/usr/bin/ninja + + local myqmakeargs=( + $(usex bindist '' 'WEBENGINE_CONFIG+=use_proprietary_codecs') + $(usex system-ffmpeg 'WEBENGINE_CONFIG+=use_system_ffmpeg' '') + $(usex system-icu 'WEBENGINE_CONFIG+=use_system_icu' '') + ) + qt5-build_src_configure +} + +src_install() { + qt5-build_src_install + + pax-mark m "${D%/}${QT5_LIBEXECDIR}"/QtWebEngineProcess +} |