bcdcacf0c9
Update to the latest version of the gcnano-binaries blobs, which are compatible with the soon-to-be-released 5.15 kernel from the STMicroelectronics BSP. As we are installing all the libraries and the pkgconfig files we do not need to list them anymore. Therefore this patch removes GCNANO_BINARIES_LIBRARIES and GCNANO_BINARIES_PKG_CONFIGS variables. It also updates the installation command to follow the path and naming of the new version and the pkgconfig files to fill the prefix variable with the right value. The new version of gcnano has gbm.h header installed in a gbm folder, this break the build of other packages. The patch fixes it with a simple link. Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
71 lines
2.6 KiB
Makefile
71 lines
2.6 KiB
Makefile
################################################################################
|
|
#
|
|
# gcnano-binaries
|
|
#
|
|
################################################################################
|
|
|
|
GCNANO_BINARIES_LIB_VERSION = 6.4.7
|
|
GCNANO_BINARIES_DRIVER_VERSION = $(GCNANO_BINARIES_LIB_VERSION)
|
|
GCNANO_BINARIES_USERLAND_VERSION = $(GCNANO_BINARIES_LIB_VERSION)-20220524
|
|
GCNANO_BINARIES_VERSION = a20611434ef048d3d0c04f55b6cd7d75a2156d43
|
|
GCNANO_BINARIES_SITE = $(call github,STMicroelectronics,gcnano-binaries,$(GCNANO_BINARIES_VERSION))
|
|
|
|
GCNANO_BINARIES_LICENSE = MIT, Vivante End User Software License Terms
|
|
GCNANO_BINARIES_LICENSE_FILES = EULA
|
|
GCNANO_BINARIES_REDISTRIBUTE = NO
|
|
|
|
GCNANO_BINARIES_DEPENDENCIES = linux wayland libdrm
|
|
|
|
GCNANO_BINARIES_INSTALL_STAGING = YES
|
|
|
|
GCNANO_BINARIES_PROVIDES = libegl libgles libgbm
|
|
|
|
# The Github repository doesn't contain the source code as-is: it
|
|
# contains a tarball with the kernel driver source code, and a
|
|
# self-extractible binary for the user-space parts. So we extract both
|
|
# below, and also extract the EULA text from the self-extractible binary
|
|
define GCNANO_BINARIES_EXTRACT_HELPER
|
|
tar --strip-components=1 -xJf $(@D)/gcnano-driver-$(GCNANO_BINARIES_DRIVER_VERSION).tar.xz -C $(@D)
|
|
awk 'BEGIN { start = 0; } \
|
|
/^EOEULA/ { start = 0; } \
|
|
{ if (start) print; } \
|
|
/<<EOEULA/ { start = 1; }' \
|
|
$(@D)/gcnano-userland-multi-$(GCNANO_BINARIES_USERLAND_VERSION).bin > $(@D)/EULA
|
|
cd $(@D) && sh gcnano-userland-multi-$(GCNANO_BINARIES_USERLAND_VERSION).bin --auto-accept
|
|
endef
|
|
|
|
GCNANO_BINARIES_POST_EXTRACT_HOOKS += GCNANO_BINARIES_EXTRACT_HELPER
|
|
|
|
GCNANO_BINARIES_MODULE_MAKE_OPTS = \
|
|
KERNEL_DIR=$(LINUX_DIR) \
|
|
SOC_PLATFORM=st-st \
|
|
AQROOT=$(@D) \
|
|
DEBUG=0
|
|
|
|
GCNANO_BINARIES_USERLAND_SUBDIR = gcnano-userland-multi-$(GCNANO_BINARIES_USERLAND_VERSION)
|
|
|
|
define GCNANO_BINARIES_INSTALL
|
|
cd $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/release/drivers/ ; \
|
|
find . -type f -exec $(INSTALL) -D -m 0755 {} $(1)/usr/lib/{} \; ; \
|
|
find . -type l -exec cp -a {} $(1)/usr/lib \;
|
|
mkdir -p $(1)/usr/include
|
|
cp -a $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/release/include/* $(1)/usr/include/
|
|
ln -sf gbm/gbm.h $(1)/usr/include/gbm.h
|
|
cd $(@D)/$(GCNANO_BINARIES_USERLAND_SUBDIR)/pkgconfig/ ; \
|
|
for file in *.pc ; do \
|
|
sed -e "s|#PREFIX#|/usr|" $$file > $$file.temp ; \
|
|
$(INSTALL) -D -m 0644 $$file.temp $(1)/usr/lib/pkgconfig/$$file ; \
|
|
done
|
|
endef
|
|
|
|
define GCNANO_BINARIES_INSTALL_TARGET_CMDS
|
|
$(call GCNANO_BINARIES_INSTALL,$(TARGET_DIR))
|
|
endef
|
|
|
|
define GCNANO_BINARIES_INSTALL_STAGING_CMDS
|
|
$(call GCNANO_BINARIES_INSTALL,$(STAGING_DIR))
|
|
endef
|
|
|
|
$(eval $(kernel-module))
|
|
$(eval $(generic-package))
|