diff options
author | Sam James <sam@gentoo.org> | 2024-01-02 05:59:47 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-01-02 05:59:47 +0000 |
commit | 763d1a19a12b0d2dba941a00ab4c5bd2ac3b8496 (patch) | |
tree | 3b299416306b609bb6a7de2111028f0fd06d1db6 /x11-base/xwayland | |
parent | media-video/ffmpeg: add 6.1.1 (diff) | |
download | gentoo-763d1a19a12b0d2dba941a00ab4c5bd2ac3b8496.tar.gz gentoo-763d1a19a12b0d2dba941a00ab4c5bd2ac3b8496.tar.bz2 gentoo-763d1a19a12b0d2dba941a00ab4c5bd2ac3b8496.zip |
x11-base/xwayland: fix systemd automagic
Closes: https://bugs.gentoo.org/908254
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'x11-base/xwayland')
-rw-r--r-- | x11-base/xwayland/files/xwayland-23.2.3-systemd-automagic.patch | 52 | ||||
-rw-r--r-- | x11-base/xwayland/xwayland-23.2.3-r1.ebuild | 112 | ||||
-rw-r--r-- | x11-base/xwayland/xwayland-9999.ebuild | 6 |
3 files changed, 168 insertions, 2 deletions
diff --git a/x11-base/xwayland/files/xwayland-23.2.3-systemd-automagic.patch b/x11-base/xwayland/files/xwayland-23.2.3-systemd-automagic.patch new file mode 100644 index 000000000000..9af034c46fd5 --- /dev/null +++ b/x11-base/xwayland/files/xwayland-23.2.3-systemd-automagic.patch @@ -0,0 +1,52 @@ +https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1230 + +From 010f6e751e86207a7e88f3504191bcae2d77b458 Mon Sep 17 00:00:00 2001 +From: Sam James <sam@gentoo.org> +Date: Sun, 31 Dec 2023 23:37:19 +0000 +Subject: [PATCH] meson: add option for systemd + +Without this, systemd will be used if installed on the system automagically, +which is a problem if the built e.g. Xwayland is going to be used on a non-systemd +machine. + +Bug: https://bugs.gentoo.org/908254 +Signed-off-by: Sam James <sam@gentoo.org> + +diff --git a/include/meson.build b/include/meson.build +index e6e3d553f..ddc18407e 100644 +--- a/include/meson.build ++++ b/include/meson.build +@@ -91,7 +91,7 @@ endif + + conf_data.set('HAVE_LIBBSD', libbsd_dep.found() ? '1' : false) + # Note: this symbol is used by libXtrans. +-conf_data.set('HAVE_SYSTEMD_DAEMON', libsystemd_daemon_dep.found() ? '1' : false) ++conf_data.set('HAVE_SYSTEMD_DAEMON', build_systemd ? '1' : false) + conf_data.set('HAVE_XSHMFENCE', xshmfence_dep.found() ? '1' : false) + conf_data.set('WITH_LIBDRM', libdrm_required ? '1' : false) + conf_data.set('GLAMOR_HAS_EGL_QUERY_DMABUF', +diff --git a/meson.build b/meson.build +index 60164d73b..de984760c 100644 +--- a/meson.build ++++ b/meson.build +@@ -99,6 +99,7 @@ xkbcomp_dep = dependency('xkbcomp', required: false) + xkbfile_dep = dependency('xkbfile') + xfont2_dep = dependency('xfont2', version: '>= 2.0') + ++build_systemd = get_option('systemd') == 'true' + # libsystemd-daemon was moved into libsystemd in version 209 + libsystemd_daemon_dep = dependency('libsystemd', version: '>= 209', required: false) + if not libsystemd_daemon_dep.found() +diff --git a/meson_options.txt b/meson_options.txt +index af094df70..62c539fbd 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -47,6 +47,8 @@ option('listen_unix', type: 'boolean', value: true, + option('listen_local', type: 'boolean', value: true, + description: 'Listen on local by default') + ++option('systemd', type: 'combo', choices: ['true', 'false', 'auto'], value: 'auto', ++ description: 'Enable systemd-notify support') + option('dpms', type: 'boolean', value: true, + description: 'Xorg DPMS extension') + option('xf86bigfont', type: 'boolean', value: false, diff --git a/x11-base/xwayland/xwayland-23.2.3-r1.ebuild b/x11-base/xwayland/xwayland-23.2.3-r1.ebuild new file mode 100644 index 000000000000..7cf66e28583c --- /dev/null +++ b/x11-base/xwayland/xwayland-23.2.3-r1.ebuild @@ -0,0 +1,112 @@ +# Copyright 2021-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit meson + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://gitlab.freedesktop.org/xorg/xserver.git" + inherit git-r3 +else + SRC_URI="https://xorg.freedesktop.org/archive/individual/xserver/${P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +DESCRIPTION="Standalone X server running under Wayland" +HOMEPAGE="https://wayland.freedesktop.org/xserver.html" + +IUSE="libei selinux systemd video_cards_nvidia unwind xcsecurity" + +LICENSE="MIT" +SLOT="0" + +COMMON_DEPEND=" + dev-libs/libbsd + dev-libs/openssl:= + >=dev-libs/wayland-1.21.0 + >=dev-libs/wayland-protocols-1.30 + media-fonts/font-util + >=media-libs/libepoxy-1.5.4[X,egl(+)] + media-libs/libglvnd[X] + >=media-libs/mesa-21.1[X(+),egl(+),gbm(+)] + >=x11-libs/libdrm-2.4.109 + >=x11-libs/libXau-1.0.4 + x11-libs/libxcvt + >=x11-libs/libXdmcp-1.0.2 + >=x11-libs/libXfont2-2.0.1 + x11-libs/libxkbfile + >=x11-libs/libxshmfence-1.1 + >=x11-libs/pixman-0.27.2 + >=x11-misc/xkeyboard-config-2.4.1-r3 + + libei? ( dev-libs/libei ) + systemd? ( sys-apps/systemd ) + unwind? ( sys-libs/libunwind ) + video_cards_nvidia? ( gui-libs/egl-wayland ) +" +DEPEND=" + ${COMMON_DEPEND} + >=x11-base/xorg-proto-2022.2 + >=x11-libs/xtrans-1.3.5 +" +RDEPEND=" + ${COMMON_DEPEND} + x11-apps/xkbcomp + + libei? ( >=sys-apps/xdg-desktop-portal-1.18.0 ) + selinux? ( sec-policy/selinux-xserver ) +" +BDEPEND=" + sys-devel/flex + dev-util/wayland-scanner +" + +PATCHES=( + "${FILESDIR}"/xwayland-drop-redundantly-installed-files.patch + "${FILESDIR}"/xwayland-23.2.3-systemd-automagic.patch +) + +src_configure() { + local emesonargs=( + $(meson_use selinux xselinux) + $(meson_use systemd) + $(meson_use unwind libunwind) + $(meson_use xcsecurity) + $(meson_use video_cards_nvidia xwayland_eglstream) + -Ddpms=true + -Ddri3=true + -Ddrm=true + -Ddtrace=false + -Dglamor=true + -Dglx=true + -Dipv6=true + -Dsecure-rpc=false + -Dscreensaver=true + -Dsha1=libcrypto + -Dxace=true + -Dxdmcp=true + -Dxinerama=true + -Dxvfb=true + -Dxv=true + -Dxwayland-path="${EPREFIX}"/usr/bin + -Dlibdecor=false + -Ddocs=false + -Ddevel-docs=false + -Ddocs-pdf=false + ) + + if use libei; then + emesonargs+=( -Dxwayland_ei=portal ) + else + emesonargs+=( -Dxwayland_ei=false ) + fi + + meson_src_configure +} + +src_install() { + dosym ../bin/Xwayland /usr/libexec/Xwayland + + meson_src_install +} diff --git a/x11-base/xwayland/xwayland-9999.ebuild b/x11-base/xwayland/xwayland-9999.ebuild index 915fd9a08bb3..6d2b4301bc42 100644 --- a/x11-base/xwayland/xwayland-9999.ebuild +++ b/x11-base/xwayland/xwayland-9999.ebuild @@ -1,4 +1,4 @@ -# Copyright 2021-2023 Gentoo Authors +# Copyright 2021-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -16,7 +16,7 @@ fi DESCRIPTION="Standalone X server running under Wayland" HOMEPAGE="https://wayland.freedesktop.org/xserver.html" -IUSE="libei selinux video_cards_nvidia unwind xcsecurity" +IUSE="libei selinux systemd video_cards_nvidia unwind xcsecurity" LICENSE="MIT" SLOT="0" @@ -41,6 +41,7 @@ COMMON_DEPEND=" >=x11-misc/xkeyboard-config-2.4.1-r3 libei? ( dev-libs/libei ) + systemd? ( sys-apps/systemd ) unwind? ( sys-libs/libunwind ) video_cards_nvidia? ( gui-libs/egl-wayland ) " @@ -68,6 +69,7 @@ PATCHES=( src_configure() { local emesonargs=( $(meson_use selinux xselinux) + $(meson_use systemd) $(meson_use unwind libunwind) $(meson_use xcsecurity) $(meson_use video_cards_nvidia xwayland_eglstream) |