50eed2060a
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 in
d6279bc82c
("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>
70 lines
2.2 KiB
Plaintext
70 lines
2.2 KiB
Plaintext
comment "wlroots needs udev, EGL w/ Wayland backend and OpenGL ES support"
|
|
depends on !BR2_PACKAGE_HAS_LIBEGL || \
|
|
!BR2_PACKAGE_HAS_LIBEGL_WAYLAND || \
|
|
!BR2_PACKAGE_HAS_LIBGLES || \
|
|
!BR2_PACKAGE_HAS_UDEV
|
|
|
|
comment "wlroots needs a toolchain w/ threads, dynamic library"
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || \
|
|
BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_WLROOTS
|
|
bool "wlroots"
|
|
depends on !BR2_STATIC_LIBS # wayland
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm, wayland
|
|
depends on BR2_PACKAGE_HAS_UDEV # libinput
|
|
depends on BR2_PACKAGE_HAS_LIBEGL
|
|
depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND
|
|
depends on BR2_PACKAGE_HAS_LIBGLES
|
|
select BR2_PACKAGE_HWDATA
|
|
select BR2_PACKAGE_HWDATA_PNP_IDS
|
|
select BR2_PACKAGE_LIBDRM
|
|
select BR2_PACKAGE_LIBINPUT
|
|
select BR2_PACKAGE_LIBXKBCOMMON
|
|
select BR2_PACKAGE_PIXMAN
|
|
select BR2_PACKAGE_SEATD
|
|
select BR2_PACKAGE_WAYLAND
|
|
select BR2_PACKAGE_WAYLAND_PROTOCOLS
|
|
help
|
|
wlroots is a modular Wayland library for building compositors
|
|
which implements many of their common features.
|
|
|
|
https://gitlab.freedesktop.org/wlroots/wlroots
|
|
|
|
if BR2_PACKAGE_WLROOTS
|
|
|
|
config BR2_PACKAGE_WLROOTS_X11
|
|
bool "X11 backend"
|
|
depends on BR2_PACKAGE_XORG7
|
|
select BR2_PACKAGE_LIBXCB
|
|
select BR2_PACKAGE_XCB_UTIL_RENDERUTIL
|
|
select BR2_PACKAGE_XCB_UTIL_WM
|
|
select BR2_PACKAGE_XLIB_LIBX11
|
|
help
|
|
Support Wayland sessions nested inside a X11 window
|
|
|
|
config BR2_PACKAGE_WLROOTS_XWAYLAND
|
|
bool "XWayland support"
|
|
depends on BR2_PACKAGE_XORG7 # libxcb, xcb-util-wm, xwayland
|
|
depends on BR2_USE_MMU # xwayland
|
|
depends on !BR2_STATIC_LIBS # xwayland
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # xwayland
|
|
depends on !BR2_RISCV_32 # xwayland -> xlib_libxshmfence
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # xwayland -> xlib_libxshmfence
|
|
select BR2_PACKAGE_LIBXCB
|
|
select BR2_PACKAGE_XCB_UTIL_WM
|
|
select BR2_PACKAGE_XWAYLAND
|
|
help
|
|
Support for running X11 applications under wayland
|
|
|
|
comment "XWayland support needs X.org enabled"
|
|
depends on !BR2_PACKAGE_XORG7
|
|
|
|
comment "XWayland support needs a toolchain w/ threads, dynamic library"
|
|
depends on BR2_USE_MMU
|
|
depends on !BR2_RISCV_32
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
|
|
|
|
endif
|