wlroots is a Wayland compositor library, the backbone of most Wayland compositors. Compositors that use a different base may have used this package in the beginning of the compositor's history for providing most of the work.
libdrm, libxkbcommon, Pixman, Wayland, and Wayland-Protocols
hwdata, libdisplay-info, and libliftoff-0.5.0: For the DRM backend; can be used to generically choose a renderer instead of being implicit.
libinput: For the libinput backend.
Little-CMS: For color management.
OpenGL + EGL + GLESv2 (libglvnd or Mesa; Mesa's GL is not supported): For the OpenGL renderer.
seatd-0.9.2: For session handling.
Vulkan-Loader and Glslang: For the Vulkan renderer.
XCB Utilities, xcb-util-errors-1.0.1, Xorg Libraries, and Xwayland: For Xorg application/library support.
Skipping any of the recommended dependencies can lead to configuration, build, or runtime failures in various compositors. An example is GLESv2: if it is not found, OpenGL rendering as a whole will be disabled. OpenGL rendering is the primary, and in most often cases, the only available renderer a given compositor can use if it does not rely on the recommended DRM backend to choose a renderer for the compositor. Consider most of the dependencies listed above required besides what is required for the Vulkan renderer and Xorg support.
Cairo (for examples)
Ensure some variables have a matching type needed by glibc-2.43 function prototypes:
patch -Np1 -i ../wlroots-0.19.2-const_strchr-1.patch
Install wlroots by running the following commands:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
--wrap-mode=nofallback \
.. &&
ninja
Now, as the root user:
ninja install
--buildtype=release:
Specify a buildtype suitable for stable releases of the package, as
the default may produce unoptimized binaries.
--wrap-mode=nofallback:
This switch prevents meson from using subproject
fallbacks for any dependency declarations in the build files,
preventing it from downloading any optional dependencies which are
not installed on the system.