diff options
author | Matt Turner <mattst88@gentoo.org> | 2019-02-27 17:18:22 -0800 |
---|---|---|
committer | Matt Turner <mattst88@gentoo.org> | 2019-02-27 21:44:46 -0800 |
commit | 4b03aab97013ea3cacb778956262dbf16e70fcdf (patch) | |
tree | 8233c91bb1c7cc251b68c7661a8d8167e5842737 /x11-base | |
parent | x11-base/xorg-server: Port to EAPI 7 (diff) | |
download | gentoo-4b03aab97013ea3cacb778956262dbf16e70fcdf.tar.gz gentoo-4b03aab97013ea3cacb778956262dbf16e70fcdf.tar.bz2 gentoo-4b03aab97013ea3cacb778956262dbf16e70fcdf.zip |
x11-base/xorg-server: Version bump to 1.20.4
Closes: https://bugs.gentoo.org/677752
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'x11-base')
5 files changed, 553 insertions, 0 deletions
diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index 4dc159133939..d0d520e0f006 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1 +1,2 @@ DIST xorg-server-1.20.3.tar.bz2 6205000 BLAKE2B 9fc8acf1812d0aa4800941dd1846060f91edf1e7ebc92b35e8c2028266d88d3ab3ba14e95f535e5ee41941f8e20769ee75723ba609f5653d4892f97bc5cf91c4 SHA512 ee44554f86df4297f54c5871fe7a18954eeef4338775a25f36d6577b279c4775f61128da71b86cfaeadcc080838d6749dede138d4db178866579da2056543fba +DIST xorg-server-1.20.4.tar.bz2 6123780 BLAKE2B 224dda54f433315f6614cbee5bc54db91d9d9e190c06ac7f26e334b80b9d4a612ff4b2a4f10f50a6f928ecdbea40172d5578289fbf88411f006bcd473253b05d SHA512 f1c92ef6d7613e0636973d3395b48dfdad42230847ab1c8b1cea84647a968f649f9aba97bdb01c10ee8351cbe954d4e6ca4a0fc84bb8fa662d49c8ba2aee00a8 diff --git a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch new file mode 100644 index 000000000000..54ed62935a6d --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch @@ -0,0 +1,174 @@ +From 19f6cb570becbc4e355807199c6e251fc7935132 Mon Sep 17 00:00:00 2001 +From: Eric Anholt <eric@anholt.net> +Date: Wed, 19 Sep 2018 13:28:06 -0700 +Subject: [PATCH xserver] shm: Pick the shm dir at run time, not build time. + +Prodding the builder's filesystem for tmp dirs doesn't necessarily +tell you anything about what the actual host's filesystem is going to +look like, so we should just try the dirs at runtime. + +Signed-off-by: Eric Anholt <eric@anholt.net> +--- + Xext/shm.c | 48 +++++++++++++++++++++++++---------------- + configure.ac | 43 ------------------------------------ + include/dix-config.h.in | 3 --- + include/meson.build | 5 ----- + 4 files changed, 29 insertions(+), 70 deletions(-) + +diff --git a/Xext/shm.c b/Xext/shm.c +index ed43b9202..2739a59e7 100644 +--- a/Xext/shm.c ++++ b/Xext/shm.c +@@ -1194,36 +1194,46 @@ ProcShmAttachFd(ClientPtr client) + static int + shm_tmpfile(void) + { +-#ifdef SHMDIR ++ const char *shmdirs[] = { ++ "/run/shm", ++ "/var/tmp", ++ "/tmp", ++ }; + int fd; +- char template[] = SHMDIR "/shmfd-XXXXXX"; ++ + #ifdef O_TMPFILE +- fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); +- if (fd >= 0) { +- DebugF ("Using O_TMPFILE\n"); +- return fd; ++ for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { ++ fd = open(shmdirs[i], O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); ++ if (fd >= 0) { ++ DebugF ("Using O_TMPFILE\n"); ++ return fd; ++ } + } + ErrorF ("Not using O_TMPFILE\n"); + #endif ++ ++ for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { ++ char template[PATH_MAX]; ++ snprintf(template, ARRAY_SIZE(template), "%s/shmfd-XXXXXX", shmdirs[i]); + #ifdef HAVE_MKOSTEMP +- fd = mkostemp(template, O_CLOEXEC); ++ fd = mkostemp(template, O_CLOEXEC); + #else +- fd = mkstemp(template); ++ fd = mkstemp(template); + #endif +- if (fd < 0) +- return -1; +- unlink(template); ++ if (fd < 0) ++ continue; ++ unlink(template); + #ifndef HAVE_MKOSTEMP +- int flags = fcntl(fd, F_GETFD); +- if (flags != -1) { +- flags |= FD_CLOEXEC; +- (void) fcntl(fd, F_SETFD, &flags); +- } ++ int flags = fcntl(fd, F_GETFD); ++ if (flags != -1) { ++ flags |= FD_CLOEXEC; ++ (void) fcntl(fd, F_SETFD, &flags); ++ } + #endif +- return fd; +-#else ++ return fd; ++ } ++ + return -1; +-#endif + } + + static int +diff --git a/configure.ac b/configure.ac +index 359b62cb5..57a233102 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1115,49 +1115,6 @@ case "$DRI2,$HAVE_DRI2PROTO" in + esac + AM_CONDITIONAL(DRI2, test "x$DRI2" = xyes) + +-dnl +-dnl Locate a suitable tmp file system for creating shared memeory files +-dnl +- +-AC_ARG_WITH(shared-memory-dir, AS_HELP_STRING([--with-shared-memory-dir=PATH], [Path to directory in a world-writable temporary directory for anonymous shared memory (default: auto)]), +-[], +-[with_shared_memory_dir=yes]) +- +-shmdirs="/run/shm /var/tmp /tmp" +- +-case x"$with_shared_memory_dir" in +-xyes) +- for dir in $shmdirs; do +- case x"$with_shared_memory_dir" in +- xyes) +- echo Checking temp dir "$dir" +- if test -d "$dir"; then +- with_shared_memory_dir="$dir" +- fi +- ;; +- esac +- done +- ;; +-x/*) +- ;; +-xno) +- ;; +-*) +- AC_MSG_ERROR([Invalid directory specified for --with-shared-memory-dir: $with_shared_memory_dir]) +- ;; +-esac +- +-case x"$with_shared_memory_dir" in +-xyes) +- AC_MSG_ERROR([No directory found for shared memory temp files.]) +- ;; +-xno) +- ;; +-*) +- AC_DEFINE_UNQUOTED(SHMDIR, ["$with_shared_memory_dir"], [Directory for shared memory temp files]) +- ;; +-esac +- + AC_ARG_ENABLE(xtrans-send-fds, AS_HELP_STRING([--disable-xtrans-send-fds], [Use Xtrans support for fd passing (default: auto)]), [XTRANS_SEND_FDS=$enableval], [XTRANS_SEND_FDS=auto]) + + case "x$XTRANS_SEND_FDS" in +diff --git a/include/dix-config.h.in b/include/dix-config.h.in +index f8df86608..3bd22b8bb 100644 +--- a/include/dix-config.h.in ++++ b/include/dix-config.h.in +@@ -452,9 +452,6 @@ + /* Wrap SIGBUS to catch MIT-SHM faults */ + #undef BUSFAULT + +-/* Directory for shared memory temp files */ +-#undef SHMDIR +- + /* Don't let Xdefs.h define 'pointer' */ + #define _XTYPEDEF_POINTER 1 + +diff --git a/include/meson.build b/include/meson.build +index 4a0c12f5a..04c41e999 100644 +--- a/include/meson.build ++++ b/include/meson.build +@@ -91,11 +91,6 @@ conf_data.set('SYSTEMD_LOGIND', build_systemd_logind) + conf_data.set('NEED_DBUS', build_systemd_logind or build_hal) + conf_data.set('CONFIG_WSCONS', host_machine.system() == 'openbsd') + +-# XXX: SHMDIR is weird in autoconf, probing the build system for +-# various tmp directories. Could we replace it with C code at runtime +-# that just uses whatever directory works? +-conf_data.set_quoted('SHMDIR', '/tmp') +- + conf_data.set('HAVE_XSHMFENCE', xshmfence_dep.found()) + conf_data.set('WITH_LIBDRM', libdrm_dep.found()) + conf_data.set('GLAMOR_HAS_EGL_QUERY_DMABUF', +-- +2.19.2 + diff --git a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Use-memfd_create-when-possible.patch b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Use-memfd_create-when-possible.patch new file mode 100644 index 000000000000..fce25944537f --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Use-memfd_create-when-possible.patch @@ -0,0 +1,89 @@ +From f6753c117ef0f83499d5e2d6dda226fec9ddf803 Mon Sep 17 00:00:00 2001 +From: Alexander Volkov <a.volkov@rusbitech.ru> +Date: Mon, 11 Feb 2019 18:54:10 +0300 +Subject: [PATCH xserver] shm: Use memfd_create when possible + +It doesn't require shared memory dir and thus allows +to avoid cases when this dir is detected incorrectly, +as in https://bugreports.qt.io/browse/QTBUG-71440 + +Signed-off-by: Alexander Volkov <a.volkov@rusbitech.ru> +--- + Xext/shm.c | 12 ++++++++++++ + configure.ac | 2 +- + include/dix-config.h.in | 3 +++ + include/meson.build | 1 + + 4 files changed, 17 insertions(+), 1 deletion(-) + +diff --git a/Xext/shm.c b/Xext/shm.c +index 2739a59e7..506fd4df1 100644 +--- a/Xext/shm.c ++++ b/Xext/shm.c +@@ -35,6 +35,9 @@ in this Software without prior written authorization from The Open Group. + #include <sys/types.h> + #include <sys/ipc.h> + #include <sys/shm.h> ++#ifdef HAVE_MEMFD_CREATE ++#include <sys/mman.h> ++#endif + #include <unistd.h> + #include <sys/stat.h> + #include <fcntl.h> +@@ -1201,6 +1204,15 @@ shm_tmpfile(void) + }; + int fd; + ++#ifdef HAVE_MEMFD_CREATE ++ fd = memfd_create("xorg", MFD_CLOEXEC|MFD_ALLOW_SEALING); ++ if (fd != -1) { ++ fcntl(fd, F_ADD_SEALS, F_SEAL_SHRINK); ++ DebugF ("Using memfd_create\n"); ++ return fd; ++ } ++#endif ++ + #ifdef O_TMPFILE + for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { + fd = open(shmdirs[i], O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); +diff --git a/configure.ac b/configure.ac +index 0ca96aeb8..79ff7fa64 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -159,7 +159,7 @@ dnl Checks for library functions. + AC_CHECK_FUNCS([backtrace geteuid getuid issetugid getresuid \ + getdtablesize getifaddrs getpeereid getpeerucred getprogname getzoneid \ + mmap posix_fallocate seteuid shmctl64 strncasecmp vasprintf vsnprintf \ +- walkcontext setitimer poll epoll_create1 mkostemp]) ++ walkcontext setitimer poll epoll_create1 mkostemp memfd_create]) + AC_CONFIG_LIBOBJ_DIR([os]) + AC_REPLACE_FUNCS([reallocarray strcasecmp strcasestr strlcat strlcpy strndup\ + timingsafe_memcmp]) +diff --git a/include/dix-config.h.in b/include/dix-config.h.in +index 855b3d50c..9eb1a924e 100644 +--- a/include/dix-config.h.in ++++ b/include/dix-config.h.in +@@ -128,6 +128,9 @@ + /* Define to 1 if you have the <linux/fb.h> header file. */ + #undef HAVE_LINUX_FB_H + ++/* Define to 1 if you have the `memfd_create' function. */ ++#undef HAVE_MEMFD_CREATE ++ + /* Define to 1 if you have the `mkostemp' function. */ + #undef HAVE_MKOSTEMP + +diff --git a/include/meson.build b/include/meson.build +index 04c41e999..bbd5a6690 100644 +--- a/include/meson.build ++++ b/include/meson.build +@@ -141,6 +141,7 @@ conf_data.set('HAVE_GETPEEREID', cc.has_function('getpeereid')) + conf_data.set('HAVE_GETPEERUCRED', cc.has_function('getpeerucred')) + conf_data.set('HAVE_GETPROGNAME', cc.has_function('getprogname')) + conf_data.set('HAVE_GETZONEID', cc.has_function('getzoneid')) ++conf_data.set('HAVE_MEMFD_CREATE', cc.has_function('memfd_create')) + conf_data.set('HAVE_MKOSTEMP', cc.has_function('mkostemp')) + conf_data.set('HAVE_MMAP', cc.has_function('mmap')) + conf_data.set('HAVE_POLL', cc.has_function('poll')) +-- +2.19.2 + diff --git a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-reindent-shm_tmpfile-to-follow-our-standards.patch b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-reindent-shm_tmpfile-to-follow-our-standards.patch new file mode 100644 index 000000000000..1ce9e1307943 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-reindent-shm_tmpfile-to-follow-our-standards.patch @@ -0,0 +1,72 @@ +From 804a9b4f57107fa2d0ed1ae0becda5bebaffe6e1 Mon Sep 17 00:00:00 2001 +From: Eric Anholt <eric@anholt.net> +Date: Wed, 19 Sep 2018 13:20:12 -0700 +Subject: [PATCH xserver] shm: reindent shm_tmpfile to follow our standards. + +Signed-off-by: Eric Anholt <eric@anholt.net> +--- + Xext/shm.c | 40 ++++++++++++++++++++-------------------- + 1 file changed, 20 insertions(+), 20 deletions(-) + +diff --git a/Xext/shm.c b/Xext/shm.c +index 589ed0b4d..ed43b9202 100644 +--- a/Xext/shm.c ++++ b/Xext/shm.c +@@ -1195,34 +1195,34 @@ static int + shm_tmpfile(void) + { + #ifdef SHMDIR +- int fd; +- char template[] = SHMDIR "/shmfd-XXXXXX"; ++ int fd; ++ char template[] = SHMDIR "/shmfd-XXXXXX"; + #ifdef O_TMPFILE +- fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); +- if (fd >= 0) { +- DebugF ("Using O_TMPFILE\n"); +- return fd; +- } +- ErrorF ("Not using O_TMPFILE\n"); ++ fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); ++ if (fd >= 0) { ++ DebugF ("Using O_TMPFILE\n"); ++ return fd; ++ } ++ ErrorF ("Not using O_TMPFILE\n"); + #endif + #ifdef HAVE_MKOSTEMP +- fd = mkostemp(template, O_CLOEXEC); ++ fd = mkostemp(template, O_CLOEXEC); + #else +- fd = mkstemp(template); ++ fd = mkstemp(template); + #endif +- if (fd < 0) +- return -1; +- unlink(template); ++ if (fd < 0) ++ return -1; ++ unlink(template); + #ifndef HAVE_MKOSTEMP +- int flags = fcntl(fd, F_GETFD); +- if (flags != -1) { +- flags |= FD_CLOEXEC; +- (void) fcntl(fd, F_SETFD, &flags); +- } ++ int flags = fcntl(fd, F_GETFD); ++ if (flags != -1) { ++ flags |= FD_CLOEXEC; ++ (void) fcntl(fd, F_SETFD, &flags); ++ } + #endif +- return fd; ++ return fd; + #else +- return -1; ++ return -1; + #endif + } + +-- +2.19.2 + diff --git a/x11-base/xorg-server/xorg-server-1.20.4.ebuild b/x11-base/xorg-server/xorg-server-1.20.4.ebuild new file mode 100644 index 000000000000..73fb1dab4718 --- /dev/null +++ b/x11-base/xorg-server/xorg-server-1.20.4.ebuild @@ -0,0 +1,217 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +XORG_DOC=doc +XORG_EAUTORECONF="yes" +inherit xorg-3 multilib flag-o-matic +EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git" + +DESCRIPTION="X.Org X servers" +SLOT="0/${PV}" +if [[ ${PV} != 9999* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" +fi + +IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb" +IUSE="${IUSE_SERVERS} debug +glamor ipv6 libressl minimal selinux +suid systemd +udev unwind xcsecurity" + +CDEPEND=">=app-eselect/eselect-opengl-1.3.0 + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:0= ) + >=x11-apps/iceauth-1.0.2 + >=x11-apps/rgb-1.0.3 + >=x11-apps/xauth-1.0.3 + x11-apps/xkbcomp + >=x11-libs/libdrm-2.4.89 + >=x11-libs/libpciaccess-0.12.901 + >=x11-libs/libXau-1.0.4 + >=x11-libs/libXdmcp-1.0.2 + >=x11-libs/libXfont2-2.0.1 + >=x11-libs/libxkbfile-1.0.4 + >=x11-libs/libxshmfence-1.1 + >=x11-libs/pixman-0.27.2 + >=x11-libs/xtrans-1.3.5 + >=x11-misc/xbitmaps-1.0.1 + >=x11-misc/xkeyboard-config-2.4.1-r3 + dmx? ( + x11-libs/libXt + >=x11-libs/libdmx-1.0.99.1 + >=x11-libs/libX11-1.1.5 + >=x11-libs/libXaw-1.0.4 + >=x11-libs/libXext-1.0.99.4 + >=x11-libs/libXfixes-5.0 + >=x11-libs/libXi-1.2.99.1 + >=x11-libs/libXmu-1.0.3 + x11-libs/libXrender + >=x11-libs/libXres-1.0.3 + >=x11-libs/libXtst-1.0.99.2 + ) + glamor? ( + media-libs/libepoxy[X] + >=media-libs/mesa-18[egl,gbm] + !x11-libs/glamor + ) + kdrive? ( + >=x11-libs/libXext-1.0.5 + x11-libs/libXv + ) + xephyr? ( + x11-libs/libxcb[xkb] + x11-libs/xcb-util + x11-libs/xcb-util-image + x11-libs/xcb-util-keysyms + x11-libs/xcb-util-renderutil + x11-libs/xcb-util-wm + ) + !minimal? ( + >=x11-libs/libX11-1.1.5 + >=x11-libs/libXext-1.0.5 + >=media-libs/mesa-18 + ) + udev? ( virtual/libudev:= ) + unwind? ( sys-libs/libunwind ) + wayland? ( + >=dev-libs/wayland-1.3.0 + media-libs/libepoxy + >=dev-libs/wayland-protocols-1.1 + ) + >=x11-apps/xinit-1.3.3-r1 + systemd? ( + sys-apps/dbus + sys-apps/systemd + )" + +DEPEND="${CDEPEND} + sys-devel/flex + >=x11-base/xorg-proto-2018.3 + dmx? ( + doc? ( + || ( + www-client/links + www-client/lynx + www-client/w3m + ) + ) + )" + +RDEPEND="${CDEPEND} + selinux? ( sec-policy/selinux-xserver ) + !x11-drivers/xf86-video-modesetting +" + +PDEPEND=" + xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )" + +REQUIRED_USE="!minimal? ( + || ( ${IUSE_SERVERS} ) + ) + minimal? ( !glamor !wayland ) + xephyr? ( kdrive )" + +UPSTREAMED_PATCHES=( + "${FILESDIR}"/${P}-shm-reindent-shm_tmpfile-to-follow-our-standards.patch + "${FILESDIR}"/${P}-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch + "${FILESDIR}"/${P}-shm-Use-memfd_create-when-possible.patch +) + +PATCHES=( + "${UPSTREAMED_PATCHES[@]}" + "${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch + # needed for new eselect-opengl, bug #541232 + "${FILESDIR}"/${PN}-1.18-support-multiple-Files-sections.patch +) + +pkg_setup() { + if use wayland && ! use glamor; then + ewarn "glamor is necessary for acceleration under Xwayland." + ewarn "Performance may be unacceptable without it." + fi + + # localstatedir is used for the log location; we need to override the default + # from ebuild.sh + # sysconfdir is used for the xorg.conf location; same applies + # NOTE: fop is used for doc generating; and I have no idea if Gentoo + # package it somewhere + XORG_CONFIGURE_OPTIONS=( + $(use_enable ipv6) + $(use_enable debug) + $(use_enable dmx) + $(use_enable glamor) + $(use_enable kdrive) + $(use_enable unwind libunwind) + $(use_enable wayland xwayland) + $(use_enable !minimal record) + $(use_enable !minimal xfree86-utils) + $(use_enable !minimal dri) + $(use_enable !minimal dri2) + $(use_enable !minimal dri3) + $(use_enable !minimal glx) + $(use_enable xcsecurity) + $(use_enable xephyr) + $(use_enable xnest) + $(use_enable xorg) + $(use_enable xvfb) + $(use_enable udev config-udev) + $(use_with doc doxygen) + $(use_with doc xmlto) + $(use_with systemd systemd-daemon) + $(use_enable systemd systemd-logind) + $(usex suid $(use_enable systemd suid-wrapper) '--disable-suid-wrapper') + $(usex suid $(use_enable !systemd install-setuid) '--disable-install-setuid') + --enable-libdrm + --sysconfdir="${EPREFIX}"/etc/X11 + --localstatedir="${EPREFIX}"/var + --with-fontrootdir="${EPREFIX}"/usr/share/fonts + --with-xkb-output="${EPREFIX}"/var/lib/xkb + --disable-config-hal + --disable-linux-acpi + --without-dtrace + --without-fop + --with-os-vendor=Gentoo + --with-sha1=libcrypto + ) +} + +src_install() { + default + + server_based_install + + if ! use minimal && use xorg; then + # Install xorg.conf.example into docs + dodoc "${S}"/hw/xfree86/xorg.conf.example + fi + + newinitd "${FILESDIR}"/xdm-setup.initd-1 xdm-setup + newinitd "${FILESDIR}"/xdm.initd-11 xdm + newconfd "${FILESDIR}"/xdm.confd-4 xdm + + # install the @x11-module-rebuild set for Portage + insinto /usr/share/portage/config/sets + newins "${FILESDIR}"/xorg-sets.conf xorg.conf + + find "${ED}"/var -type d -empty -delete || die +} + +pkg_postinst() { + # sets up libGL and DRI2 symlinks if needed (ie, on a fresh install) + eselect opengl set xorg-x11 --use-old +} + +pkg_postrm() { + # Get rid of module dir to ensure opengl-update works properly + if [[ -z ${REPLACED_BY_VERSION} && -e ${EROOT}/usr/$(get_libdir)/xorg/modules ]]; then + rm -rf "${EROOT}"/usr/$(get_libdir)/xorg/modules + fi +} + +server_based_install() { + if ! use xorg; then + rm "${ED}"/usr/share/man/man1/Xserver.1x \ + "${ED}"/usr/$(get_libdir)/xserver/SecurityPolicy \ + "${ED}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \ + "${ED}"/usr/share/man/man1/Xserver.1x + fi +} |