summaryrefslogtreecommitdiff
path: root/dev-libs/weston/weston-13.0.0-r2.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/weston/weston-13.0.0-r2.ebuild')
-rw-r--r--dev-libs/weston/weston-13.0.0-r2.ebuild150
1 files changed, 150 insertions, 0 deletions
diff --git a/dev-libs/weston/weston-13.0.0-r2.ebuild b/dev-libs/weston/weston-13.0.0-r2.ebuild
new file mode 100644
index 000000000000..002b836d7566
--- /dev/null
+++ b/dev-libs/weston/weston-13.0.0-r2.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} = 9999* ]]; then
+ EGIT_REPO_URI="https://gitlab.freedesktop.org/wayland/weston.git"
+ GIT_ECLASS="git-r3"
+ EXPERIMENTAL="true"
+fi
+
+PYTHON_COMPAT=( python3_{9..12} )
+inherit meson python-any-r1 readme.gentoo-r1 xdg-utils ${GIT_ECLASS}
+
+DESCRIPTION="Wayland reference compositor"
+HOMEPAGE="https://wayland.freedesktop.org/ https://gitlab.freedesktop.org/wayland/weston"
+
+if [[ ${PV} = *9999* ]]; then
+ SRC_URI="${SRC_PATCHES}"
+else
+ SRC_URI="https://gitlab.freedesktop.org/wayland/${PN}/-/releases/${PV}/downloads/${P}.tar.xz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~riscv ~x86"
+fi
+
+LICENSE="MIT CC-BY-SA-3.0"
+SLOT="0"
+
+IUSE="+desktop +drm editor examples fullscreen +gles2 headless ivi jpeg kiosk lcms pipewire rdp remoting +resize-optimization screen-sharing +suid systemd test vnc wayland-compositor webp +X xwayland"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ drm? ( gles2 )
+ pipewire? ( drm )
+ remoting? ( drm gles2 )
+ screen-sharing? ( rdp )
+ test? ( desktop headless lcms xwayland )
+ wayland-compositor? ( gles2 )
+ || ( drm headless rdp vnc wayland-compositor X )
+"
+
+RDEPEND="
+ >=dev-libs/libinput-1.2.0
+ >=dev-libs/wayland-1.22.0
+ media-libs/libpng:0=
+ sys-auth/seatd:=
+ >=x11-libs/cairo-1.11.3
+ >=x11-libs/libdrm-2.4.108
+ >=x11-libs/libxkbcommon-0.5.0
+ >=x11-libs/pixman-0.25.2
+ x11-misc/xkeyboard-config
+ drm? (
+ >=media-libs/mesa-17.1[gbm(+)]
+ >=sys-libs/mtdev-1.1.0
+ >=virtual/udev-136
+ )
+ editor? ( x11-libs/pango )
+ examples? ( x11-libs/pango )
+ gles2? ( media-libs/mesa[gles2(+),wayland] )
+ jpeg? ( media-libs/libjpeg-turbo:0= )
+ lcms? ( >=media-libs/lcms-2.9:2 )
+ pipewire? ( >=media-video/pipewire-0.3:= )
+ rdp? ( >=net-misc/freerdp-2.3.0:2=[server] )
+ remoting? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ systemd? ( sys-apps/systemd )
+ vnc? (
+ =dev-libs/aml-0.3*
+ =gui-libs/neatvnc-0.8*
+ sys-libs/pam
+ )
+ webp? ( media-libs/libwebp:0= )
+ X? (
+ >=x11-libs/libxcb-1.9
+ x11-libs/libX11
+ )
+ xwayland? (
+ x11-base/xwayland
+ x11-libs/cairo[X,xcb(+)]
+ >=x11-libs/libxcb-1.9
+ x11-libs/libXcursor
+ >=x11-libs/xcb-util-cursor-0.1.4
+ )
+"
+DEPEND="${RDEPEND}
+ >=dev-libs/wayland-protocols-1.24
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ dev-util/wayland-scanner
+ virtual/pkgconfig
+ $(python_gen_any_dep 'dev-python/setuptools[${PYTHON_USEDEP}]')
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-neatvnc-0.8.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/setuptools[${PYTHON_USEDEP}]"
+}
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use drm backend-drm)
+ -Dbackend-drm-screencast-vaapi=false
+ $(meson_use headless backend-headless)
+ $(meson_use pipewire backend-pipewire)
+ $(meson_use rdp backend-rdp)
+ $(meson_use screen-sharing screenshare)
+ $(meson_use vnc backend-vnc)
+ $(meson_use wayland-compositor backend-wayland)
+ $(meson_use X backend-x11)
+ -Dbackend-default=auto
+ $(meson_use gles2 renderer-gl)
+ $(meson_use xwayland)
+ $(meson_use systemd)
+ $(meson_use remoting)
+ $(meson_use pipewire)
+ $(meson_use desktop shell-desktop)
+ $(meson_use fullscreen shell-fullscreen)
+ $(meson_use ivi shell-ivi)
+ $(meson_use kiosk shell-kiosk)
+ $(meson_use lcms color-management-lcms)
+ $(meson_use jpeg image-jpeg)
+ $(meson_use webp image-webp)
+ -Dtools=debug,info,terminal
+ $(meson_use examples demo-clients)
+ -Dsimple-clients=$(usex examples damage,dmabuf-v4l,im,shm,touch$(usex gles2 ,dmabuf-egl,egl "") "")
+ $(meson_use resize-optimization resize-pool)
+ -Dtest-junit-xml=false
+ "${myconf[@]}"
+ )
+ meson_src_configure
+}
+
+src_test() {
+ xdg_environment_reset
+ addwrite /dev/dri/
+
+ # xwayland test can fail if X11 socket already exists.
+ cd "${BUILD_DIR}" || die
+ meson test $(meson test --list | grep -Exv "xwayland") || die
+}
+
+src_install() {
+ meson_src_install
+ readme.gentoo_create_doc
+}