qt5-qtwebengine/qtwebengine-opensource-src-...

49 lines
2.1 KiB
Diff

diff -ur qtwebengine-opensource-src-5.6.0-rc/src/core/config/linux.pri qtwebengine-opensource-src-5.6.0-rc-linux-pri/src/core/config/linux.pri
--- qtwebengine-opensource-src-5.6.0-rc/src/core/config/linux.pri 2016-02-15 16:18:46.000000000 +0100
+++ qtwebengine-opensource-src-5.6.0-rc-linux-pri/src/core/config/linux.pri 2016-02-24 23:24:01.533878478 +0100
@@ -20,7 +20,13 @@
use_kerberos=0 \
use_pango=0
-!use?(nss) {
+use?(nss) {
+# do a "chimera build" (BoringSSL code, NSS certs): This is the default in
+# Chromium 47+, and it is the only variant that works with NSS 3.21.
+ GYP_CONFIG += use_nss_certs=1 \
+ use_openssl=1 \
+ use_openssl_certs=0
+} else {
GYP_CONFIG += use_nss_certs=0 \
use_openssl=1 \
use_openssl_certs=1
@@ -40,6 +46,28 @@
use?(system_opus): GYP_CONFIG += use_system_opus=1
use?(system_snappy): GYP_CONFIG += use_system_snappy=1
use?(system_vpx): GYP_CONFIG += use_system_libvpx=1
-use?(system_icu): GYP_CONFIG += use_system_icu=1
+use?(system_icu): GYP_CONFIG += use_system_icu=1 icu_use_data_file_flag=0
use?(system_ffmpeg): GYP_CONFIG += use_system_ffmpeg=1
+# some more system packages, that are not checked for for some reason
+GYP_CONFIG += \
+ use_system_expat=1 \
+ use_system_re2=1 \
+ use_system_protobuf=1
+
+# yasm is only used on x86, and passing use_system_yasm makes the build fail on
+# other architectures (e.g., ARM), so make it conditional on the architecture
+contains(QT_ARCH, "x86_64")|contains(QT_ARCH, "i386") {
+ GYP_CONFIG += use_system_yasm=1
+}
+
+# link libpci instead of dlopening it, our Qt packaging depends on it anyway
+GYP_CONFIG += linux_link_libpci=1
+
+# run the unbundling script Chromium provides
+CHROMIUM_SRC_DIR = "$$QTWEBENGINE_ROOT/$$getChromiumSrcDir()"
+R_G_F_PY = "$$CHROMIUM_SRC_DIR/build/linux/unbundle/replace_gyp_files.py"
+R_G_F_PY_ARGS =
+for (config, GYP_CONFIG): R_G_F_PY_ARGS += "-D $$config"
+log("Running python $$R_G_F_PY $$R_G_F_PY_ARGS$${EOL}")
+!system("python $$R_G_F_PY $$R_G_F_PY_ARGS"): error("-- unbundling failed")