Since upstream commit eec95e3d5e1a4f2e13b1f6b34cc287475ca57daf ("backend/drm: use pnp.ids to fetch EDID data"), the pnp.ids file from hwdata is parsed at build time to generate a C source file. As per backend/drm/meson.build: hwdata = dependency('hwdata', required: false, native: true) if hwdata.found() hwdata_dir = hwdata.get_variable(pkgconfig: 'pkgdatadir') pnp_ids = files(hwdata_dir / 'pnp.ids') else pnp_ids = files('/usr/share/hwdata/pnp.ids') endif This is only needed when the DRM backend of wlroots is enabled, but currently, Buildroot enables this backend unconditionally. This failure can be reproduced using the following defconfig: BR2_x86_64=y BR2_TOOLCHAIN_EXTERNAL=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_MESA3D=y BR2_PACKAGE_MESA3D_OSMESA_GALLIUM=y BR2_PACKAGE_MESA3D_OPENGL_EGL=y BR2_PACKAGE_MESA3D_OPENGL_ES=y BR2_PACKAGE_WLROOTS=y The issue was not caught in the autobuilders because the last successful build of a configuration that includes wlroots dates back from 2022-05-05, at which time Buildroot had wlroots 0.15.1. This change in wlroots was introduced in wlroots 0.16.0, which means that it's only since Buildroot bumped from 0.15.1 to 0.16.2 ind6279bc82c
("package/wlroots: bump to version 0.16.2") that the issue occurs. This commit is not yet in any tagged release, so there is no need to backport this fix. It should be noted that the proposed patch also installs pnp.ids to the target filesystem, while it is in practice not needed at runtime by wlroots. However, our current hwdata packaging doesn't allow installing it only in staging, and since wlroots anyway implies we're building a fairly heavy graphics stack, the size overhead of hwdata is deemed to be an acceptable trade-off. Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com> [Thomas: further extend the commit log, with details gathered by Yann and myself.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> (cherry picked from commit50eed2060a
) Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
54 lines
1.3 KiB
Makefile
54 lines
1.3 KiB
Makefile
################################################################################
|
|
#
|
|
# wlroots
|
|
#
|
|
################################################################################
|
|
|
|
WLROOTS_VERSION = 0.16.2
|
|
WLROOTS_SITE = https://gitlab.freedesktop.org/wlroots/wlroots/-/releases/$(WLROOTS_VERSION)/downloads
|
|
WLROOTS_LICENSE = MIT
|
|
WLROOTS_LICENSE_FILES = LICENSE
|
|
WLROOTS_INSTALL_STAGING = YES
|
|
|
|
WLROOTS_DEPENDENCIES = \
|
|
host-pkgconf \
|
|
host-wayland \
|
|
hwdata \
|
|
libinput \
|
|
libxkbcommon \
|
|
libegl \
|
|
libgles \
|
|
pixman \
|
|
seatd \
|
|
udev \
|
|
wayland \
|
|
wayland-protocols
|
|
|
|
WLROOTS_CONF_OPTS = -Dexamples=false -Dxcb-errors=disabled
|
|
|
|
WLROOTS_RENDERERS = gles2
|
|
WLROOTS_BACKENDS = libinput drm
|
|
|
|
ifeq ($(BR2_PACKAGE_WLROOTS_X11),y)
|
|
WLROOTS_BACKENDS += x11
|
|
WLROOTS_DEPENDENCIES += libxcb xcb-util-wm xcb-util-renderutil xlib_libX11
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_WLROOTS_XWAYLAND),y)
|
|
WLROOTS_CONF_OPTS += -Dxwayland=enabled
|
|
WLROOTS_DEPENDENCIES += libxcb xcb-util-wm xwayland
|
|
else
|
|
WLROOTS_CONF_OPTS += -Dxwayland=disabled
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_MESA3D_VULKAN_DRIVER),y)
|
|
WLROOTS_RENDERERS += vulkan
|
|
WLROOTS_DEPENDENCIES += mesa3d
|
|
endif
|
|
|
|
WLROOTS_CONF_OPTS += \
|
|
-Dbackends=$(subst $(space),$(comma),$(strip $(WLROOTS_BACKENDS))) \
|
|
-Drenderers=$(subst $(space),$(comma),$(strip $(WLROOTS_RENDERERS)))
|
|
|
|
$(eval $(meson-package))
|