Setting EGLFS_DEVICE_INTEGRATION at the end of qmake.conf like is done
by commit
0c219ddb8a doesn't work correctly: it has to be set before the
include(../common/linux_device_post.conf)
Instead of appending to the file, change it into a qmake.conf.in
template file that contains a placeholder for the
EGLFS_DEVICE_INTEGRATION assignment and update it with sed. Since the
sed always has to be executed, this removes the need for a separate
QT5BASE_CONFIGURE_QMAKE_CONFIG definition.
Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
[Arnout: simplify the replacement, move sunxi-mali support to a
separate patch]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+++ /dev/null
-# Qt5 has a mechanism to support "device" profiles, so that people can
-# specify the compiler, compiler flags and so on for a specific device.
-
-# We leverage this mechanism in the Buildroot packaging of qt5 to
-# simplify cross-compilation: we have our own "device" definition, which
-# allows us to easily pass the cross-compiler paths and flags from our
-# qt5.mk.
-
-include(../common/linux_device_pre.conf)
-
-# modifications to g++-unix.conf
-QMAKE_CC = $${CROSS_COMPILE}gcc
-QMAKE_CXX = $${CROSS_COMPILE}g++
-
-# modifications to gcc-base.conf
-QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS}
-QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS}
-QMAKE_CXXFLAGS_RELEASE += -O3
-CONFIG += nostrip
-
-QMAKE_LIBS += -lrt -lpthread -ldl
-QMAKE_CFLAGS_ISYSTEM =
-
-# Architecturespecific configuration
-include(arch.conf)
-
-include(../common/linux_device_post.conf)
-load(qt_config)
--- /dev/null
+# Qt5 has a mechanism to support "device" profiles, so that people can
+# specify the compiler, compiler flags and so on for a specific device.
+
+# We leverage this mechanism in the Buildroot packaging of qt5 to
+# simplify cross-compilation: we have our own "device" definition, which
+# allows us to easily pass the cross-compiler paths and flags from our
+# qt5.mk.
+
+include(../common/linux_device_pre.conf)
+
+# modifications to g++-unix.conf
+QMAKE_CC = $${CROSS_COMPILE}gcc
+QMAKE_CXX = $${CROSS_COMPILE}g++
+
+# modifications to gcc-base.conf
+QMAKE_CFLAGS += $${BR_COMPILER_CFLAGS}
+QMAKE_CXXFLAGS += $${BR_COMPILER_CXXFLAGS}
+QMAKE_CXXFLAGS_RELEASE += -O3
+CONFIG += nostrip
+
+QMAKE_LIBS += -lrt -lpthread -ldl
+QMAKE_CFLAGS_ISYSTEM =
+
+# Architecturespecific configuration
+include(arch.conf)
+
+@EGLFS_DEVICE@
+
+include(../common/linux_device_post.conf)
+load(qt_config)
ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST)$(BR2_PACKAGE_IMX_GPU_VIV),yy)
# use vivante backend
-define QT5BASE_CONFIGURE_QMAKE_CONFIG
- echo "EGLFS_DEVICE_INTEGRATION = eglfs_viv" >> \
- $(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
-endef
+QT5BASE_EGLFS_DEVICE = EGLFS_DEVICE_INTEGRATION = eglfs_viv
endif
ifneq ($(QT5BASE_CONFIG_FILE),)
endif
define QT5BASE_CONFIGURE_CMDS
- $(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qmake.conf \
+ mkdir -p $(@D)/mkspecs/devices/linux-buildroot-g++/
+ sed 's/@EGLFS_DEVICE@/$(QT5BASE_EGLFS_DEVICE)/g' \
+ $(QT5BASE_PKGDIR)/qmake.conf.in > \
$(@D)/mkspecs/devices/linux-buildroot-g++/qmake.conf
$(QT5BASE_CONFIGURE_QMAKE_CONFIG)
$(INSTALL) -m 0644 -D $(QT5BASE_PKGDIR)/qplatformdefs.h \