[vlc-commits] contrib: qt: fix Angle compilation on Windows

Steve Lhomme git at videolan.org
Tue Apr 30 09:55:45 CEST 2019


vlc | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Wed Apr 24 16:31:52 2019 +0200| [bb7863d647729d1018159b3677d48a4d27d3b6a7] | committer: Steve Lhomme

contrib: qt: fix Angle compilation on Windows

Not just for cross compilation.

Only the wine call differs from 0003-allow-cross-compilation-of-angle-with-wine.patch

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bb7863d647729d1018159b3677d48a4d27d3b6a7
---

 contrib/src/qt/0003-fix-angle-compilation.patch | 76 +++++++++++++++++++++++++
 contrib/src/qt/rules.mak                        |  1 +
 2 files changed, 77 insertions(+)

diff --git a/contrib/src/qt/0003-fix-angle-compilation.patch b/contrib/src/qt/0003-fix-angle-compilation.patch
new file mode 100644
index 0000000000..1568efd450
--- /dev/null
+++ b/contrib/src/qt/0003-fix-angle-compilation.patch
@@ -0,0 +1,76 @@
+From 5b0815cdbdc729da3135d3a9c41d7579883f739d Mon Sep 17 00:00:00 2001
+From: Pierre Lamot <pierre at videolabs.io>
+Date: Tue, 9 Apr 2019 16:39:23 +0200
+Subject: [PATCH] allow cross-compilation of angle with wine
+
+---
+ src/angle/src/common/common.pri |  2 +-
+ src/gui/configure.json          |  2 +-
+ src/gui/configure.pri           | 24 ++----------------------
+ 3 files changed, 4 insertions(+), 24 deletions(-)
+
+diff --git a/src/angle/src/common/common.pri b/src/angle/src/common/common.pri
+index df29269..b6bde4d 100644
+--- a/src/angle/src/common/common.pri
++++ b/src/angle/src/common/common.pri
+@@ -22,7 +22,7 @@ lib_replace.replace = \$\$\$\$[QT_INSTALL_LIBS]
+ lib_replace.CONFIG = path
+ QMAKE_PRL_INSTALL_REPLACE += lib_replace
+ 
+-FXC = $$shell_quote($$shell_path($$QMAKE_FXC_LOCATION))
++FXC = $$shell_path($$QMAKE_FXC_LOCATION)
+ 
+ win32 {
+     VERSION = $$MODULE_VERSION
+diff --git a/src/gui/configure.json b/src/gui/configure.json
+index 44140bc..53f4984 100644
+--- a/src/gui/configure.json
++++ b/src/gui/configure.json
+@@ -1106,7 +1106,7 @@
+         "angle": {
+             "label": "ANGLE",
+             "autoDetect": "features.opengles2 || features.opengl-dynamic",
+-            "condition": "features.dxguid && tests.fxc && (features.direct3d9 || (config.winrt && features.direct3d11 && libs.d3dcompiler))",
++            "condition": "features.dxguid && tests.fxc && (features.direct3d9 || (features.direct3d11 && libs.d3dcompiler))",
+             "output": [
+                 "publicFeature",
+                 { "type": "define", "name": "QT_OPENGL_ES_2_ANGLE" },
+diff --git a/src/gui/configure.pri b/src/gui/configure.pri
+index 1b95449..875e890 100644
+--- a/src/gui/configure.pri
++++ b/src/gui/configure.pri
+@@ -20,29 +20,9 @@ defineTest(qtConfLibrary_freetype) {
+ # DXSDK_DIR variable. Starting with Windows Kit 8, it is included in
+ # the Windows SDK.
+ defineTest(qtConfTest_fxc) {
+-    !mingw {
+-        fxc = $$qtConfFindInPath("fxc.exe")
+-    } else {
+-        equals(QMAKE_HOST.arch, x86_64): \
+-            fns = x64/fxc.exe
+-        else: \
+-            fns = x86/fxc.exe
+-        dxdir = $$(DXSDK_DIR)
+-        !isEmpty(dxdir) {
+-            fxc = $$dxdir/Utilities/bin/$$fns
+-        } else {
+-            winkitbindir = $$(WindowsSdkVerBinPath)
+-            !isEmpty(winkitbindir) {
+-                fxc = $$winkitbindir/$$fns
+-            } else {
+-                winkitdir = $$(WindowsSdkDir)
+-                !isEmpty(winkitdir): \
+-                    fxc = $$winkitdir/bin/$$fns
+-            }
+-        }
+-    }
++	fxc = "$$(DXSDK_DIR)/fxc2.exe"
+ 
+-    !isEmpty(fxc):exists($$fxc) {
++    !isEmpty(fxc) {
+         $${1}.value = $$clean_path($$fxc)
+         export($${1}.value)
+         $${1}.cache += value
+-- 
+2.19.1
+
diff --git a/contrib/src/qt/rules.mak b/contrib/src/qt/rules.mak
index 035f46d71a..4a165d04ce 100644
--- a/contrib/src/qt/rules.mak
+++ b/contrib/src/qt/rules.mak
@@ -42,6 +42,7 @@ endif
 ifdef HAVE_CROSS_COMPILE
 	$(APPLY) $(SRC)/qt/0003-allow-cross-compilation-of-angle-with-wine.patch
 else
+	$(APPLY) $(SRC)/qt/0003-fix-angle-compilation.patch
 	cd $(UNPACK_DIR); for i in QtFontDatabaseSupport QtWindowsUIAutomationSupport QtEventDispatcherSupport QtCore; do \
 		sed -i -e 's,"../../../../../src,"../src,g' include/$$i/$(QT_VERSION)/$$i/private/*.h; done
 endif



More information about the vlc-commits mailing list