diff options
author | Piotr Karbowski <slashbeast@gentoo.org> | 2021-06-22 23:27:19 +0200 |
---|---|---|
committer | Piotr Karbowski <slashbeast@gentoo.org> | 2021-06-22 23:27:19 +0200 |
commit | 0386173ffca23490f853383c84c0391d524eebca (patch) | |
tree | 81fe172aa9075d2e80f7d3393b35ba78d1bdcf72 /x11-base | |
parent | x11-base/xwayland: new package. (diff) | |
download | gentoo-0386173ffca23490f853383c84c0391d524eebca.tar.gz gentoo-0386173ffca23490f853383c84c0391d524eebca.tar.bz2 gentoo-0386173ffca23490f853383c84c0391d524eebca.zip |
x11-base/xorg-server: 1.20.11-r1 revbump with split of xwayland
Signed-off-by: Piotr Karbowski <slashbeast@gentoo.org>
Diffstat (limited to 'x11-base')
-rw-r--r-- | x11-base/xorg-server/xorg-server-1.20.11-r1.ebuild | 216 |
1 files changed, 216 insertions, 0 deletions
diff --git a/x11-base/xorg-server/xorg-server-1.20.11-r1.ebuild b/x11-base/xorg-server/xorg-server-1.20.11-r1.ebuild new file mode 100644 index 000000000000..d7a28ea70805 --- /dev/null +++ b/x11-base/xorg-server/xorg-server-1.20.11-r1.ebuild @@ -0,0 +1,216 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +XORG_DOC=doc +inherit xorg-3 multilib flag-o-matic toolchain-funcs +EGIT_REPO_URI="https://gitlab.freedesktop.org/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 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +fi + +IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb" +IUSE="${IUSE_SERVERS} debug +elogind ipv6 minimal selinux suid systemd test +udev unwind xcsecurity" +RESTRICT="!test? ( test )" + +CDEPEND=" + media-libs/libglvnd[X] + dev-libs/openssl: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-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 + ) + 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[X(+),egl,gbm] + >=media-libs/libepoxy-1.5.4[X,egl(+)] + ) + udev? ( virtual/libudev:= ) + unwind? ( sys-libs/libunwind ) + >=x11-apps/xinit-1.3.3-r1 + systemd? ( + sys-apps/dbus + sys-apps/systemd + ) + elogind? ( + sys-apps/dbus + sys-auth/elogind[pam] + sys-auth/pambase[elogind] + ) + !!x11-drivers/nvidia-drivers[-libglvnd(+)] +" +DEPEND="${CDEPEND} + >=x11-base/xorg-proto-2018.4 + >=x11-libs/xtrans-1.3.5 + dmx? ( + doc? ( + || ( + www-client/links + www-client/lynx + www-client/w3m + ) + ) + ) + wayland? ( x11-base/xwayland ) +" +RDEPEND="${CDEPEND} + !systemd? ( gui-libs/display-manager-init ) + selinux? ( sec-policy/selinux-xserver ) +" +BDEPEND=" + sys-devel/flex +" +PDEPEND=" + xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )" + +REQUIRED_USE="!minimal? ( + || ( ${IUSE_SERVERS} ) + ) + elogind? ( udev ) + ?? ( elogind systemd ) + minimal? ( !wayland ) + xephyr? ( kdrive )" + +UPSTREAMED_PATCHES=( +) + +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 +) + +src_configure() { + # 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 + local XORG_CONFIGURE_OPTIONS=( + $(use_enable ipv6) + $(use_enable debug) + $(use_enable dmx) + $(use_enable kdrive) + $(use_enable test unit-tests) + $(use_enable unwind libunwind) + $(use_enable !minimal record) + $(use_enable !minimal xfree86-utils) + $(use_enable !minimal dri) + $(use_enable !minimal dri2) + $(use_enable !minimal dri3) + $(use_enable !minimal glamor) + $(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) + --disable-xwayland + --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 + CPP="$(tc-getPROG CPP cpp)" + ) + + if use systemd || use elogind; then + XORG_CONFIGURE_OPTIONS+=( + --enable-systemd-logind + --disable-install-setuid + $(use_enable suid suid-wrapper) + ) + else + XORG_CONFIGURE_OPTIONS+=( + --disable-systemd-logind + --disable-suid-wrapper + $(use_enable suid install-setuid) + ) + fi + + xorg-3_src_configure +} + +server_based_install() { + if ! use xorg; then + rm -f "${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 || die + fi +} + +src_install() { + xorg-3_src_install + + server_based_install + + if ! use minimal && use xorg; then + # Install xorg.conf.example into docs + dodoc "${S}"/hw/xfree86/xorg.conf.example + fi + + # 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_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 +} |