summaryrefslogtreecommitdiff
path: root/gui-libs/wlroots/wlroots-0.15.1-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'gui-libs/wlroots/wlroots-0.15.1-r1.ebuild')
-rw-r--r--gui-libs/wlroots/wlroots-0.15.1-r1.ebuild83
1 files changed, 83 insertions, 0 deletions
diff --git a/gui-libs/wlroots/wlroots-0.15.1-r1.ebuild b/gui-libs/wlroots/wlroots-0.15.1-r1.ebuild
new file mode 100644
index 000000000000..bc416f2ee318
--- /dev/null
+++ b/gui-libs/wlroots/wlroots-0.15.1-r1.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="Pluggable, composable, unopinionated modules for building a Wayland compositor"
+HOMEPAGE="https://gitlab.freedesktop.org/wlroots/wlroots"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://gitlab.freedesktop.org/${PN}/${PN}.git"
+ inherit git-r3
+ SLOT="0/9999"
+else
+ SRC_URI="https://gitlab.freedesktop.org/${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
+ SLOT="0/$(ver_cut 2)"
+fi
+
+LICENSE="MIT"
+IUSE="tinywl vulkan x11-backend X"
+
+DEPEND="
+ >=dev-libs/libinput-1.14.0:0=
+ >=dev-libs/wayland-1.20.0
+ >=dev-libs/wayland-protocols-1.24
+ media-libs/mesa[egl(+),gles2,gbm(+)]
+ sys-auth/seatd:=
+ virtual/libudev
+ vulkan? (
+ dev-util/glslang:0=
+ dev-util/vulkan-headers:0=
+ media-libs/vulkan-loader:0=
+ )
+ >=x11-libs/libdrm-2.4.109:0=
+ x11-libs/libxkbcommon
+ x11-libs/pixman
+ x11-backend? ( x11-libs/libxcb:0= )
+ X? (
+ x11-base/xwayland
+ x11-libs/libxcb:0=
+ x11-libs/xcb-util-image
+ x11-libs/xcb-util-wm
+ )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ >=dev-libs/wayland-protocols-1.24
+ >=dev-util/meson-0.60.0
+ dev-util/wayland-scanner
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}"/wlroots-0.15.1-tinywl-dont-crash-upon-missing-keyboard.patch )
+
+src_configure() {
+ # xcb-util-errors is not on Gentoo Repository (and upstream seems inactive?)
+ local emesonargs=(
+ "-Dxcb-errors=disabled"
+ $(meson_use tinywl examples)
+ -Drenderers=$(usex vulkan 'gles2,vulkan' gles2)
+ -Dxwayland=$(usex X enabled disabled)
+ -Dbackends=drm,libinput$(usex x11-backend ',x11' '')
+ )
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ if use tinywl; then
+ dobin "${BUILD_DIR}"/tinywl/tinywl
+ fi
+}
+
+pkg_postinst() {
+ elog "You must be in the input group to allow your compositor"
+ elog "to access input devices via libinput."
+}