From 93bd07073da1c7694772897355fd723698fc4683 Mon Sep 17 00:00:00 2001
From: Alexandre Janniaux <ajanni@videolabs.io>
Date: Tue, 30 Aug 2022 15:56:18 +0200
Subject: [PATCH] contrib: qt: use the new INSTALL_FILE script

It overrides the installation of files, and in particular pkg-config
files, so that they get patched and linked to $(PREFIX)/lib/pkgconfig
immediately. There is no other functional change.
---
 contrib/src/qt/rules.mak                 | 4 ++++
 contrib/src/qtdeclarative/rules.mak      | 4 ++++
 contrib/src/qtgraphicaleffects/rules.mak | 4 +++-
 contrib/src/qtquickcontrols2/rules.mak   | 3 ++-
 contrib/src/qtsvg/rules.mak              | 4 +++-
 5 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/contrib/src/qt/rules.mak b/contrib/src/qt/rules.mak
index 8133323d078a..0b7082d024aa 100644
--- a/contrib/src/qt/rules.mak
+++ b/contrib/src/qt/rules.mak
@@ -108,6 +108,7 @@ QT_CONFIG += -no-direct2d
 endif
 
 QT_ENV_VARS := $(HOSTVARS) DXSDK_DIR=$(PREFIX)/bin
+QT_QINSTALL="$(shell cd $(SRC)/qt/; pwd -P)/install_wrapper.sh"
 
 .qt: qt
 	# Prevent all Qt contribs from generating and installing libtool .la files
@@ -116,6 +117,7 @@ QT_ENV_VARS := $(HOSTVARS) DXSDK_DIR=$(PREFIX)/bin
 	# Make && Install libraries
 	cd $< && $(QT_ENV_VARS) $(MAKE)
 	cd $< && $(MAKE) -C src \
+		INSTALL_FILE=$(QT_QINSTALL) VLC_PREFIX="$(PREFIX)" \
 		sub-corelib-install_subtargets \
 		sub-gui-install_subtargets \
 		sub-widgets-install_subtargets \
@@ -125,12 +127,14 @@ QT_ENV_VARS := $(HOSTVARS) DXSDK_DIR=$(PREFIX)/bin
 		sub-network-install_subtargets
 	# Install tools
 	cd $< && $(MAKE) -C src \
+		INSTALL_FILE=$(QT_QINSTALL) VLC_PREFIX="$(PREFIX)" \
 		sub-moc-install_subtargets \
 		sub-rcc-install_subtargets \
 		sub-uic-install_subtargets \
 		sub-qlalr-install_subtargets
 	# Install plugins
 	cd $< && $(MAKE) -C src -C plugins \
+		INSTALL_FILE=$(QT_QINSTALL) VLC_PREFIX="$(PREFIX)" \
 		sub-imageformats-install_subtargets \
 		sub-platforms-install_subtargets \
 		sub-styles-install_subtargets
diff --git a/contrib/src/qtdeclarative/rules.mak b/contrib/src/qtdeclarative/rules.mak
index 1721cbcfa21c..00610bd91d70 100644
--- a/contrib/src/qtdeclarative/rules.mak
+++ b/contrib/src/qtdeclarative/rules.mak
@@ -36,6 +36,7 @@ QT_DECLARATIVE_CONFIG := \
 	# Build & install only what we require
 	# Invoke the build rules one at a time as some rule dependencies seem to be broken
 	cd $< && $(MAKE) -C src \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
 		sub-quick-make_first-ordered \
 		sub-qmlmodels-make_first-ordered \
 		sub-qmldevtools-make_first-ordered \
@@ -43,8 +44,10 @@ QT_DECLARATIVE_CONFIG := \
 	# We don't use particles, but the import target (which generates the qtquick2plugin.a) require
 	# the particle module to be built
 	cd $< && $(MAKE) -C src \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
 		sub-particles-make_first-ordered
 	cd $< && $(MAKE) -C src \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
 		sub-quick-install_subtargets \
 		sub-qml-install_subtargets \
 		sub-quickwidgets-install_subtargets \
@@ -54,6 +57,7 @@ QT_DECLARATIVE_CONFIG := \
 		sub-quickshapes-install_subtargets
 	cd $</tools && $(PREFIX)/lib/qt5/bin/qmake -o Makefile tools.pro
 	cd $< && $(MAKE) -C tools \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
 		sub-qmlcachegen-install_subtargets
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Quick qml/QtQuick.2 qtquick2plugin
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Quick qml/QtQuick/Layouts qquicklayoutsplugin
diff --git a/contrib/src/qtgraphicaleffects/rules.mak b/contrib/src/qtgraphicaleffects/rules.mak
index e759a2a4d5f5..020b045d1f3a 100644
--- a/contrib/src/qtgraphicaleffects/rules.mak
+++ b/contrib/src/qtgraphicaleffects/rules.mak
@@ -27,7 +27,9 @@ qtgraphicaleffects: qtgraphicaleffects-everywhere-src-$(QTGE_VERSION).tar.xz .su
 	cd $< && $(PREFIX)/lib/qt5/bin/qmake
 	# Make && Install libraries
 	cd $< && $(MAKE)
-	cd $< && $(MAKE) -C src sub-effects-install_subtargets
+	cd $< && $(MAKE) -C src \
+	INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
+	sub-effects-install_subtargets
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5QuickWidgets qml/QtGraphicalEffects qtgraphicaleffectsplugin
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5QuickWidgets qml/QtGraphicalEffects/private qtgraphicaleffectsprivate
 	touch $@
diff --git a/contrib/src/qtquickcontrols2/rules.mak b/contrib/src/qtquickcontrols2/rules.mak
index 8c84ddd1f723..1220852b3368 100644
--- a/contrib/src/qtquickcontrols2/rules.mak
+++ b/contrib/src/qtquickcontrols2/rules.mak
@@ -38,7 +38,8 @@ ifndef HAVE_CROSS_COMPILE
 	cd $<; for i in QtQuickControls2 QtQuickTemplates2; do \
 		sed -i -e 's,"../../../../../src,"../src,g' include/$$i/$(QTQC2_VERSION)/$$i/private/*.h; done
 endif
-	cd $< && $(MAKE) install_subtargets
+	cd $< && $(MAKE) install_subtargets \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)"
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5QuickControls2 qml/QtQuick/Controls.2 qtquickcontrols2plugin
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5QuickControls2 qml/QtQuick/Templates.2 qtquicktemplates2plugin
 	touch $@
diff --git a/contrib/src/qtsvg/rules.mak b/contrib/src/qtsvg/rules.mak
index bc6a789ddf20..2cbcdf6ef77b 100644
--- a/contrib/src/qtsvg/rules.mak
+++ b/contrib/src/qtsvg/rules.mak
@@ -28,7 +28,9 @@ qtsvg: qtsvg-everywhere-src-$(QTSVG_VERSION).tar.xz .sum-qtsvg
 	cd $< && $(PREFIX)/lib/qt5/bin/qmake
 	# Make && Install libraries
 	cd $< && $(MAKE)
-	cd $< && $(MAKE) -C src sub-plugins-install_subtargets sub-svg-install_subtargets
+	cd $< && $(MAKE) -C src sub-plugins-install_subtargets \
+		INSTALL_FILE="$(QT_QINSTALL)" VLC_PREFIX="$(PREFIX)" \
+		sub-svg-install_subtargets
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Svg plugins/iconengines qsvgicon
 	$(SRC)/qt/AddStaticLink.sh "$(PREFIX)" Qt5Svg plugins/imageformats qsvg
 	touch $@
-- 
GitLab