8132216e0e
When using top level parallel build, independent qt5 packages may be built in parallel. Because of their staging dirs being hardlinked, they all use the same qt.conf file to manipulate during configure, while another qt5 package might already use it. This leads to weird build failures because the folders qmake is using are diverted in erratic ways. Fix this by actually recreating a non-shared qt.conf file for every package. Signed-off-by: Andreas Naumann <anaumann@ultratronik.de> Reviewed-by: Herve Codina <herve.codina@bootlin.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
31 lines
1023 B
Makefile
31 lines
1023 B
Makefile
################################################################################
|
|
#
|
|
# qt5
|
|
#
|
|
################################################################################
|
|
|
|
QT5_VERSION_MAJOR = 5.15
|
|
QT5_VERSION = $(QT5_VERSION_MAJOR).2
|
|
QT5_SOURCE_TARBALL_PREFIX = everywhere-src
|
|
QT5_SITE = https://download.qt.io/archive/qt/$(QT5_VERSION_MAJOR)/$(QT5_VERSION)/submodules
|
|
|
|
include $(sort $(wildcard package/qt5/*/*.mk))
|
|
|
|
# The file "qt.conf" can be used to override the hard-coded paths that are
|
|
# compiled into the Qt library. We need it to make "qmake" relocatable and
|
|
# tweak the per-package install pathes
|
|
define QT5_INSTALL_QT_CONF
|
|
rm -f $(HOST_DIR)/bin/qt.conf
|
|
sed -e "s|@@HOST_DIR@@|$(HOST_DIR)|" -e "s|@@STAGING_DIR@@|$(STAGING_DIR)|" \
|
|
$(QT5BASE_PKGDIR)/qt.conf.in > $(HOST_DIR)/bin/qt.conf
|
|
endef
|
|
|
|
ifeq ($(BR2_PER_PACKAGE_DIRECTORIES),y)
|
|
define QT5_QT_CONF_FIXUP
|
|
$(QT5_INSTALL_QT_CONF)
|
|
endef
|
|
endif
|
|
|
|
# Variable for other Qt applications to use
|
|
QT5_QMAKE = $(HOST_DIR)/bin/qmake -spec devices/linux-buildroot-g++
|