public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2015-08-22 20:11 Sergei Trofimovich
  0 siblings, 0 replies; 24+ messages in thread
From: Sergei Trofimovich @ 2015-08-22 20:11 UTC (permalink / raw
  To: gentoo-commits

commit:     ef0ca3a416ad5b5332da5eb15d388ce7f7845e53
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 22 20:06:18 2015 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Aug 22 20:10:50 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef0ca3a4

x11-base/xorg-server: fix crash on FlushAllOutput, bug #555776

Bug: https://bugs.freedesktop.org/91316
Bug: https://bugs.gentoo.org/555776

Package-Manager: portage-2.2.20

 ...xorg-server-1.17.2-uninit-clientsWritable.patch |  65 ++++++
 x11-base/xorg-server/xorg-server-1.17.2-r1.ebuild  | 245 +++++++++++++++++++++
 2 files changed, 310 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch b/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch
new file mode 100644
index 0000000..6818196
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch
@@ -0,0 +1,65 @@
+https://bugs.gentoo.org/show_bug.cgi?id=555776
+
+From 7cc7ffd25d5e50b54cb942d07d4cb160f20ff9c5 Mon Sep 17 00:00:00 2001
+From: Martin Peres <martin.peres@linux.intel.com>
+Date: Fri, 17 Jul 2015 17:21:26 +0300
+Subject: [PATCH] os: make sure the clientsWritable fd_set is initialized
+ before use
+
+In WaitForSomething(), the fd_set clientsWritable may be used unitialized when
+the boolean AnyClientsWriteBlocked is set in the WakeupHandler(). This leads to
+a crash in FlushAllOutput() after x11proto's commit
+2c94cdb453bc641246cc8b9a876da9799bee1ce7.
+
+The problem did not manifest before because both the XFD_SIZE and the maximum
+number of clients were set to 256. As the connectionTranslation table was
+initalized for the 256 clients to 0, the test on the index not being 0 was
+aborting before dereferencing the client #0.
+
+As of commit 2c94cdb453bc641246cc8b9a876da9799bee1ce7 in x11proto, the XFD_SIZE
+got bumped to 512. This lead the OutputPending fd_set to have any fd above 256
+to be uninitialized which in turns lead to reading an index after the end of
+the ConnectionTranslation table. This index would then be used to find the
+client corresponding to the fd marked as pending writes and would also result
+to an out-of-bound access which would usually be the fatal one.
+
+Fix this by zeroing the clientsWritable fd_set at the beginning of
+WaitForSomething(). In this case, the bottom part of the loop, which would
+indirectly call FlushAllOutput, will not do any work but the next call to
+select will result in the execution of the right codepath. This is exactly what
+we want because we need to know the writable clients before handling them. In
+the end, it also makes sure that the fds above MaxClient are initialized,
+preventing the crash in FlushAllOutput().
+
+Thanks to everyone involved in tracking this one down!
+
+Reported-by: Karol Herbst <freedesktop@karolherbst.de>
+Reported-by: Tobias Klausmann <tobias.klausmann@mni.thm.de>
+Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
+Tested-by: Martin Peres <martin.peres@linux.intel.com>
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91316
+Cc: Ilia Mirkin  <imirkin@alum.mit.edu>
+Cc: Martin Peres <martin.peres@linux.intel.com>
+Cc: Olivier Fourdan <ofourdan@redhat.com
+Cc: Adam Jackson <ajax@redhat.com>
+Cc: Alan Coopersmith <alan.coopersmith@oracle.com
+Cc: Chris Wilson <chris@chris-wilson.co.uk>
+---
+ os/WaitFor.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/os/WaitFor.c b/os/WaitFor.c
+index 431f1a6..993c14e 100644
+--- a/os/WaitFor.c
++++ b/os/WaitFor.c
+@@ -158,6 +158,7 @@ WaitForSomething(int *pClientsReady)
+     Bool someReady = FALSE;
+ 
+     FD_ZERO(&clientsReadable);
++    FD_ZERO(&clientsWritable);
+ 
+     if (nready)
+         SmartScheduleStopTimer();
+-- 
+2.4.5
+

diff --git a/x11-base/xorg-server/xorg-server-1.17.2-r1.ebuild b/x11-base/xorg-server/xorg-server-1.17.2-r1.ebuild
new file mode 100644
index 0000000..8181fa5
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.17.2-r1.ebuild
@@ -0,0 +1,245 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-eselect/eselect-opengl-1.3.0
+	dev-libs/openssl
+	media-libs/freetype
+	>=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.46
+	>=x11-libs/libpciaccess-0.12.901
+	>=x11-libs/libXau-1.0.4
+	>=x11-libs/libXdmcp-1.0.2
+	>=x11-libs/libXfont-1.4.2
+	>=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
+		>=media-libs/mesa-10.3.4-r1[egl,gbm]
+		!x11-libs/glamor
+	)
+	kdrive? (
+		>=x11-libs/libXext-1.0.5
+		x11-libs/libXv
+	)
+	xephyr? (
+		x11-libs/libxcb
+		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-10.3.4-r1[nptl=]
+	)
+	tslib? ( >=x11-libs/tslib-1.0 )
+	udev? ( >=virtual/udev-150 )
+	unwind? ( sys-libs/libunwind )
+	wayland? (
+		>=dev-libs/wayland-1.3.0
+		media-libs/libepoxy
+	)
+	>=x11-apps/xinit-1.3.3-r1
+	systemd? (
+		sys-apps/dbus
+		sys-apps/systemd
+	)"
+
+DEPEND="${CDEPEND}
+	sys-devel/flex
+	>=x11-proto/bigreqsproto-1.1.0
+	>=x11-proto/compositeproto-0.4
+	>=x11-proto/damageproto-1.1
+	>=x11-proto/fixesproto-5.0
+	>=x11-proto/fontsproto-2.1.3
+	>=x11-proto/glproto-1.4.17-r1
+	>=x11-proto/inputproto-2.2.99.1
+	>=x11-proto/kbproto-1.0.3
+	>=x11-proto/randrproto-1.4.0
+	>=x11-proto/recordproto-1.13.99.1
+	>=x11-proto/renderproto-0.11
+	>=x11-proto/resourceproto-1.2.0
+	>=x11-proto/scrnsaverproto-1.1
+	>=x11-proto/trapproto-3.4.3
+	>=x11-proto/videoproto-2.2.2
+	>=x11-proto/xcmiscproto-1.2.0
+	>=x11-proto/xextproto-7.2.99.901
+	>=x11-proto/xf86dgaproto-2.0.99.1
+	>=x11-proto/xf86rushproto-1.1.2
+	>=x11-proto/xf86vidmodeproto-2.2.99.1
+	>=x11-proto/xineramaproto-1.1.3
+	>=x11-proto/xproto-7.0.26
+	>=x11-proto/presentproto-1.0
+	>=x11-proto/dri3proto-1.0
+	dmx? (
+		>=x11-proto/dmxproto-2.2.99.1
+		doc? (
+			|| (
+				www-client/links
+				www-client/lynx
+				www-client/w3m
+			)
+		)
+	)
+	!minimal? (
+		>=x11-proto/xf86driproto-2.1.0
+		>=x11-proto/dri2proto-2.8
+	)"
+
+RDEPEND="${CDEPEND}
+	selinux? ( sec-policy/selinux-xserver )
+	!x11-drivers/xf86-video-modesetting
+"
+
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	xephyr? ( kdrive )"
+
+#UPSTREAMED_PATCHES=(
+#	"${WORKDIR}/patches/"
+#)
+
+PATCHES=(
+	"${UPSTREAMED_PATCHES[@]}"
+	"${FILESDIR}"/${PN}-1.17-ia64-fix_inx_outx.patch
+	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+	# needed for new eselect-opengl, bug #541232
+	"${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.patch
+	"${FILESDIR}"/${PN}-1.17.2-uninit-clientsWritable.patch
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+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
+	XORG_CONFIGURE_OPTIONS=(
+		$(use_enable ipv6)
+		$(use_enable dmx)
+		$(use_enable glamor)
+		$(use_enable kdrive)
+		$(use_enable kdrive kdrive-kbd)
+		$(use_enable kdrive kdrive-mouse)
+		$(use_enable kdrive kdrive-evdev)
+		$(use_enable suid install-setuid)
+		$(use_enable tslib)
+		$(use_enable unwind libunwind)
+		$(use_enable wayland xwayland)
+		$(use_enable !minimal record)
+		$(use_enable !minimal xfree86-utils)
+		$(use_enable !minimal install-libxf86config)
+		$(use_enable !minimal dri)
+		$(use_enable !minimal dri2)
+		$(use_enable !minimal glx)
+		$(use_enable xephyr)
+		$(use_enable xnest)
+		$(use_enable xorg)
+		$(use_enable xvfb)
+		$(use_enable nptl glx-tls)
+		$(use_enable udev config-udev)
+		$(use_with doc doxygen)
+		$(use_with doc xmlto)
+		$(use_with systemd systemd-daemon)
+		$(use_enable systemd systemd-logind)
+		--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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal &&	use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2015-09-03 15:58 Chí-Thanh Christopher Nguyễn
  0 siblings, 0 replies; 24+ messages in thread
From: Chí-Thanh Christopher Nguyễn @ 2015-09-03 15:58 UTC (permalink / raw
  To: gentoo-commits

commit:     9695eae2fcfd4e20f418a488729639dce3556376
Author:     Chí-Thanh Christopher Nguyễn <chithanh <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  3 15:56:58 2015 +0000
Commit:     Chí-Thanh Christopher Nguyễn <chithanh <AT> gentoo <DOT> org>
CommitDate: Thu Sep  3 15:56:58 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9695eae2

x11-base/xorg-server: add patches for CVE-2015-3164

Bug: https://bugs.gentoo.org/show_bug.cgi?id=551680

Package-Manager: portage-2.2.20.1

 .../files/xorg-server-1.17-cve-2015-3164-1.patch   |  33 +++
 .../files/xorg-server-1.17-cve-2015-3164-2.patch   | 246 +++++++++++++++++++
 .../files/xorg-server-1.17-cve-2015-3164-3.patch   |  34 +++
 x11-base/xorg-server/xorg-server-1.16.4-r3.ebuild  | 261 +++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.16.4-r4.ebuild  | 236 +++++++++++++++++++
 5 files changed, 810 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch
new file mode 100644
index 0000000..a9f8030
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch
@@ -0,0 +1,33 @@
+From c4534a38b68aa07fb82318040dc8154fb48a9588 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Tue, 5 May 2015 16:43:42 -0400
+Subject: xwayland: Enable access control on open sockets [CVE-2015-3164 1/3]
+
+Xwayland currently allows wide-open access to the X sockets
+it listens on, ignoring Xauth access control.
+
+This commit makes sure to enable access control on the sockets,
+so one user can't snoop on another user's X-over-wayland
+applications.
+
+Signed-off-by: Ray Strode <rstrode@redhat.com>
+Reviewed-by: Daniel Stone <daniels@collabora.com>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Signed-off-by: Keith Packard <keithp@keithp.com>
+
+diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
+index 7e8d667..c5bee77 100644
+--- a/hw/xwayland/xwayland.c
++++ b/hw/xwayland/xwayland.c
+@@ -483,7 +483,7 @@ listen_on_fds(struct xwl_screen *xwl_screen)
+     int i;
+ 
+     for (i = 0; i < xwl_screen->listen_fd_count; i++)
+-        ListenOnOpenFD(xwl_screen->listen_fds[i], TRUE);
++        ListenOnOpenFD(xwl_screen->listen_fds[i], FALSE);
+ }
+ 
+ static void
+-- 
+cgit v0.10.2
+

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch
new file mode 100644
index 0000000..47b323f
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch
@@ -0,0 +1,246 @@
+From 4b4b9086d02b80549981d205fb1f495edc373538 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Tue, 5 May 2015 16:43:43 -0400
+Subject: os: support new implicit local user access mode [CVE-2015-3164 2/3]
+
+If the X server is started without a '-auth' argument, then
+it gets started wide open to all local users on the system.
+
+This isn't a great default access model, but changing it in
+Xorg at this point would break backward compatibility.
+
+Xwayland, on the other hand is new, and much more targeted
+in scope.  It could, in theory, be changed to allow the much
+more secure default of a "user who started X server can connect
+clients to that server."
+
+This commit paves the way for that change, by adding a mechanism
+for DDXs to opt-in to that behavior.  They merely need to call
+
+LocalAccessScopeUser()
+
+in their init functions.
+
+A subsequent commit will add that call for Xwayland.
+
+Signed-off-by: Ray Strode <rstrode@redhat.com>
+Reviewed-by: Daniel Stone <daniels@collabora.com>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Signed-off-by: Keith Packard <keithp@keithp.com>
+
+diff --git a/include/os.h b/include/os.h
+index 6638c84..b2b96c8 100644
+--- a/include/os.h
++++ b/include/os.h
+@@ -431,11 +431,28 @@ extern _X_EXPORT void
+ ResetHosts(const char *display);
+ 
+ extern _X_EXPORT void
++EnableLocalAccess(void);
++
++extern _X_EXPORT void
++DisableLocalAccess(void);
++
++extern _X_EXPORT void
+ EnableLocalHost(void);
+ 
+ extern _X_EXPORT void
+ DisableLocalHost(void);
+ 
++#ifndef NO_LOCAL_CLIENT_CRED
++extern _X_EXPORT void
++EnableLocalUser(void);
++
++extern _X_EXPORT void
++DisableLocalUser(void);
++
++extern _X_EXPORT void
++LocalAccessScopeUser(void);
++#endif
++
+ extern _X_EXPORT void
+ AccessUsingXdmcp(void);
+ 
+diff --git a/os/access.c b/os/access.c
+index 8fa028e..75e7a69 100644
+--- a/os/access.c
++++ b/os/access.c
+@@ -102,6 +102,10 @@ SOFTWARE.
+ #include <sys/ioctl.h>
+ #include <ctype.h>
+ 
++#ifndef NO_LOCAL_CLIENT_CRED
++#include <pwd.h>
++#endif
++
+ #if defined(TCPCONN) || defined(STREAMSCONN)
+ #include <netinet/in.h>
+ #endif                          /* TCPCONN || STREAMSCONN */
+@@ -225,6 +229,13 @@ static int LocalHostEnabled = FALSE;
+ static int LocalHostRequested = FALSE;
+ static int UsingXdmcp = FALSE;
+ 
++static enum {
++    LOCAL_ACCESS_SCOPE_HOST = 0,
++#ifndef NO_LOCAL_CLIENT_CRED
++    LOCAL_ACCESS_SCOPE_USER,
++#endif
++} LocalAccessScope;
++
+ /* FamilyServerInterpreted implementation */
+ static Bool siAddrMatch(int family, void *addr, int len, HOST * host,
+                         ClientPtr client);
+@@ -237,6 +248,21 @@ static void siTypesInitialize(void);
+  */
+ 
+ void
++EnableLocalAccess(void)
++{
++    switch (LocalAccessScope) {
++        case LOCAL_ACCESS_SCOPE_HOST:
++            EnableLocalHost();
++            break;
++#ifndef NO_LOCAL_CLIENT_CRED
++        case LOCAL_ACCESS_SCOPE_USER:
++            EnableLocalUser();
++            break;
++#endif
++    }
++}
++
++void
+ EnableLocalHost(void)
+ {
+     if (!UsingXdmcp) {
+@@ -249,6 +275,21 @@ EnableLocalHost(void)
+  * called when authorization is enabled to keep us secure
+  */
+ void
++DisableLocalAccess(void)
++{
++    switch (LocalAccessScope) {
++        case LOCAL_ACCESS_SCOPE_HOST:
++            DisableLocalHost();
++            break;
++#ifndef NO_LOCAL_CLIENT_CRED
++        case LOCAL_ACCESS_SCOPE_USER:
++            DisableLocalUser();
++            break;
++#endif
++    }
++}
++
++void
+ DisableLocalHost(void)
+ {
+     HOST *self;
+@@ -262,6 +303,74 @@ DisableLocalHost(void)
+     }
+ }
+ 
++#ifndef NO_LOCAL_CLIENT_CRED
++static int GetLocalUserAddr(char **addr)
++{
++    static const char *type = "localuser";
++    static const char delimiter = '\0';
++    static const char *value;
++    struct passwd *pw;
++    int length = -1;
++
++    pw = getpwuid(getuid());
++
++    if (pw == NULL || pw->pw_name == NULL)
++        goto out;
++
++    value = pw->pw_name;
++
++    length = asprintf(addr, "%s%c%s", type, delimiter, value);
++
++    if (length == -1) {
++        goto out;
++    }
++
++    /* Trailing NUL */
++    length++;
++
++out:
++    return length;
++}
++
++void
++EnableLocalUser(void)
++{
++    char *addr = NULL;
++    int length = -1;
++
++    length = GetLocalUserAddr(&addr);
++
++    if (length == -1)
++        return;
++
++    NewHost(FamilyServerInterpreted, addr, length, TRUE);
++
++    free(addr);
++}
++
++void
++DisableLocalUser(void)
++{
++    char *addr = NULL;
++    int length = -1;
++
++    length = GetLocalUserAddr(&addr);
++
++    if (length == -1)
++        return;
++
++    RemoveHost(NULL, FamilyServerInterpreted, length, addr);
++
++    free(addr);
++}
++
++void
++LocalAccessScopeUser(void)
++{
++    LocalAccessScope = LOCAL_ACCESS_SCOPE_USER;
++}
++#endif
++
+ /*
+  * called at init time when XDMCP will be used; xdmcp always
+  * adds local hosts manually when needed
+diff --git a/os/auth.c b/os/auth.c
+index 5fcb538..7da6fc6 100644
+--- a/os/auth.c
++++ b/os/auth.c
+@@ -181,11 +181,11 @@ CheckAuthorization(unsigned int name_length,
+ 
+         /*
+          * If the authorization file has at least one entry for this server,
+-         * disable local host access. (loadauth > 0)
++         * disable local access. (loadauth > 0)
+          *
+          * If there are zero entries (either initially or when the
+          * authorization file is later reloaded), or if a valid
+-         * authorization file was never loaded, enable local host access.
++         * authorization file was never loaded, enable local access.
+          * (loadauth == 0 || !loaded)
+          *
+          * If the authorization file was loaded initially (with valid
+@@ -194,11 +194,11 @@ CheckAuthorization(unsigned int name_length,
+          */
+ 
+         if (loadauth > 0) {
+-            DisableLocalHost(); /* got at least one */
++            DisableLocalAccess(); /* got at least one */
+             loaded = TRUE;
+         }
+         else if (loadauth == 0 || !loaded)
+-            EnableLocalHost();
++            EnableLocalAccess();
+     }
+     if (name_length) {
+         for (i = 0; i < NUM_AUTHORIZATION; i++) {
+-- 
+cgit v0.10.2
+

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch
new file mode 100644
index 0000000..7e8f173
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch
@@ -0,0 +1,34 @@
+From 76636ac12f2d1dbdf7be08222f80e7505d53c451 Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Tue, 5 May 2015 16:43:44 -0400
+Subject: xwayland: default to local user if no xauth file given.
+ [CVE-2015-3164 3/3]
+
+Right now if "-auth" isn't passed on the command line, we let
+any user on the system connect to the Xwayland server.
+
+That's clearly suboptimal, given Xwayland is generally designed
+to be used by one user at a time.
+
+This commit changes the behavior, so only the user who started the
+X server can connect clients to it.
+
+Signed-off-by: Ray Strode <rstrode@redhat.com>
+Reviewed-by: Daniel Stone <daniels@collabora.com>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Signed-off-by: Keith Packard <keithp@keithp.com>
+
+diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
+index c5bee77..bc92beb 100644
+--- a/hw/xwayland/xwayland.c
++++ b/hw/xwayland/xwayland.c
+@@ -702,4 +702,6 @@ InitOutput(ScreenInfo * screen_info, int argc, char **argv)
+     if (AddScreen(xwl_screen_init, argc, argv) == -1) {
+         FatalError("Couldn't add screen\n");
+     }
++
++    LocalAccessScopeUser();
+ }
+-- 
+cgit v0.10.2
+

diff --git a/x11-base/xorg-server/xorg-server-1.16.4-r3.ebuild b/x11-base/xorg-server/xorg-server-1.16.4-r3.ebuild
new file mode 100644
index 0000000..58c70e0
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.16.4-r3.ebuild
@@ -0,0 +1,261 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/1.16.1"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-eselect/eselect-opengl-1.0.8
+	!>=app-eselect/eselect-opengl-1.3.0
+	dev-libs/openssl
+	media-libs/freetype
+	>=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.20
+	>=x11-libs/libpciaccess-0.12.901
+	>=x11-libs/libXau-1.0.4
+	>=x11-libs/libXdmcp-1.0.2
+	>=x11-libs/libXfont-1.4.2
+	>=x11-libs/libxkbfile-1.0.4
+	>=x11-libs/libxshmfence-1.1
+	>=x11-libs/pixman-0.27.2
+	>=x11-libs/xtrans-1.3.3
+	>=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
+		media-libs/mesa[egl,gbm]
+		!x11-libs/glamor
+	)
+	kdrive? (
+		>=x11-libs/libXext-1.0.5
+		x11-libs/libXv
+	)
+	!minimal? (
+		>=x11-libs/libX11-1.1.5
+		>=x11-libs/libXext-1.0.5
+		>=media-libs/mesa-9.2.0[nptl=]
+	)
+	tslib? ( >=x11-libs/tslib-1.0 )
+	udev? ( >=virtual/udev-150 )
+	unwind? ( sys-libs/libunwind )
+	wayland? (
+		>=dev-libs/wayland-1.3.0
+		media-libs/libepoxy
+	)
+	>=x11-apps/xinit-1.3
+	systemd? (
+		sys-apps/dbus
+		sys-apps/systemd
+	)"
+
+DEPEND="${CDEPEND}
+	sys-devel/flex
+	>=x11-proto/bigreqsproto-1.1.0
+	>=x11-proto/compositeproto-0.4
+	>=x11-proto/damageproto-1.1
+	>=x11-proto/fixesproto-5.0
+	>=x11-proto/fontsproto-2.1.3
+	>=x11-proto/glproto-1.4.17
+	>=x11-proto/inputproto-2.2.99.1
+	>=x11-proto/kbproto-1.0.3
+	>=x11-proto/randrproto-1.4.0
+	>=x11-proto/recordproto-1.13.99.1
+	>=x11-proto/renderproto-0.11
+	>=x11-proto/resourceproto-1.2.0
+	>=x11-proto/scrnsaverproto-1.1
+	>=x11-proto/trapproto-3.4.3
+	>=x11-proto/videoproto-2.2.2
+	>=x11-proto/xcmiscproto-1.2.0
+	>=x11-proto/xextproto-7.2.99.901
+	>=x11-proto/xf86dgaproto-2.0.99.1
+	>=x11-proto/xf86rushproto-1.1.2
+	>=x11-proto/xf86vidmodeproto-2.2.99.1
+	>=x11-proto/xineramaproto-1.1.3
+	>=x11-proto/xproto-7.0.26
+	>=x11-proto/presentproto-1.0
+	>=x11-proto/dri3proto-1.0
+	dmx? (
+		>=x11-proto/dmxproto-2.2.99.1
+		doc? (
+			|| (
+				www-client/links
+				www-client/lynx
+				www-client/w3m
+			)
+		)
+	)
+	!minimal? (
+		>=x11-proto/xf86driproto-2.1.0
+		>=x11-proto/dri2proto-2.8
+	)"
+
+RDEPEND="${CDEPEND}
+	selinux? ( sec-policy/selinux-xserver )
+"
+
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)"
+
+#UPSTREAMED_PATCHES=(
+#	"${WORKDIR}/patches/"
+#)
+
+PATCHES=(
+	"${UPSTREAMED_PATCHES[@]}"
+	"${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
+	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-1.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-2.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-3.patch
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+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
+	XORG_CONFIGURE_OPTIONS=(
+		$(use_enable ipv6)
+		$(use_enable dmx)
+		$(use_enable glamor)
+		$(use_enable kdrive)
+		$(use_enable kdrive kdrive-kbd)
+		$(use_enable kdrive kdrive-mouse)
+		$(use_enable kdrive kdrive-evdev)
+		$(use_enable suid install-setuid)
+		$(use_enable tslib)
+		$(use_enable unwind libunwind)
+		$(use_enable wayland xwayland)
+		$(use_enable !minimal record)
+		$(use_enable !minimal xfree86-utils)
+		$(use_enable !minimal install-libxf86config)
+		$(use_enable !minimal dri)
+		$(use_enable !minimal dri2)
+		$(use_enable !minimal glx)
+		$(use_enable xnest)
+		$(use_enable xorg)
+		$(use_enable xvfb)
+		$(use_enable nptl glx-tls)
+		$(use_enable udev config-udev)
+		$(use_with doc doxygen)
+		$(use_with doc xmlto)
+		$(use_with systemd systemd-daemon)
+		$(use_enable systemd systemd-logind)
+		--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
+	)
+
+	# Xorg-server requires includes from OS mesa which are not visible for
+	# users of binary drivers.
+	mkdir -p "${T}/mesa-symlinks/GL"
+	for i in gl glx glxmd glxproto glxtokens; do
+		ln -s "${EROOT}usr/$(get_libdir)/opengl/xorg-x11/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die
+	done
+	for i in glext glxext; do
+		ln -s "${EROOT}usr/$(get_libdir)/opengl/global/include/$i.h" "${T}/mesa-symlinks/GL/$i.h" || die
+	done
+	append-cppflags "-I${T}/mesa-symlinks"
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	dynamic_libgl_install
+
+	server_based_install
+
+	if ! use minimal &&	use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}
+
+dynamic_libgl_install() {
+	# next section is to setup the dynamic libGL stuff
+	ebegin "Moving GL files for dynamic switching"
+		dodir /usr/$(get_libdir)/opengl/xorg-x11/extensions
+		local x=""
+		for x in "${ED}"/usr/$(get_libdir)/xorg/modules/extensions/lib{glx,dri,dri2}*; do
+			if [ -f ${x} -o -L ${x} ]; then
+				mv -f ${x} "${ED}"/usr/$(get_libdir)/opengl/xorg-x11/extensions
+			fi
+		done
+	eend 0
+}
+
+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
+}

diff --git a/x11-base/xorg-server/xorg-server-1.16.4-r4.ebuild b/x11-base/xorg-server/xorg-server-1.16.4-r4.ebuild
new file mode 100644
index 0000000..1ec0222
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.16.4-r4.ebuild
@@ -0,0 +1,236 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/1.16.1"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-eselect/eselect-opengl-1.3.0
+	dev-libs/openssl
+	media-libs/freetype
+	>=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.20
+	>=x11-libs/libpciaccess-0.12.901
+	>=x11-libs/libXau-1.0.4
+	>=x11-libs/libXdmcp-1.0.2
+	>=x11-libs/libXfont-1.4.2
+	>=x11-libs/libxkbfile-1.0.4
+	>=x11-libs/libxshmfence-1.1
+	>=x11-libs/pixman-0.27.2
+	>=x11-libs/xtrans-1.3.3
+	>=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
+		>=media-libs/mesa-10.3.4-r1[egl,gbm]
+		!x11-libs/glamor
+	)
+	kdrive? (
+		>=x11-libs/libXext-1.0.5
+		x11-libs/libXv
+	)
+	!minimal? (
+		>=x11-libs/libX11-1.1.5
+		>=x11-libs/libXext-1.0.5
+		>=media-libs/mesa-10.3.4-r1[nptl=]
+	)
+	tslib? ( >=x11-libs/tslib-1.0 )
+	udev? ( >=virtual/udev-150 )
+	unwind? ( sys-libs/libunwind )
+	wayland? (
+		>=dev-libs/wayland-1.3.0
+		media-libs/libepoxy
+	)
+	>=x11-apps/xinit-1.3
+	systemd? (
+		sys-apps/dbus
+		sys-apps/systemd
+	)"
+
+DEPEND="${CDEPEND}
+	sys-devel/flex
+	>=x11-proto/bigreqsproto-1.1.0
+	>=x11-proto/compositeproto-0.4
+	>=x11-proto/damageproto-1.1
+	>=x11-proto/fixesproto-5.0
+	>=x11-proto/fontsproto-2.1.3
+	>=x11-proto/glproto-1.4.17-r1
+	>=x11-proto/inputproto-2.2.99.1
+	>=x11-proto/kbproto-1.0.3
+	>=x11-proto/randrproto-1.4.0
+	>=x11-proto/recordproto-1.13.99.1
+	>=x11-proto/renderproto-0.11
+	>=x11-proto/resourceproto-1.2.0
+	>=x11-proto/scrnsaverproto-1.1
+	>=x11-proto/trapproto-3.4.3
+	>=x11-proto/videoproto-2.2.2
+	>=x11-proto/xcmiscproto-1.2.0
+	>=x11-proto/xextproto-7.2.99.901
+	>=x11-proto/xf86dgaproto-2.0.99.1
+	>=x11-proto/xf86rushproto-1.1.2
+	>=x11-proto/xf86vidmodeproto-2.2.99.1
+	>=x11-proto/xineramaproto-1.1.3
+	>=x11-proto/xproto-7.0.26
+	>=x11-proto/presentproto-1.0
+	>=x11-proto/dri3proto-1.0
+	dmx? (
+		>=x11-proto/dmxproto-2.2.99.1
+		doc? (
+			|| (
+				www-client/links
+				www-client/lynx
+				www-client/w3m
+			)
+		)
+	)
+	!minimal? (
+		>=x11-proto/xf86driproto-2.1.0
+		>=x11-proto/dri2proto-2.8
+	)"
+
+RDEPEND="${CDEPEND}
+	selinux? ( sec-policy/selinux-xserver )
+"
+
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)"
+
+#UPSTREAMED_PATCHES=(
+#	"${WORKDIR}/patches/"
+#)
+
+PATCHES=(
+	"${UPSTREAMED_PATCHES[@]}"
+	"${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
+	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
+	# needed for new eselect-opengl, bug #541232
+	"${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-1.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-2.patch
+	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-3.patch
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+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
+	XORG_CONFIGURE_OPTIONS=(
+		$(use_enable ipv6)
+		$(use_enable dmx)
+		$(use_enable glamor)
+		$(use_enable kdrive)
+		$(use_enable kdrive kdrive-kbd)
+		$(use_enable kdrive kdrive-mouse)
+		$(use_enable kdrive kdrive-evdev)
+		$(use_enable suid install-setuid)
+		$(use_enable tslib)
+		$(use_enable unwind libunwind)
+		$(use_enable wayland xwayland)
+		$(use_enable !minimal record)
+		$(use_enable !minimal xfree86-utils)
+		$(use_enable !minimal install-libxf86config)
+		$(use_enable !minimal dri)
+		$(use_enable !minimal dri2)
+		$(use_enable !minimal glx)
+		$(use_enable xnest)
+		$(use_enable xorg)
+		$(use_enable xvfb)
+		$(use_enable nptl glx-tls)
+		$(use_enable udev config-udev)
+		$(use_with doc doxygen)
+		$(use_with doc xmlto)
+		$(use_with systemd systemd-daemon)
+		$(use_enable systemd systemd-logind)
+		--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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal &&	use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2016-01-23 14:17 Manuel Rüger
  0 siblings, 0 replies; 24+ messages in thread
From: Manuel Rüger @ 2016-01-23 14:17 UTC (permalink / raw
  To: gentoo-commits

commit:     5f4b088e9064b94d5da69c16075c1f02f6ec116d
Author:     Manuel Rüger <mrueg <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 23 14:16:06 2016 +0000
Commit:     Manuel Rüger <mrueg <AT> gentoo <DOT> org>
CommitDate: Sat Jan 23 14:16:06 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f4b088e

x11-base/xorg-server: Version bump. Thanks to Coacher

Changes compared to 1.17.4 ebuild:
- drop nptl USE as glx-tls configure option was dropped upstream
- drop install-libxf86config configure option as was done upstream
- update dep versions according to configure.ac
- drop ia64-fix_inx_outx patch as upstream macro now handles ia64
- update support-multiple-Files-sections patch to apply cleanly

Package-Manager: portage-2.2.27

 x11-base/xorg-server/Manifest                      |   1 +
 ...rver-1.18-support-multiple-Files-sections.patch |  53 +++++
 x11-base/xorg-server/xorg-server-1.18.0.ebuild     | 242 +++++++++++++++++++++
 3 files changed, 296 insertions(+)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index f26dfac..6c1c052 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -4,3 +4,4 @@ DIST xorg-server-1.15.2.tar.bz2 5551426 SHA256 3c0585607c654ded836da43a45a75492f
 DIST xorg-server-1.16-cve-2014-8091..8103.patches.tar.xz 27892 SHA256 47d8c9bb79c829389e7599aef1110d43afbc5bf744dbcf73d8f3cf01796d287a SHA512 f8b55c009166883b3e6ec2c8c7a2ff4ed61df6970afcc4f0efb9efa36741af194456a368d4b1c7ba9345ef973fb139a48eb50cb5a7ebc144b43749b9ffdb1f7b WHIRLPOOL 2f8b26c018f4ad4cf780ed7dcb0b844de64e7a612adc30c622d1956dfcee710086ffcc837ff0a64cdcc14d47720d82d8797374488bf0b52d77ca63adf6806885
 DIST xorg-server-1.16.4.tar.bz2 5817330 SHA256 abb6e1cc9213a9915a121f48576ff6739a0b8cdb3d32796f9a7743c9a6efc871 SHA512 f756fca65535aa921a85d8d8eb36ea2ba5b7af90a46d640b0ca76259a9abd9d323885087e11156528d95240937c70373045001ae20266a1b9e89909f007e9e74 WHIRLPOOL 63980a3e2b57d2860998344f21a6524598b3dc135c277e5a868e34b57ab5060681ae7137358b3ba8b9ca5fd622a91aeb06bd0ac9e3e5ce1f4dc55df2b2dc0e33
 DIST xorg-server-1.17.4.tar.bz2 5791384 SHA256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457 SHA512 4b8377b86ca88f27dcf59db2996b2ee620ce6f181a37dc47600365db588d48f2f3ca66a3149e7c856e686e5783b1cccb2ba0827aa7413299163dfca869f4d376 WHIRLPOOL c5baa1b01e57eac9e18bd1890c0a7e2246836524645057d5e05a1a19225d863645616aafaadbf9d083ffb672d47ea1934ad8323d813533e9519f0d92f9a1c6ab
+DIST xorg-server-1.18.0.tar.bz2 5818703 SHA256 195670819695d9cedd8dde95fbe069be0d0f488a77797a2d409f9f702daf312e SHA512 c7b1403e79e26ea96690f5634eb2fa424f9436a8a3c8a17779f71d254a813ae9b2ff1eb3dc8c6b4c37da125f3108ee86f6f5b1c27c1db6ab28eb6c8ee62e5768 WHIRLPOOL 439cfc2da70f3234facd4684e8ef5cea8b0b2d73251280de4a705bd31c2498df814c189f01ec057da3b810d994dc1e30e1faceec4b059ef428e137c8584450d9

diff --git a/x11-base/xorg-server/files/xorg-server-1.18-support-multiple-Files-sections.patch b/x11-base/xorg-server/files/xorg-server-1.18-support-multiple-Files-sections.patch
new file mode 100644
index 0000000..0a61145
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.18-support-multiple-Files-sections.patch
@@ -0,0 +1,53 @@
+See http://lists.x.org/archives/xorg-devel/2015-February/045755.html
+
+diff --git a/hw/xfree86/parser/Files.c b/hw/xfree86/parser/Files.c
+index 849bf92..5cc3ec7 100644
+--- a/hw/xfree86/parser/Files.c
++++ b/hw/xfree86/parser/Files.c
+@@ -76,14 +76,18 @@ static xf86ConfigSymTabRec FilesTab[] = {
+ #define CLEANUP xf86freeFiles
+ 
+ XF86ConfFilesPtr
+-xf86parseFilesSection(void)
++xf86parseFilesSection(XF86ConfFilesPtr ptr)
+ {
+     int i, j;
+     int k, l;
+     char *str;
+     int token;
+ 
+-    parsePrologue(XF86ConfFilesPtr, XF86ConfFilesRec)
++    if (!ptr) {
++	if( (ptr=calloc(1,sizeof(XF86ConfFilesRec))) == NULL ) {
++		return NULL;
++	}
++    }
+ 
+         while ((token = xf86getToken(FilesTab)) != ENDSECTION) {
+         switch (token) {
+diff --git a/hw/xfree86/parser/configProcs.h b/hw/xfree86/parser/configProcs.h
+index 171f8e8..e8199fe 100644
+--- a/hw/xfree86/parser/configProcs.h
++++ b/hw/xfree86/parser/configProcs.h
+@@ -36,7 +36,7 @@ void xf86freeDeviceList(XF86ConfDevicePtr ptr);
+ int xf86validateDevice(XF86ConfigPtr p);
+ 
+ /* Files.c */
+-XF86ConfFilesPtr xf86parseFilesSection(void);
++XF86ConfFilesPtr xf86parseFilesSection(XF86ConfFilesPtr ptr);
+ void xf86printFileSection(FILE * cf, XF86ConfFilesPtr ptr);
+ void xf86freeFiles(XF86ConfFilesPtr p);
+ 
+diff --git a/hw/xfree86/parser/read.c b/hw/xfree86/parser/read.c
+index 327c02a..e0d6139 100644
+--- a/hw/xfree86/parser/read.c
++++ b/hw/xfree86/parser/read.c
+@@ -110,7 +110,7 @@ xf86readConfigFile(void)
+             if (xf86nameCompare(xf86_lex_val.str, "files") == 0) {
+                 free(xf86_lex_val.str);
+                 xf86_lex_val.str = NULL;
+-                HANDLE_RETURN(conf_files, xf86parseFilesSection());
++                HANDLE_RETURN(conf_files, xf86parseFilesSection(ptr->conf_files));
+             }
+             else if (xf86nameCompare(xf86_lex_val.str, "serverflags") == 0) {
+                 free(xf86_lex_val.str);

diff --git a/x11-base/xorg-server/xorg-server-1.18.0.ebuild b/x11-base/xorg-server/xorg-server-1.18.0.ebuild
new file mode 100644
index 0000000..d222570
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.18.0.ebuild
@@ -0,0 +1,242 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="git://anongit.freedesktop.org/xorg/xserver"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} glamor ipv6 libressl minimal selinux +suid systemd tslib +udev unwind wayland"
+
+CDEPEND=">=app-eselect/eselect-opengl-1.3.0
+	!libressl? ( dev-libs/openssl:0 )
+	libressl? ( dev-libs/libressl )
+	media-libs/freetype
+	>=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.46
+	>=x11-libs/libpciaccess-0.12.901
+	>=x11-libs/libXau-1.0.4
+	>=x11-libs/libXdmcp-1.0.2
+	>=x11-libs/libXfont-1.4.2
+	>=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
+		>=media-libs/mesa-10.3.4-r1[egl,gbm]
+		!x11-libs/glamor
+	)
+	kdrive? (
+		>=x11-libs/libXext-1.0.5
+		x11-libs/libXv
+	)
+	xephyr? (
+		x11-libs/libxcb
+		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-10.3.4-r1
+	)
+	tslib? ( >=x11-libs/tslib-1.0 )
+	udev? ( >=virtual/udev-150 )
+	unwind? ( sys-libs/libunwind )
+	wayland? (
+		>=dev-libs/wayland-1.3.0
+		media-libs/libepoxy
+	)
+	>=x11-apps/xinit-1.3.3-r1
+	systemd? (
+		sys-apps/dbus
+		sys-apps/systemd
+	)"
+
+DEPEND="${CDEPEND}
+	sys-devel/flex
+	>=x11-proto/bigreqsproto-1.1.0
+	>=x11-proto/compositeproto-0.4
+	>=x11-proto/damageproto-1.1
+	>=x11-proto/fixesproto-5.0
+	>=x11-proto/fontsproto-2.1.3
+	>=x11-proto/glproto-1.4.17-r1
+	>=x11-proto/inputproto-2.3
+	>=x11-proto/kbproto-1.0.3
+	>=x11-proto/randrproto-1.5.0
+	>=x11-proto/recordproto-1.13.99.1
+	>=x11-proto/renderproto-0.11
+	>=x11-proto/resourceproto-1.2.0
+	>=x11-proto/scrnsaverproto-1.1
+	>=x11-proto/trapproto-3.4.3
+	>=x11-proto/videoproto-2.2.2
+	>=x11-proto/xcmiscproto-1.2.0
+	>=x11-proto/xextproto-7.2.99.901
+	>=x11-proto/xf86dgaproto-2.0.99.1
+	>=x11-proto/xf86rushproto-1.1.2
+	>=x11-proto/xf86vidmodeproto-2.2.99.1
+	>=x11-proto/xineramaproto-1.1.3
+	>=x11-proto/xproto-7.0.28
+	>=x11-proto/presentproto-1.0
+	>=x11-proto/dri3proto-1.0
+	dmx? (
+		>=x11-proto/dmxproto-2.2.99.1
+		doc? (
+			|| (
+				www-client/links
+				www-client/lynx
+				www-client/w3m
+			)
+		)
+	)
+	!minimal? (
+		>=x11-proto/xf86driproto-2.1.0
+		>=x11-proto/dri2proto-2.8
+	)"
+
+RDEPEND="${CDEPEND}
+	selinux? ( sec-policy/selinux-xserver )
+	!x11-drivers/xf86-video-modesetting
+"
+
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	xephyr? ( kdrive )"
+
+#UPSTREAMED_PATCHES=(
+#	"${WORKDIR}/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
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+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
+	XORG_CONFIGURE_OPTIONS=(
+		$(use_enable ipv6)
+		$(use_enable dmx)
+		$(use_enable glamor)
+		$(use_enable kdrive)
+		$(use_enable kdrive kdrive-kbd)
+		$(use_enable kdrive kdrive-mouse)
+		$(use_enable kdrive kdrive-evdev)
+		$(use_enable suid install-setuid)
+		$(use_enable tslib)
+		$(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 glx)
+		$(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)
+		--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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal && use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2016-12-28  1:35 Mike Frysinger
  0 siblings, 0 replies; 24+ messages in thread
From: Mike Frysinger @ 2016-12-28  1:35 UTC (permalink / raw
  To: gentoo-commits

commit:     f72578ff6ad21268181d6d860a276850a81393b1
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 28 01:33:50 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Wed Dec 28 01:33:50 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f72578ff

x11-base/xorg-server: fix build w/newer glibc #580044

 .../files/xorg-server-1.18-sysmacros.patch         | 59 ++++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.18.4.ebuild     |  1 +
 x11-base/xorg-server/xorg-server-1.19.0.ebuild     |  1 +
 3 files changed, 61 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch
new file mode 100644
index 00000000..5a3dea3
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch
@@ -0,0 +1,59 @@
+From 1df7e4f5c1090631ff6584176f7d1370d08bc15e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar@atlas.cz>
+Date: Sat, 16 Apr 2016 13:04:59 +0200
+Subject: [PATCH] Include sys/sysmacros.h for major(3)
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+GNU major(3) manual page prescribes <sys/types.h>, but that does not work with
+sys-libs/glibc-2.23-r1.
+
+https://bugs.gentoo.org/show_bug.cgi?id=580044
+Signed-off-by: Petr Písař <petr.pisar@atlas.cz>
+---
+ config/udev.c                          | 1 +
+ hw/xfree86/common/xf86Xinput.c         | 2 ++
+ hw/xfree86/os-support/linux/lnx_init.c | 1 +
+ 3 files changed, 4 insertions(+)
+
+diff --git a/config/udev.c b/config/udev.c
+index 28c2658..62908f4 100644
+--- a/config/udev.c
++++ b/config/udev.c
+@@ -30,6 +30,7 @@
+ #include <libudev.h>
+ #include <ctype.h>
+ #include <unistd.h>
++#include <sys/sysmacros.h>
+ 
+ #include "input.h"
+ #include "inputstr.h"
+diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
+index c56a2b9..d33c165 100644
+--- a/hw/xfree86/common/xf86Xinput.c
++++ b/hw/xfree86/common/xf86Xinput.c
+@@ -86,6 +86,8 @@
+ #include <unistd.h>
+ #ifdef HAVE_SYS_MKDEV_H
+ #include <sys/mkdev.h>          /* for major() & minor() on Solaris */
++#else
++#include <sys/sysmacros.h>
+ #endif
+ 
+ #include "mi.h"
+diff --git a/hw/xfree86/os-support/linux/lnx_init.c b/hw/xfree86/os-support/linux/lnx_init.c
+index 1ed213c..6caf531 100644
+--- a/hw/xfree86/os-support/linux/lnx_init.c
++++ b/hw/xfree86/os-support/linux/lnx_init.c
+@@ -38,6 +38,7 @@
+ #include "xf86_OSlib.h"
+ 
+ #include <sys/stat.h>
++#include <sys/sysmacros.h>
+ 
+ #ifndef K_OFF
+ #define K_OFF 0x4
+-- 
+2.8.1
+

diff --git a/x11-base/xorg-server/xorg-server-1.18.4.ebuild b/x11-base/xorg-server/xorg-server-1.18.4.ebuild
index 2c6bbb1..35971b9 100644
--- a/x11-base/xorg-server/xorg-server-1.18.4.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.18.4.ebuild
@@ -145,6 +145,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
 	# needed for new eselect-opengl, bug #541232
 	"${FILESDIR}"/${PN}-1.18-support-multiple-Files-sections.patch
+	"${FILESDIR}"/${PN}-1.18-sysmacros.patch #580044
 )
 
 pkg_pretend() {

diff --git a/x11-base/xorg-server/xorg-server-1.19.0.ebuild b/x11-base/xorg-server/xorg-server-1.19.0.ebuild
index 41d4b14..ad88bd3 100644
--- a/x11-base/xorg-server/xorg-server-1.19.0.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.19.0.ebuild
@@ -145,6 +145,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
 	# needed for new eselect-opengl, bug #541232
 	"${FILESDIR}"/${PN}-1.18-support-multiple-Files-sections.patch
+	"${FILESDIR}"/${PN}-1.18-sysmacros.patch #580044
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2017-02-25 20:43 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2017-02-25 20:43 UTC (permalink / raw
  To: gentoo-commits

commit:     06d95b1cb566c0ae19d145ee0f65ec3f8e2093ba
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 25 20:33:18 2017 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Feb 25 20:43:01 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06d95b1c

x11-base/xorg-server: Remove 1.16.4-r5.

Bug: https://bugs.gentoo.org/607096

 x11-base/xorg-server/Manifest                      |   1 -
 .../files/xorg-server-1.17-cve-2015-3164-1.patch   |  33 ---
 .../files/xorg-server-1.17-cve-2015-3164-2.patch   | 246 ---------------------
 .../files/xorg-server-1.17-cve-2015-3164-3.patch   |  34 ---
 x11-base/xorg-server/xorg-server-1.16.4-r5.ebuild  | 237 --------------------
 5 files changed, 551 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 61e76ed095..7aa7d5f51b 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -2,7 +2,6 @@ DIST xorg-server-1.12-cve-2014-8091..8103.patches.tar.xz 14832 SHA256 a98fd1589e
 DIST xorg-server-1.12.4.tar.bz2 5444761 SHA256 8ac07c35306ba3fb3c0972722dd4e919303039eca1d40ac7862560e0b2c94cf7 SHA512 70997e8ba4f948829c158e52924753c5691a783dd14e5a86fdce4fc601638dd4e0b281590876b0315a303bf8d5195bdf43ede7113d1d569415a41ab03d938d85 WHIRLPOOL bfee61329ca85ecedb991ca933de6e3a1e94e34a04d9a723a0e9c90a36e067824701c38e8a0034498ed28dfca82eb653d1e1ab5c0223020f5da69cbbf80bbf98
 DIST xorg-server-1.15.2.tar.bz2 5551426 SHA256 3c0585607c654ded836da43a45a75492fc13454ff4149704fb08dac39f051163 SHA512 5fcbf0012af309f80e1db206e05d7861796146d765cd17f3963fde6da7f43f0e57d63dbbdbf2c554612a557aa4dee623ef62f7ca7d007834aafd7a46ca7bb1d6 WHIRLPOOL 22cdbad68462f9bac32b13be958df496411ca72fe47435ec7e3ebb470b121ba4b4a0e023913f31a92113c5a56bc4be660dfec5086bc1fb72a617d2cdeaa8adf1
 DIST xorg-server-1.16-cve-2014-8091..8103.patches.tar.xz 27892 SHA256 47d8c9bb79c829389e7599aef1110d43afbc5bf744dbcf73d8f3cf01796d287a SHA512 f8b55c009166883b3e6ec2c8c7a2ff4ed61df6970afcc4f0efb9efa36741af194456a368d4b1c7ba9345ef973fb139a48eb50cb5a7ebc144b43749b9ffdb1f7b WHIRLPOOL 2f8b26c018f4ad4cf780ed7dcb0b844de64e7a612adc30c622d1956dfcee710086ffcc837ff0a64cdcc14d47720d82d8797374488bf0b52d77ca63adf6806885
-DIST xorg-server-1.16.4.tar.bz2 5817330 SHA256 abb6e1cc9213a9915a121f48576ff6739a0b8cdb3d32796f9a7743c9a6efc871 SHA512 f756fca65535aa921a85d8d8eb36ea2ba5b7af90a46d640b0ca76259a9abd9d323885087e11156528d95240937c70373045001ae20266a1b9e89909f007e9e74 WHIRLPOOL 63980a3e2b57d2860998344f21a6524598b3dc135c277e5a868e34b57ab5060681ae7137358b3ba8b9ca5fd622a91aeb06bd0ac9e3e5ce1f4dc55df2b2dc0e33
 DIST xorg-server-1.17.4.tar.bz2 5791384 SHA256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457 SHA512 4b8377b86ca88f27dcf59db2996b2ee620ce6f181a37dc47600365db588d48f2f3ca66a3149e7c856e686e5783b1cccb2ba0827aa7413299163dfca869f4d376 WHIRLPOOL c5baa1b01e57eac9e18bd1890c0a7e2246836524645057d5e05a1a19225d863645616aafaadbf9d083ffb672d47ea1934ad8323d813533e9519f0d92f9a1c6ab
 DIST xorg-server-1.18.4.tar.bz2 6009508 SHA256 278459b2c31d61a15655d95a72fb79930c480a6bb8cf9226e48a07df8b1d31c8 SHA512 2055948caa1437547ea823a70d8b24584b65338bb9f1bbf75e3ad7fd60ec9684378facaffa05b7ce496d904213cd192085a43ba889a1476d5fbc813b7e41b56b WHIRLPOOL f9ba5ffb49e6ac7ca20d64d27712a0a8f10c6560256a20e9f944d6438dc5f5eebe53daf6af110084da67a622e92874969047518e72ff181de0d64d83030d629f
 DIST xorg-server-1.19.1.tar.bz2 6041792 SHA256 79ae2cf39d3f6c4a91201d8dad549d1d774b3420073c5a70d390040aa965a7fb SHA512 37d413fdd96ce6b15ae20ca5028331498586044cfc7a6ab0acb99201b04063c69bcd06867f2dc33237b244ce2870a1c5a4be3cbe4560f2461894f46f8d5dbdd7 WHIRLPOOL 9fab4118e866e11a7742ba63d7f681490d43718a329416fb742e268fdf56f348bc9f1f2b5229fbaac98ce78f41fc1e9e5aa7587ee120fcccaba752ff4bac1555

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch
deleted file mode 100644
index a9f8030227..0000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-1.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From c4534a38b68aa07fb82318040dc8154fb48a9588 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Tue, 5 May 2015 16:43:42 -0400
-Subject: xwayland: Enable access control on open sockets [CVE-2015-3164 1/3]
-
-Xwayland currently allows wide-open access to the X sockets
-it listens on, ignoring Xauth access control.
-
-This commit makes sure to enable access control on the sockets,
-so one user can't snoop on another user's X-over-wayland
-applications.
-
-Signed-off-by: Ray Strode <rstrode@redhat.com>
-Reviewed-by: Daniel Stone <daniels@collabora.com>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Signed-off-by: Keith Packard <keithp@keithp.com>
-
-diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
-index 7e8d667..c5bee77 100644
---- a/hw/xwayland/xwayland.c
-+++ b/hw/xwayland/xwayland.c
-@@ -483,7 +483,7 @@ listen_on_fds(struct xwl_screen *xwl_screen)
-     int i;
- 
-     for (i = 0; i < xwl_screen->listen_fd_count; i++)
--        ListenOnOpenFD(xwl_screen->listen_fds[i], TRUE);
-+        ListenOnOpenFD(xwl_screen->listen_fds[i], FALSE);
- }
- 
- static void
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch
deleted file mode 100644
index 47b323f1ec..0000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-2.patch
+++ /dev/null
@@ -1,246 +0,0 @@
-From 4b4b9086d02b80549981d205fb1f495edc373538 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Tue, 5 May 2015 16:43:43 -0400
-Subject: os: support new implicit local user access mode [CVE-2015-3164 2/3]
-
-If the X server is started without a '-auth' argument, then
-it gets started wide open to all local users on the system.
-
-This isn't a great default access model, but changing it in
-Xorg at this point would break backward compatibility.
-
-Xwayland, on the other hand is new, and much more targeted
-in scope.  It could, in theory, be changed to allow the much
-more secure default of a "user who started X server can connect
-clients to that server."
-
-This commit paves the way for that change, by adding a mechanism
-for DDXs to opt-in to that behavior.  They merely need to call
-
-LocalAccessScopeUser()
-
-in their init functions.
-
-A subsequent commit will add that call for Xwayland.
-
-Signed-off-by: Ray Strode <rstrode@redhat.com>
-Reviewed-by: Daniel Stone <daniels@collabora.com>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Signed-off-by: Keith Packard <keithp@keithp.com>
-
-diff --git a/include/os.h b/include/os.h
-index 6638c84..b2b96c8 100644
---- a/include/os.h
-+++ b/include/os.h
-@@ -431,11 +431,28 @@ extern _X_EXPORT void
- ResetHosts(const char *display);
- 
- extern _X_EXPORT void
-+EnableLocalAccess(void);
-+
-+extern _X_EXPORT void
-+DisableLocalAccess(void);
-+
-+extern _X_EXPORT void
- EnableLocalHost(void);
- 
- extern _X_EXPORT void
- DisableLocalHost(void);
- 
-+#ifndef NO_LOCAL_CLIENT_CRED
-+extern _X_EXPORT void
-+EnableLocalUser(void);
-+
-+extern _X_EXPORT void
-+DisableLocalUser(void);
-+
-+extern _X_EXPORT void
-+LocalAccessScopeUser(void);
-+#endif
-+
- extern _X_EXPORT void
- AccessUsingXdmcp(void);
- 
-diff --git a/os/access.c b/os/access.c
-index 8fa028e..75e7a69 100644
---- a/os/access.c
-+++ b/os/access.c
-@@ -102,6 +102,10 @@ SOFTWARE.
- #include <sys/ioctl.h>
- #include <ctype.h>
- 
-+#ifndef NO_LOCAL_CLIENT_CRED
-+#include <pwd.h>
-+#endif
-+
- #if defined(TCPCONN) || defined(STREAMSCONN)
- #include <netinet/in.h>
- #endif                          /* TCPCONN || STREAMSCONN */
-@@ -225,6 +229,13 @@ static int LocalHostEnabled = FALSE;
- static int LocalHostRequested = FALSE;
- static int UsingXdmcp = FALSE;
- 
-+static enum {
-+    LOCAL_ACCESS_SCOPE_HOST = 0,
-+#ifndef NO_LOCAL_CLIENT_CRED
-+    LOCAL_ACCESS_SCOPE_USER,
-+#endif
-+} LocalAccessScope;
-+
- /* FamilyServerInterpreted implementation */
- static Bool siAddrMatch(int family, void *addr, int len, HOST * host,
-                         ClientPtr client);
-@@ -237,6 +248,21 @@ static void siTypesInitialize(void);
-  */
- 
- void
-+EnableLocalAccess(void)
-+{
-+    switch (LocalAccessScope) {
-+        case LOCAL_ACCESS_SCOPE_HOST:
-+            EnableLocalHost();
-+            break;
-+#ifndef NO_LOCAL_CLIENT_CRED
-+        case LOCAL_ACCESS_SCOPE_USER:
-+            EnableLocalUser();
-+            break;
-+#endif
-+    }
-+}
-+
-+void
- EnableLocalHost(void)
- {
-     if (!UsingXdmcp) {
-@@ -249,6 +275,21 @@ EnableLocalHost(void)
-  * called when authorization is enabled to keep us secure
-  */
- void
-+DisableLocalAccess(void)
-+{
-+    switch (LocalAccessScope) {
-+        case LOCAL_ACCESS_SCOPE_HOST:
-+            DisableLocalHost();
-+            break;
-+#ifndef NO_LOCAL_CLIENT_CRED
-+        case LOCAL_ACCESS_SCOPE_USER:
-+            DisableLocalUser();
-+            break;
-+#endif
-+    }
-+}
-+
-+void
- DisableLocalHost(void)
- {
-     HOST *self;
-@@ -262,6 +303,74 @@ DisableLocalHost(void)
-     }
- }
- 
-+#ifndef NO_LOCAL_CLIENT_CRED
-+static int GetLocalUserAddr(char **addr)
-+{
-+    static const char *type = "localuser";
-+    static const char delimiter = '\0';
-+    static const char *value;
-+    struct passwd *pw;
-+    int length = -1;
-+
-+    pw = getpwuid(getuid());
-+
-+    if (pw == NULL || pw->pw_name == NULL)
-+        goto out;
-+
-+    value = pw->pw_name;
-+
-+    length = asprintf(addr, "%s%c%s", type, delimiter, value);
-+
-+    if (length == -1) {
-+        goto out;
-+    }
-+
-+    /* Trailing NUL */
-+    length++;
-+
-+out:
-+    return length;
-+}
-+
-+void
-+EnableLocalUser(void)
-+{
-+    char *addr = NULL;
-+    int length = -1;
-+
-+    length = GetLocalUserAddr(&addr);
-+
-+    if (length == -1)
-+        return;
-+
-+    NewHost(FamilyServerInterpreted, addr, length, TRUE);
-+
-+    free(addr);
-+}
-+
-+void
-+DisableLocalUser(void)
-+{
-+    char *addr = NULL;
-+    int length = -1;
-+
-+    length = GetLocalUserAddr(&addr);
-+
-+    if (length == -1)
-+        return;
-+
-+    RemoveHost(NULL, FamilyServerInterpreted, length, addr);
-+
-+    free(addr);
-+}
-+
-+void
-+LocalAccessScopeUser(void)
-+{
-+    LocalAccessScope = LOCAL_ACCESS_SCOPE_USER;
-+}
-+#endif
-+
- /*
-  * called at init time when XDMCP will be used; xdmcp always
-  * adds local hosts manually when needed
-diff --git a/os/auth.c b/os/auth.c
-index 5fcb538..7da6fc6 100644
---- a/os/auth.c
-+++ b/os/auth.c
-@@ -181,11 +181,11 @@ CheckAuthorization(unsigned int name_length,
- 
-         /*
-          * If the authorization file has at least one entry for this server,
--         * disable local host access. (loadauth > 0)
-+         * disable local access. (loadauth > 0)
-          *
-          * If there are zero entries (either initially or when the
-          * authorization file is later reloaded), or if a valid
--         * authorization file was never loaded, enable local host access.
-+         * authorization file was never loaded, enable local access.
-          * (loadauth == 0 || !loaded)
-          *
-          * If the authorization file was loaded initially (with valid
-@@ -194,11 +194,11 @@ CheckAuthorization(unsigned int name_length,
-          */
- 
-         if (loadauth > 0) {
--            DisableLocalHost(); /* got at least one */
-+            DisableLocalAccess(); /* got at least one */
-             loaded = TRUE;
-         }
-         else if (loadauth == 0 || !loaded)
--            EnableLocalHost();
-+            EnableLocalAccess();
-     }
-     if (name_length) {
-         for (i = 0; i < NUM_AUTHORIZATION; i++) {
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch
deleted file mode 100644
index 7e8f173117..0000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-3164-3.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 76636ac12f2d1dbdf7be08222f80e7505d53c451 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode@redhat.com>
-Date: Tue, 5 May 2015 16:43:44 -0400
-Subject: xwayland: default to local user if no xauth file given.
- [CVE-2015-3164 3/3]
-
-Right now if "-auth" isn't passed on the command line, we let
-any user on the system connect to the Xwayland server.
-
-That's clearly suboptimal, given Xwayland is generally designed
-to be used by one user at a time.
-
-This commit changes the behavior, so only the user who started the
-X server can connect clients to it.
-
-Signed-off-by: Ray Strode <rstrode@redhat.com>
-Reviewed-by: Daniel Stone <daniels@collabora.com>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Signed-off-by: Keith Packard <keithp@keithp.com>
-
-diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
-index c5bee77..bc92beb 100644
---- a/hw/xwayland/xwayland.c
-+++ b/hw/xwayland/xwayland.c
-@@ -702,4 +702,6 @@ InitOutput(ScreenInfo * screen_info, int argc, char **argv)
-     if (AddScreen(xwl_screen_init, argc, argv) == -1) {
-         FatalError("Couldn't add screen\n");
-     }
-+
-+    LocalAccessScopeUser();
- }
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/xorg-server-1.16.4-r5.ebuild b/x11-base/xorg-server/xorg-server-1.16.4-r5.ebuild
deleted file mode 100644
index 4b776aece6..0000000000
--- a/x11-base/xorg-server/xorg-server-1.16.4-r5.ebuild
+++ /dev/null
@@ -1,237 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/1.16.1"
-KEYWORDS="~alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-
-IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} glamor ipv6 minimal nptl selinux +suid systemd tslib +udev unwind wayland"
-
-CDEPEND=">=app-eselect/eselect-opengl-1.3.0
-	dev-libs/openssl:0=
-	media-libs/freetype
-	>=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.20
-	>=x11-libs/libpciaccess-0.12.901
-	>=x11-libs/libXau-1.0.4
-	>=x11-libs/libXdmcp-1.0.2
-	>=x11-libs/libXfont-1.4.2
-	>=x11-libs/libxkbfile-1.0.4
-	>=x11-libs/libxshmfence-1.1
-	>=x11-libs/pixman-0.27.2
-	>=x11-libs/xtrans-1.3.3
-	>=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
-		>=media-libs/mesa-10.3.4-r1[egl,gbm]
-		!x11-libs/glamor
-	)
-	kdrive? (
-		>=x11-libs/libXext-1.0.5
-		x11-libs/libXv
-	)
-	!minimal? (
-		>=x11-libs/libX11-1.1.5
-		>=x11-libs/libXext-1.0.5
-		>=media-libs/mesa-10.3.4-r1[nptl=]
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	unwind? ( sys-libs/libunwind )
-	wayland? (
-		>=dev-libs/wayland-1.3.0
-		media-libs/libepoxy
-	)
-	>=x11-apps/xinit-1.3
-	systemd? (
-		sys-apps/dbus
-		<sys-apps/systemd-230
-	)"
-
-DEPEND="${CDEPEND}
-	sys-devel/flex
-	>=x11-proto/bigreqsproto-1.1.0
-	>=x11-proto/compositeproto-0.4
-	>=x11-proto/damageproto-1.1
-	>=x11-proto/fixesproto-5.0
-	>=x11-proto/fontsproto-2.1.3
-	>=x11-proto/glproto-1.4.17-r1
-	>=x11-proto/inputproto-2.2.99.1
-	>=x11-proto/kbproto-1.0.3
-	>=x11-proto/randrproto-1.4.0
-	>=x11-proto/recordproto-1.13.99.1
-	>=x11-proto/renderproto-0.11
-	>=x11-proto/resourceproto-1.2.0
-	>=x11-proto/scrnsaverproto-1.1
-	>=x11-proto/trapproto-3.4.3
-	>=x11-proto/videoproto-2.2.2
-	>=x11-proto/xcmiscproto-1.2.0
-	>=x11-proto/xextproto-7.2.99.901
-	>=x11-proto/xf86dgaproto-2.0.99.1
-	>=x11-proto/xf86rushproto-1.1.2
-	>=x11-proto/xf86vidmodeproto-2.2.99.1
-	>=x11-proto/xineramaproto-1.1.3
-	>=x11-proto/xproto-7.0.26
-	>=x11-proto/presentproto-1.0
-	>=x11-proto/dri3proto-1.0
-	dmx? (
-		>=x11-proto/dmxproto-2.2.99.1
-		doc? (
-			|| (
-				www-client/links
-				www-client/lynx
-				www-client/w3m
-			)
-		)
-	)
-	!minimal? (
-		>=x11-proto/xf86driproto-2.1.0
-		>=x11-proto/dri2proto-2.8
-	)"
-
-RDEPEND="${CDEPEND}
-	selinux? ( sec-policy/selinux-xserver )
-"
-
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)"
-
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/patches/"
-#)
-
-PATCHES=(
-	"${UPSTREAMED_PATCHES[@]}"
-	"${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
-	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
-	# needed for new eselect-opengl, bug #541232
-	"${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.patch
-	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-1.patch
-	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-2.patch
-	"${FILESDIR}"/${PN}-1.17-cve-2015-3164-3.patch
-	"${FILESDIR}"/${PN}-1.17.2-uninit-clientsWritable.patch
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-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
-	XORG_CONFIGURE_OPTIONS=(
-		$(use_enable ipv6)
-		$(use_enable dmx)
-		$(use_enable glamor)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable suid install-setuid)
-		$(use_enable tslib)
-		$(use_enable unwind libunwind)
-		$(use_enable wayland xwayland)
-		$(use_enable !minimal record)
-		$(use_enable !minimal xfree86-utils)
-		$(use_enable !minimal install-libxf86config)
-		$(use_enable !minimal dri)
-		$(use_enable !minimal dri2)
-		$(use_enable !minimal glx)
-		$(use_enable xnest)
-		$(use_enable xorg)
-		$(use_enable xvfb)
-		$(use_enable nptl glx-tls)
-		$(use_enable udev config-udev)
-		$(use_with doc doxygen)
-		$(use_with doc xmlto)
-		$(use_with systemd systemd-daemon)
-		$(use_enable systemd systemd-logind)
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal &&	use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2017-03-15 19:57 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2017-03-15 19:57 UTC (permalink / raw
  To: gentoo-commits

commit:     2aaa7b0cfe902499e05679aa0883328f0163432c
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Mar 15 19:55:59 2017 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Wed Mar 15 19:56:07 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2aaa7b0c

x11-base/xorg-server: Drop version 1.17.

Was only needed by the now removed x11-drivers/ati-drivers, and contains
security vulnerabilities (bug 611350).

 x11-base/xorg-server/Manifest                      |   1 -
 ...rver-1.17-support-multiple-Files-sections.patch |  65 ------
 x11-base/xorg-server/xorg-server-1.17.4.ebuild     | 246 ---------------------
 3 files changed, 312 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index cfb0ea5224f..3c6e294ec40 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -2,6 +2,5 @@ DIST xorg-server-1.12-cve-2014-8091..8103.patches.tar.xz 14832 SHA256 a98fd1589e
 DIST xorg-server-1.12.4.tar.bz2 5444761 SHA256 8ac07c35306ba3fb3c0972722dd4e919303039eca1d40ac7862560e0b2c94cf7 SHA512 70997e8ba4f948829c158e52924753c5691a783dd14e5a86fdce4fc601638dd4e0b281590876b0315a303bf8d5195bdf43ede7113d1d569415a41ab03d938d85 WHIRLPOOL bfee61329ca85ecedb991ca933de6e3a1e94e34a04d9a723a0e9c90a36e067824701c38e8a0034498ed28dfca82eb653d1e1ab5c0223020f5da69cbbf80bbf98
 DIST xorg-server-1.15.2.tar.bz2 5551426 SHA256 3c0585607c654ded836da43a45a75492fc13454ff4149704fb08dac39f051163 SHA512 5fcbf0012af309f80e1db206e05d7861796146d765cd17f3963fde6da7f43f0e57d63dbbdbf2c554612a557aa4dee623ef62f7ca7d007834aafd7a46ca7bb1d6 WHIRLPOOL 22cdbad68462f9bac32b13be958df496411ca72fe47435ec7e3ebb470b121ba4b4a0e023913f31a92113c5a56bc4be660dfec5086bc1fb72a617d2cdeaa8adf1
 DIST xorg-server-1.16-cve-2014-8091..8103.patches.tar.xz 27892 SHA256 47d8c9bb79c829389e7599aef1110d43afbc5bf744dbcf73d8f3cf01796d287a SHA512 f8b55c009166883b3e6ec2c8c7a2ff4ed61df6970afcc4f0efb9efa36741af194456a368d4b1c7ba9345ef973fb139a48eb50cb5a7ebc144b43749b9ffdb1f7b WHIRLPOOL 2f8b26c018f4ad4cf780ed7dcb0b844de64e7a612adc30c622d1956dfcee710086ffcc837ff0a64cdcc14d47720d82d8797374488bf0b52d77ca63adf6806885
-DIST xorg-server-1.17.4.tar.bz2 5791384 SHA256 0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457 SHA512 4b8377b86ca88f27dcf59db2996b2ee620ce6f181a37dc47600365db588d48f2f3ca66a3149e7c856e686e5783b1cccb2ba0827aa7413299163dfca869f4d376 WHIRLPOOL c5baa1b01e57eac9e18bd1890c0a7e2246836524645057d5e05a1a19225d863645616aafaadbf9d083ffb672d47ea1934ad8323d813533e9519f0d92f9a1c6ab
 DIST xorg-server-1.18.4.tar.bz2 6009508 SHA256 278459b2c31d61a15655d95a72fb79930c480a6bb8cf9226e48a07df8b1d31c8 SHA512 2055948caa1437547ea823a70d8b24584b65338bb9f1bbf75e3ad7fd60ec9684378facaffa05b7ce496d904213cd192085a43ba889a1476d5fbc813b7e41b56b WHIRLPOOL f9ba5ffb49e6ac7ca20d64d27712a0a8f10c6560256a20e9f944d6438dc5f5eebe53daf6af110084da67a622e92874969047518e72ff181de0d64d83030d629f
 DIST xorg-server-1.19.2.tar.bz2 5969543 SHA256 4f8ab9f4a1a885fe7550080555381b34b82858582559e8e3c4da96e3a85884bb SHA512 258c5d615efda28170bf0fd4a19e24fd2cefe086d5ef1aada7a407b8dc2ddaa7d74ad0245e0b13155a3e6d30c65fedf054326e191b6dfe800aae881664d63f16 WHIRLPOOL 6ffca7dc695d9551efecbf9061e40862a187f16afba113467640a506c7becdb2e37d7fe042cbfe08af8ba9f2e8f538fd50460ef46a34452796436de15fa463fd

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch b/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch
deleted file mode 100644
index 789a1182a3a..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-support-multiple-Files-sections.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From a140d7ce3f37f30b4fed27c5a70ebcc4ed13c612 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
-Date: Tue, 24 Feb 2015 12:57:24 +0100
-Subject: [PATCH] config: Support multiple 'Files' sections
-
----
- hw/xfree86/parser/Files.c       | 8 ++++++--
- hw/xfree86/parser/configProcs.h | 2 +-
- hw/xfree86/parser/read.c        | 2 +-
- 3 files changed, 8 insertions(+), 4 deletions(-)
-
-diff --git a/hw/xfree86/parser/Files.c b/hw/xfree86/parser/Files.c
-index 849bf92..5cc3ec7 100644
---- a/hw/xfree86/parser/Files.c
-+++ b/hw/xfree86/parser/Files.c
-@@ -76,14 +76,18 @@ static xf86ConfigSymTabRec FilesTab[] = {
- #define CLEANUP xf86freeFiles
- 
- XF86ConfFilesPtr
--xf86parseFilesSection(void)
-+xf86parseFilesSection(XF86ConfFilesPtr ptr)
- {
-     int i, j;
-     int k, l;
-     char *str;
-     int token;
- 
--    parsePrologue(XF86ConfFilesPtr, XF86ConfFilesRec)
-+    if (!ptr) {
-+	if( (ptr=calloc(1,sizeof(XF86ConfFilesRec))) == NULL ) {
-+		return NULL;
-+	}
-+    }
- 
-         while ((token = xf86getToken(FilesTab)) != ENDSECTION) {
-         switch (token) {
-diff --git a/hw/xfree86/parser/configProcs.h b/hw/xfree86/parser/configProcs.h
-index 774e2a2..b9fdebb 100644
---- a/hw/xfree86/parser/configProcs.h
-+++ b/hw/xfree86/parser/configProcs.h
-@@ -37,7 +37,7 @@ void xf86freeDeviceList(XF86ConfDevicePtr ptr);
- int xf86validateDevice(XF86ConfigPtr p);
- 
- /* Files.c */
--XF86ConfFilesPtr xf86parseFilesSection(void);
-+XF86ConfFilesPtr xf86parseFilesSection(XF86ConfFilesPtr ptr);
- void xf86printFileSection(FILE * cf, XF86ConfFilesPtr ptr);
- void xf86freeFiles(XF86ConfFilesPtr p);
- 
-diff --git a/hw/xfree86/parser/read.c b/hw/xfree86/parser/read.c
-index 327c02a..e0d6139 100644
---- a/hw/xfree86/parser/read.c
-+++ b/hw/xfree86/parser/read.c
-@@ -110,7 +110,7 @@ xf86readConfigFile(void)
-             if (xf86nameCompare(xf86_lex_val.str, "files") == 0) {
-                 free(xf86_lex_val.str);
-                 xf86_lex_val.str = NULL;
--                HANDLE_RETURN(conf_files, xf86parseFilesSection());
-+                HANDLE_RETURN(conf_files, xf86parseFilesSection(ptr->conf_files));
-             }
-             else if (xf86nameCompare(xf86_lex_val.str, "serverflags") == 0) {
-                 free(xf86_lex_val.str);
--- 
-2.3.0
-

diff --git a/x11-base/xorg-server/xorg-server-1.17.4.ebuild b/x11-base/xorg-server/xorg-server-1.17.4.ebuild
deleted file mode 100644
index 7336a535fde..00000000000
--- a/x11-base/xorg-server/xorg-server-1.17.4.ebuild
+++ /dev/null
@@ -1,246 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="git://anongit.freedesktop.org/git/xorg/xserver"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/${PV}"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-
-IUSE_SERVERS="dmx kdrive xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} glamor ipv6 libressl minimal nptl selinux +suid systemd tslib +udev unwind wayland"
-
-CDEPEND=">=app-eselect/eselect-opengl-1.3.0
-	!libressl? ( dev-libs/openssl:0= )
-	libressl? ( dev-libs/libressl )
-	>=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.46
-	>=x11-libs/libpciaccess-0.12.901
-	>=x11-libs/libXau-1.0.4
-	>=x11-libs/libXdmcp-1.0.2
-	>=x11-libs/libXfont-1.4.2
-	>=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
-		>=media-libs/mesa-10.3.4-r1[egl,gbm]
-		!x11-libs/glamor
-	)
-	kdrive? (
-		>=x11-libs/libXext-1.0.5
-		x11-libs/libXv
-	)
-	xephyr? (
-		x11-libs/libxcb
-		x11-libs/xcb-util
-		x11-libs/xcb-util-image
-		x11-libs/xcb-util-keysyms
-		x11-libs/xcb-util-renderutil
-		x11-libs/xcb-util-wm
-	)
-	xnest? (
-		x11-libs/xcb-util-keysyms
-	)
-	!minimal? (
-		>=x11-libs/libX11-1.1.5
-		>=x11-libs/libXext-1.0.5
-		>=media-libs/mesa-10.3.4-r1[nptl=]
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	unwind? ( sys-libs/libunwind )
-	wayland? (
-		>=dev-libs/wayland-1.3.0
-		media-libs/libepoxy
-	)
-	>=x11-apps/xinit-1.3.3-r1
-	systemd? (
-		sys-apps/dbus
-		<sys-apps/systemd-230
-	)"
-
-DEPEND="${CDEPEND}
-	sys-devel/flex
-	>=x11-proto/bigreqsproto-1.1.0
-	>=x11-proto/compositeproto-0.4
-	>=x11-proto/damageproto-1.1
-	>=x11-proto/fixesproto-5.0
-	>=x11-proto/fontsproto-2.1.3
-	>=x11-proto/glproto-1.4.17-r1
-	>=x11-proto/inputproto-2.2.99.1
-	>=x11-proto/kbproto-1.0.3
-	>=x11-proto/randrproto-1.4.0
-	>=x11-proto/recordproto-1.13.99.1
-	>=x11-proto/renderproto-0.11
-	>=x11-proto/resourceproto-1.2.0
-	>=x11-proto/scrnsaverproto-1.1
-	>=x11-proto/trapproto-3.4.3
-	>=x11-proto/videoproto-2.2.2
-	>=x11-proto/xcmiscproto-1.2.0
-	>=x11-proto/xextproto-7.2.99.901
-	>=x11-proto/xf86dgaproto-2.0.99.1
-	>=x11-proto/xf86rushproto-1.1.2
-	>=x11-proto/xf86vidmodeproto-2.2.99.1
-	>=x11-proto/xineramaproto-1.1.3
-	>=x11-proto/xproto-7.0.26
-	>=x11-proto/presentproto-1.0
-	>=x11-proto/dri3proto-1.0
-	dmx? (
-		>=x11-proto/dmxproto-2.2.99.1
-		doc? (
-			|| (
-				www-client/links
-				www-client/lynx
-				www-client/w3m
-			)
-		)
-	)
-	!minimal? (
-		>=x11-proto/xf86driproto-2.1.0
-		>=x11-proto/dri2proto-2.8
-	)"
-
-RDEPEND="${CDEPEND}
-	selinux? ( sec-policy/selinux-xserver )
-	!x11-drivers/xf86-video-modesetting
-"
-
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	xephyr? ( kdrive )"
-
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/patches/"
-#)
-
-PATCHES=(
-	"${UPSTREAMED_PATCHES[@]}"
-	"${FILESDIR}"/${PN}-1.17-ia64-fix_inx_outx.patch
-	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
-	# needed for new eselect-opengl, bug #541232
-	"${FILESDIR}"/${PN}-1.17-support-multiple-Files-sections.patch
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-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
-	XORG_CONFIGURE_OPTIONS=(
-		$(use_enable ipv6)
-		$(use_enable dmx)
-		$(use_enable glamor)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable suid install-setuid)
-		$(use_enable tslib)
-		$(use_enable unwind libunwind)
-		$(use_enable wayland xwayland)
-		$(use_enable !minimal record)
-		$(use_enable !minimal xfree86-utils)
-		$(use_enable !minimal install-libxf86config)
-		$(use_enable !minimal dri)
-		$(use_enable !minimal dri2)
-		$(use_enable !minimal glx)
-		$(use_enable xephyr)
-		$(use_enable xnest)
-		$(use_enable xorg)
-		$(use_enable xvfb)
-		$(use_enable nptl glx-tls)
-		$(use_enable udev config-udev)
-		$(use_with doc doxygen)
-		$(use_with doc xmlto)
-		$(use_with systemd systemd-daemon)
-		$(use_enable systemd systemd-logind)
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal &&	use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2017-10-11 21:53 Mart Raudsepp
  0 siblings, 0 replies; 24+ messages in thread
From: Mart Raudsepp @ 2017-10-11 21:53 UTC (permalink / raw
  To: gentoo-commits

commit:     6f03b7d078f9f8b855ec61c802e5b64edb11f599
Author:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 11 21:48:06 2017 +0000
Commit:     Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Wed Oct 11 21:51:54 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f03b7d0

x11-base/xorg-server: restore still necessary part of sysmacros patch for 1.19.4

Closes: https://bugs.gentoo.org/633530
Package-Manager: Portage-2.3.8, Repoman-2.3.2

 .../files/xorg-server-1.19.4-sysmacros.patch       | 36 ++++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.19.4.ebuild     |  1 +
 2 files changed, 37 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
new file mode 100644
index 00000000000..8a3cb769292
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
@@ -0,0 +1,36 @@
+From 7d097c0c38ab82115a1e56489bfe09f9f01b24de Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 11 Oct 2017 16:11:49 +0300
+Subject: [PATCH] config/udev: Add sys/sysmacros.h include for major/minor
+ functions for new glibc
+
+Commits d732c36597fa and 84e3b96b5313 added the include to some files, but
+missed config/udev.c, where the major and minor functions are used as well.
+This should be Linux-only, so we don't need the sys/mkdev.h case here for
+Solaris.
+
+Signed-off-by: Mart Raudsepp <leio@gentoo.org>
+---
+https://bugs.gentoo.org/633530
+https://patchwork.freedesktop.org/patch/181800/
+
+ config/udev.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/config/udev.c b/config/udev.c
+index 932f230..b3b8d0f 100644
+--- a/config/udev.c
++++ b/config/udev.c
+@@ -30,6 +30,9 @@
+ #include <libudev.h>
+ #include <ctype.h>
+ #include <unistd.h>
++#ifdef HAVE_SYS_SYSMACROS_H
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include "input.h"
+ #include "inputstr.h"
+-- 
+2.10.2
+

diff --git a/x11-base/xorg-server/xorg-server-1.19.4.ebuild b/x11-base/xorg-server/xorg-server-1.19.4.ebuild
index bf4762405c4..0a04c061087 100644
--- a/x11-base/xorg-server/xorg-server-1.19.4.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.19.4.ebuild
@@ -144,6 +144,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
 	# needed for new eselect-opengl, bug #541232
 	"${FILESDIR}"/${PN}-1.18-support-multiple-Files-sections.patch
+	"${FILESDIR}"/${P}-sysmacros.patch #633530
 )
 
 pkg_pretend() {


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2017-11-23  5:11 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2017-11-23  5:11 UTC (permalink / raw
  To: gentoo-commits

commit:     bc62a23618028a4a4c7d0a94ac8531a03fe3f3e8
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 03:12:27 2017 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 03:16:14 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc62a236

x11-base/xorg-server: Drop old versions

These were only in the tree for old versions of the nvidia-drivers,
which were removed in commit 075b72245180.

 x11-base/xorg-server/Manifest                      |   6 +-
 x11-base/xorg-server/files/xdm.initd-9             | 215 -------------------
 .../files/xorg-server-1.12-cve-2013-1940.patch     |  34 ---
 .../files/xorg-server-1.12-cve-2013-4396.patch     |  75 -------
 .../files/xorg-server-1.12-cve-2015-3418.patch     |  29 ---
 .../files/xorg-server-1.12-disable-acpi.patch      |  11 -
 .../files/xorg-server-1.12-ia64-fix_inx_outx.patch |  60 ------
 .../files/xorg-server-1.17-cve-2015-0255-0.patch   | 102 ---------
 .../files/xorg-server-1.17-cve-2015-0255-1.patch   | 138 ------------
 ...xorg-server-1.17.2-uninit-clientsWritable.patch |  65 ------
 .../files/xorg-server-1.18-sysmacros.patch         |  59 ------
 x11-base/xorg-server/xorg-server-1.12.4-r7.ebuild  | 225 --------------------
 x11-base/xorg-server/xorg-server-1.15.2-r4.ebuild  | 233 ---------------------
 13 files changed, 1 insertion(+), 1251 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 76e64eb035d..3c7db008745 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,5 +1 @@
-DIST xorg-server-1.12-cve-2014-8091..8103.patches.tar.xz 14832 SHA256 a98fd1589ef92d6f8a633326d387f2f203df72452788a6aaa2bcd4242700fe7f SHA512 2ac18d36cd8b6d9fcaf98a32e3e6b9107e420476e066a4ac9581f12e9afb7e397614761373a20d96c8fa840886b81ee0ec5cfc812e16876b4922bf6c5fe3f736 WHIRLPOOL 5c3ddd654fdecf3285d865b4b864bcaa3de87cd6005f8d500da4250b5b659db69e103743109ec3c72cb79abf24910b6de4ac05c0a7b7bcb2656d5a95c9703d38
-DIST xorg-server-1.12.4.tar.bz2 5444761 SHA256 8ac07c35306ba3fb3c0972722dd4e919303039eca1d40ac7862560e0b2c94cf7 SHA512 70997e8ba4f948829c158e52924753c5691a783dd14e5a86fdce4fc601638dd4e0b281590876b0315a303bf8d5195bdf43ede7113d1d569415a41ab03d938d85 WHIRLPOOL bfee61329ca85ecedb991ca933de6e3a1e94e34a04d9a723a0e9c90a36e067824701c38e8a0034498ed28dfca82eb653d1e1ab5c0223020f5da69cbbf80bbf98
-DIST xorg-server-1.15.2.tar.bz2 5551426 SHA256 3c0585607c654ded836da43a45a75492fc13454ff4149704fb08dac39f051163 SHA512 5fcbf0012af309f80e1db206e05d7861796146d765cd17f3963fde6da7f43f0e57d63dbbdbf2c554612a557aa4dee623ef62f7ca7d007834aafd7a46ca7bb1d6 WHIRLPOOL 22cdbad68462f9bac32b13be958df496411ca72fe47435ec7e3ebb470b121ba4b4a0e023913f31a92113c5a56bc4be660dfec5086bc1fb72a617d2cdeaa8adf1
-DIST xorg-server-1.16-cve-2014-8091..8103.patches.tar.xz 27892 SHA256 47d8c9bb79c829389e7599aef1110d43afbc5bf744dbcf73d8f3cf01796d287a SHA512 f8b55c009166883b3e6ec2c8c7a2ff4ed61df6970afcc4f0efb9efa36741af194456a368d4b1c7ba9345ef973fb139a48eb50cb5a7ebc144b43749b9ffdb1f7b WHIRLPOOL 2f8b26c018f4ad4cf780ed7dcb0b844de64e7a612adc30c622d1956dfcee710086ffcc837ff0a64cdcc14d47720d82d8797374488bf0b52d77ca63adf6806885
-DIST xorg-server-1.19.5.tar.bz2 5965044 SHA256 18fffa8eb93d06d2800d06321fc0df4d357684d8d714315a66d8dfa7df251447 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c WHIRLPOOL 01039d524a876ba6bd72713993b1d4d6e21f8ba53536ee3189dce9cc7186010e143754fa708d2ccf10905dd272bc68b14c63f4322548e041dfc23cf00e4c364e
+DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c

diff --git a/x11-base/xorg-server/files/xdm.initd-9 b/x11-base/xorg-server/files/xdm.initd-9
deleted file mode 100644
index d6e20a6dd73..00000000000
--- a/x11-base/xorg-server/files/xdm.initd-9
+++ /dev/null
@@ -1,215 +0,0 @@
-#!/sbin/openrc-run
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License, v2
-
-# This is here to serve as a note to myself, and future developers.
-#
-# Any Display manager (gdm,kdm,xdm) has the following problem:  if
-# it is started before any getty, and no vt is specified, it will
-# usually run on vt2.  When the getty on vt2 then starts, and the
-# DM is already started, the getty will take control of the keyboard,
-# leaving us with a "dead" keyboard.
-#
-# Resolution: add the following line to /etc/inittab
-#
-#  x:a:once:/etc/X11/startDM.sh
-#
-# and have /etc/X11/startDM.sh start the DM in daemon mode if
-# a lock is present (with the info of what DM should be started),
-# else just fall through.
-#
-# How this basically works, is the "a" runlevel is a additional
-# runlevel that you can use to fork processes with init, but the
-# runlevel never gets changed to this runlevel.  Along with the "a"
-# runlevel, the "once" key word means that startDM.sh will only be
-# run when we specify it to run, thus eliminating respawning
-# startDM.sh when "xdm" is not added to the default runlevel, as was
-# done previously.
-#
-# This script then just calls "telinit a", and init will run
-# /etc/X11/startDM.sh after the current runlevel completes (this
-# script should only be added to the actual runlevel the user is
-# using).
-#
-# Martin Schlemmer
-# aka Azarah
-# 04 March 2002
-
-depend() {
-	need localmount xdm-setup
-
-	# this should start as early as possible
-	# we can't do 'before *' as that breaks it
-	# (#139824) Start after ypbind and autofs for network authentication
-	# (#145219 #180163) Could use lirc mouse as input device
-	# (#70689 comment #92) Start after consolefont to avoid display corruption
-	# (#291269) Start after quota, since some dm need readable home
-	# (#390609) gdm-3 will fail when dbus is not running
-	# (#366753) starting keymaps after X causes problems
-	after bootmisc consolefont modules netmount
-	after readahead-list ypbind autofs openvpn gpm lircmd
-	after quota keymaps
-	before alsasound
-
-	# Start before X
-	use consolekit dbus xfs
-}
-
-setup_dm() {
-	local MY_XDM
-	
-	MY_XDM=$(echo "${DISPLAYMANAGER}" | tr '[:upper:]' '[:lower:]')
-
-	# Load our root path from profile.env
-	# Needed for kdm
-	PATH=${PATH}:$(. /etc/profile.env; echo "${ROOTPATH}")
-
-	NAME=
-	case "${MY_XDM}" in
-		kdm|kde)
-			EXE=/usr/bin/kdm
-			PIDFILE=/var/run/kdm.pid
-			;;
-		entrance*)
-			EXE=/usr/sbin/entrance
-			PIDFILE=/var/run/entrance.pid
-			;;
-		gdm|gnome)
-			EXE=/usr/bin/gdm
-			[ "${RC_UNAME}" != "Linux" ] && NAME=gdm-binary
-			PIDFILE=/var/run/gdm.pid
-			;;
-		wdm)
-			EXE=/usr/bin/wdm
-			PIDFILE=
-			;;
-		gpe)
-			EXE=/usr/bin/gpe-dm
-			PIDFILE=/var/run/gpe-dm.pid
-			;;
-		lxdm)
-			EXE=/usr/sbin/lxdm-binary
-			PIDFILE=/var/run/lxdm.pid
-			START_STOP_ARGS="--background"
-			;;
-		lightdm)
-			EXE=/usr/sbin/lightdm
-			PIDFILE=/var/run/lightdm.pid
-			START_STOP_ARGS="--background"
-			;;
-		*)
-			# first find out if there is such executable
-			EXE="$(command -v ${MY_XDM} 2>/dev/null)"
-			PIDFILE="/var/run/${MY_XDM}.pid"
-
-			# warn user that he is doing sick things if the exe was not found
-			if [ -z "${EXE}" ]; then
-				echo "ERROR: Your XDM value is invalid."
-				echo "  No ${MY_XDM} executable could be found on your system."
-			fi
-			;;
-	esac
-
-	if ! [ -x "${EXE}" ]; then
-		EXE=/usr/bin/xdm
-		PIDFILE=/var/run/xdm.pid
-		if ! [ -x "/usr/bin/xdm" ]; then
-			echo "ERROR: Please set your DISPLAYMANAGER variable in /etc/conf.d/xdm,"
-			echo "	or install x11-apps/xdm package"
-			eend 255
-		fi
-	fi
-}
-
-# Check to see if something is defined on our VT
-vtstatic() {
-	if [ -e /etc/inittab ] ; then
-		grep -Eq "^[^#]+.*\<tty$1\>" /etc/inittab
-	elif [ -e /etc/ttys ] ; then
-		grep -q "^ttyv$(($1 - 1))" /etc/ttys
-	else
-		return 1
-	fi
-}
-
-start() {
-	local EXE NAME PIDFILE
-	setup_dm
-
-	if [ -f /etc/.noxdm ]; then
-		einfo "Skipping ${EXE##*/}, /etc/.noxdm found or \"nox\" bootparam passed."
-		rm /etc/.noxdm
-		return 0
-	fi
-
-	ebegin "Setting up ${EXE##*/}"
-
-	# save the prefered DM
-	save_options "service" "${EXE}"
-	save_options "name"    "${NAME}"
-	save_options "pidfile" "${PIDFILE}"
-	save_options "start_stop_args" "${START_STOP_ARGS}"
-
-	if [ -n "${CHECKVT-y}" ] ; then
-		if vtstatic "${CHECKVT:-7}" ; then
-			if [ -x /sbin/telinit ] && [ "${SOFTLEVEL}" != "BOOT" ] && [ "${RC_SOFTLEVEL}" != "BOOT" ]; then
-				ewarn "Something is already defined on VT ${CHECKVT:-7}, will start X later"
-				telinit a >/dev/null 2>&1
-				return 0
-			else
-				eerror "Something is already defined on VT ${CHECKVT:-7}, not starting"
-				return 1
-			fi
-		fi
-	fi
-
-	/etc/X11/startDM.sh
-	eend 0
-}
-
-stop() {
-	local curvt retval
-
-	retval=0
-	if [ -t 0 ]; then
-		if type fgconsole >/dev/null 2>&1; then
-			curvt=$(fgconsole 2>/dev/null)
-		else
-			curvt=$(tty)
-			case "${curvt}" in
-				/dev/ttyv[0-9]*) curvt=${curvt#/dev/ttyv} ;;
-				*) curvt= ;;
-			esac
-		fi
-	fi
-	local myexe myname mypidfile myservice
-	myexe=$(get_options "service")
-	myname=$(get_options "name")
-	mypidfile=$(get_options "pidfile")
-	myservice=${myexe##*/}
-
-	[ -z "${myexe}" ] && return 0
-
-	ebegin "Stopping ${myservice}"
-
-	if start-stop-daemon --quiet --test --stop --exec "${myexe}"; then
-		start-stop-daemon --stop --exec "${myexe}" --retry TERM/5/TERM/5 \
-			${mypidfile:+--pidfile} ${mypidfile} \
-			${myname:+--name} ${myname}
-		retval=${?}
-	fi
-
-	# switch back to original vt
-	if [ -n "${curvt}" ]; then
-		if type chvt >/dev/null 2>&1; then
-			chvt "${curvt}"
-		else
-			vidcontrol -s "$((curvt + 1))"
-		fi
-	fi
-
-	eend ${retval} "Error stopping ${myservice}"
-	return ${retval}
-}
-
-# vim: set ts=4 :

diff --git a/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-1940.patch b/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-1940.patch
deleted file mode 100644
index d85494f9029..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-1940.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6ca03b9161d33b1d2b55a3a1a913cf88deb2343f Mon Sep 17 00:00:00 2001
-From: Dave Airlie <airlied@gmail.com>
-Date: Wed, 10 Apr 2013 06:09:01 +0000
-Subject: xf86: fix flush input to work with Linux evdev devices.
-
-So when we VT switch back and attempt to flush the input devices,
-we don't succeed because evdev won't return part of an event,
-since we were only asking for 4 bytes, we'd only get -EINVAL back.
-
-This could later cause events to be flushed that we shouldn't have
-gotten.
-
-This is a fix for CVE-2013-1940.
-
-Signed-off-by: Dave Airlie <airlied@redhat.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
----
-diff --git a/hw/xfree86/os-support/shared/posix_tty.c b/hw/xfree86/os-support/shared/posix_tty.c
-index ab3757a..4d08c1e 100644
---- a/hw/xfree86/os-support/shared/posix_tty.c
-+++ b/hw/xfree86/os-support/shared/posix_tty.c
-@@ -421,7 +421,8 @@ xf86FlushInput(int fd)
- {
-     fd_set fds;
-     struct timeval timeout;
--    char c[4];
-+    /* this needs to be big enough to flush an evdev event. */
-+    char c[256];
- 
-     DebugF("FlushingSerial\n");
-     if (tcflush(fd, TCIFLUSH) == 0)
---
-cgit v0.9.0.2-2-gbebe

diff --git a/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-4396.patch b/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-4396.patch
deleted file mode 100644
index 4b6727e61c0..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.12-cve-2013-4396.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 7bddc2ba16a2a15773c2ea8947059afa27727764 Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date: Mon, 16 Sep 2013 21:47:16 -0700
-Subject: [PATCH] Avoid use-after-free in dix/dixfonts.c: doImageText()
- [CVE-2013-4396]
-
-Save a pointer to the passed in closure structure before copying it
-and overwriting the *c pointer to point to our copy instead of the
-original.  If we hit an error, once we free(c), reset c to point to
-the original structure before jumping to the cleanup code that
-references *c.
-
-Since one of the errors being checked for is whether the server was
-able to malloc(c->nChars * itemSize), the client can potentially pass
-a number of characters chosen to cause the malloc to fail and the
-error path to be taken, resulting in the read from freed memory.
-
-Since the memory is accessed almost immediately afterwards, and the
-X server is mostly single threaded, the odds of the free memory having
-invalid contents are low with most malloc implementations when not using
-memory debugging features, but some allocators will definitely overwrite
-the memory there, leading to a likely crash.
-
-Reported-by: Pedro Ribeiro <pedrib@gmail.com>
-Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Reviewed-by: Julien Cristau <jcristau@debian.org>
----
- dix/dixfonts.c |    5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/dix/dixfonts.c b/dix/dixfonts.c
-index feb765d..2e34d37 100644
---- a/dix/dixfonts.c
-+++ b/dix/dixfonts.c
-@@ -1425,6 +1425,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
-             GC *pGC;
-             unsigned char *data;
-             ITclosurePtr new_closure;
-+            ITclosurePtr old_closure;
- 
-             /* We're putting the client to sleep.  We need to
-                save some state.  Similar problem to that handled
-@@ -1436,12 +1437,14 @@ doImageText(ClientPtr client, ITclosurePtr c)
-                 err = BadAlloc;
-                 goto bail;
-             }
-+            old_closure = c;
-             *new_closure = *c;
-             c = new_closure;
- 
-             data = malloc(c->nChars * itemSize);
-             if (!data) {
-                 free(c);
-+                c = old_closure;
-                 err = BadAlloc;
-                 goto bail;
-             }
-@@ -1452,6 +1455,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
-             if (!pGC) {
-                 free(c->data);
-                 free(c);
-+                c = old_closure;
-                 err = BadAlloc;
-                 goto bail;
-             }
-@@ -1464,6 +1468,7 @@ doImageText(ClientPtr client, ITclosurePtr c)
-                 FreeScratchGC(pGC);
-                 free(c->data);
-                 free(c);
-+                c = old_closure;
-                 err = BadAlloc;
-                 goto bail;
-             }
--- 
-1.7.9.2

diff --git a/x11-base/xorg-server/files/xorg-server-1.12-cve-2015-3418.patch b/x11-base/xorg-server/files/xorg-server-1.12-cve-2015-3418.patch
deleted file mode 100644
index 4b6a6aeab29..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.12-cve-2015-3418.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From dc777c346d5d452a53b13b917c45f6a1bad2f20b Mon Sep 17 00:00:00 2001
-From: Keith Packard <keithp@keithp.com>
-Date: Sat, 3 Jan 2015 08:46:45 -0800
-Subject: dix: Allow zero-height PutImage requests
-
-The length checking code validates PutImage height and byte width by
-making sure that byte-width >= INT32_MAX / height. If height is zero,
-this generates a divide by zero exception. Allow zero height requests
-explicitly, bypassing the INT32_MAX check.
-
-Signed-off-by: Keith Packard <keithp@keithp.com>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-
-diff --git a/dix/dispatch.c b/dix/dispatch.c
-index 55b978d..9044ac7 100644
---- a/dix/dispatch.c
-+++ b/dix/dispatch.c
-@@ -2000,7 +2000,7 @@ ProcPutImage(ClientPtr client)
-     tmpImage = (char *) &stuff[1];
-     lengthProto = length;
- 
--    if (lengthProto >= (INT32_MAX / stuff->height))
-+    if (stuff->height != 0 && lengthProto >= (INT32_MAX / stuff->height))
-         return BadLength;
- 
-     if ((bytes_to_int32(lengthProto * stuff->height) +
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch b/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch
deleted file mode 100644
index df43dbde828..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.12-disable-acpi.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff -ur a/configure.ac b/configure.ac
---- a/configure.ac	2011-10-31 19:40:02.000000000 +0100
-+++ b/configure.ac	2011-10-31 19:41:02.372745481 +0100
-@@ -1624,7 +1624,6 @@
- 		  	linux_alpha=yes
- 			;;
- 		  i*86|amd64*|x86_64*|ia64*)
--			linux_acpi="yes"
- 			;;
- 		  *)
- 			;;

diff --git a/x11-base/xorg-server/files/xorg-server-1.12-ia64-fix_inx_outx.patch b/x11-base/xorg-server/files/xorg-server-1.12-ia64-fix_inx_outx.patch
deleted file mode 100644
index 24a5a02f4fd..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.12-ia64-fix_inx_outx.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff -r --context xorg-server-1.12.3/hw/xfree86/common/compiler.h xorg-server-1.12.3-fix/hw/xfree86/common/compiler.h
-*** xorg-server-1.12.3/hw/xfree86/common/compiler.h	2012-07-06 07:17:19.000000000 +0200
---- xorg-server-1.12.3-fix/hw/xfree86/common/compiler.h	2012-08-29 00:14:39.000000000 +0200
-***************
-*** 421,426 ****
---- 421,474 ----
-  #include <machine/pio.h>
-  #endif                          /* __NetBSD__ */
-  
-+ #elif defined(linux) && defined(__ia64__)
-+ /* for Linux on ia64, we use the LIBC _inx/_outx routines */
-+ /* note that the appropriate setup via "ioperm" needs to be done */
-+ /*  *before* any inx/outx is done. */
-+ 
-+ extern _X_EXPORT void _outb(unsigned char val, unsigned long port);
-+ extern _X_EXPORT void _outw(unsigned short val, unsigned long port);
-+ extern _X_EXPORT void _outl(unsigned int val, unsigned long port);
-+ extern _X_EXPORT unsigned int _inb(unsigned long port);
-+ extern _X_EXPORT unsigned int _inw(unsigned long port);
-+ extern _X_EXPORT unsigned int _inl(unsigned long port);
-+ 
-+ static __inline__ void
-+ outb(unsigned long port, unsigned char val)
-+ {
-+     _outb(val, port);
-+ }
-+ 
-+ static __inline__ void
-+ outw(unsigned long port, unsigned short val)
-+ {
-+     _outw(val, port);
-+ }
-+ 
-+ static __inline__ void
-+ outl(unsigned long port, unsigned int val)
-+ {
-+     _outl(val, port);
-+ }
-+ 
-+ static __inline__ unsigned int
-+ inb(unsigned long port)
-+ {
-+     return _inb(port);
-+ }
-+ 
-+ static __inline__ unsigned int
-+ inw(unsigned long port)
-+ {
-+     return _inw(port);
-+ }
-+ 
-+ static __inline__ unsigned int
-+ inl(unsigned long port)
-+ {
-+     return _inl(port);
-+ }
-+ 
-  #elif (defined(linux) || defined(__FreeBSD__)) && defined(__amd64__)
-  
-  #include <inttypes.h>

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch
deleted file mode 100644
index 9540e31694e..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-0.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From 81c90dc8f0aae3b65730409b1b615b5fa7280ebd Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Fri, 16 Jan 2015 20:08:59 +0100
-Subject: xkb: Don't swap XkbSetGeometry data in the input buffer
-
-The XkbSetGeometry request embeds data which needs to be swapped when the
-server and the client have different endianess.
-
-_XkbSetGeometry() invokes functions that swap these data directly in the
-input buffer.
-
-However, ProcXkbSetGeometry() may call _XkbSetGeometry() more than once
-(if there is more than one keyboard), thus causing on swapped clients the
-same data to be swapped twice in memory, further causing a server crash
-because the strings lengths on the second time are way off bounds.
-
-To allow _XkbSetGeometry() to run reliably more than once with swapped
-clients, do not swap the data in the buffer, use variables instead.
-
-Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
-diff --git a/xkb/xkb.c b/xkb/xkb.c
-index 15c7f34..b9a3ac4 100644
---- a/xkb/xkb.c
-+++ b/xkb/xkb.c
-@@ -4961,14 +4961,13 @@ static char *
- _GetCountedString(char **wire_inout, Bool swap)
- {
-     char *wire, *str;
--    CARD16 len, *plen;
-+    CARD16 len;
- 
-     wire = *wire_inout;
--    plen = (CARD16 *) wire;
-+    len = *(CARD16 *) wire;
-     if (swap) {
--        swaps(plen);
-+        swaps(&len);
-     }
--    len = *plen;
-     str = malloc(len + 1);
-     if (str) {
-         memcpy(str, &wire[2], len);
-@@ -4985,25 +4984,28 @@ _CheckSetDoodad(char **wire_inout,
- {
-     char *wire;
-     xkbDoodadWireDesc *dWire;
-+    xkbAnyDoodadWireDesc any;
-+    xkbTextDoodadWireDesc text;
-     XkbDoodadPtr doodad;
- 
-     dWire = (xkbDoodadWireDesc *) (*wire_inout);
-+    any = dWire->any;
-     wire = (char *) &dWire[1];
-     if (client->swapped) {
--        swapl(&dWire->any.name);
--        swaps(&dWire->any.top);
--        swaps(&dWire->any.left);
--        swaps(&dWire->any.angle);
-+        swapl(&any.name);
-+        swaps(&any.top);
-+        swaps(&any.left);
-+        swaps(&any.angle);
-     }
-     CHK_ATOM_ONLY(dWire->any.name);
--    doodad = XkbAddGeomDoodad(geom, section, dWire->any.name);
-+    doodad = XkbAddGeomDoodad(geom, section, any.name);
-     if (!doodad)
-         return BadAlloc;
-     doodad->any.type = dWire->any.type;
-     doodad->any.priority = dWire->any.priority;
--    doodad->any.top = dWire->any.top;
--    doodad->any.left = dWire->any.left;
--    doodad->any.angle = dWire->any.angle;
-+    doodad->any.top = any.top;
-+    doodad->any.left = any.left;
-+    doodad->any.angle = any.angle;
-     switch (doodad->any.type) {
-     case XkbOutlineDoodad:
-     case XkbSolidDoodad:
-@@ -5026,12 +5028,13 @@ _CheckSetDoodad(char **wire_inout,
-                                               dWire->text.colorNdx);
-             return BadMatch;
-         }
-+        text = dWire->text;
-         if (client->swapped) {
--            swaps(&dWire->text.width);
--            swaps(&dWire->text.height);
-+            swaps(&text.width);
-+            swaps(&text.height);
-         }
--        doodad->text.width = dWire->text.width;
--        doodad->text.height = dWire->text.height;
-+        doodad->text.width = text.width;
-+        doodad->text.height = text.height;
-         doodad->text.color_ndx = dWire->text.colorNdx;
-         doodad->text.text = _GetCountedString(&wire, client->swapped);
-         doodad->text.font = _GetCountedString(&wire, client->swapped);
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch b/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch
deleted file mode 100644
index be131c2762f..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17-cve-2015-0255-1.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 20079c36cf7d377938ca5478447d8b9045cb7d43 Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Fri, 16 Jan 2015 08:44:45 +0100
-Subject: xkb: Check strings length against request size
-
-Ensure that the given strings length in an XkbSetGeometry request remain
-within the limits of the size of the request.
-
-Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
-Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
-diff --git a/xkb/xkb.c b/xkb/xkb.c
-index b9a3ac4..f3988f9 100644
---- a/xkb/xkb.c
-+++ b/xkb/xkb.c
-@@ -4957,25 +4957,29 @@ ProcXkbGetGeometry(ClientPtr client)
- 
- /***====================================================================***/
- 
--static char *
--_GetCountedString(char **wire_inout, Bool swap)
-+static Status
-+_GetCountedString(char **wire_inout, ClientPtr client, char **str)
- {
--    char *wire, *str;
-+    char *wire, *next;
-     CARD16 len;
- 
-     wire = *wire_inout;
-     len = *(CARD16 *) wire;
--    if (swap) {
-+    if (client->swapped) {
-         swaps(&len);
-     }
--    str = malloc(len + 1);
--    if (str) {
--        memcpy(str, &wire[2], len);
--        str[len] = '\0';
--    }
--    wire += XkbPaddedSize(len + 2);
--    *wire_inout = wire;
--    return str;
-+    next = wire + XkbPaddedSize(len + 2);
-+    /* Check we're still within the size of the request */
-+    if (client->req_len <
-+        bytes_to_int32(next - (char *) client->requestBuffer))
-+        return BadValue;
-+    *str = malloc(len + 1);
-+    if (!*str)
-+        return BadAlloc;
-+    memcpy(*str, &wire[2], len);
-+    *(*str + len) = '\0';
-+    *wire_inout = next;
-+    return Success;
- }
- 
- static Status
-@@ -4987,6 +4991,7 @@ _CheckSetDoodad(char **wire_inout,
-     xkbAnyDoodadWireDesc any;
-     xkbTextDoodadWireDesc text;
-     XkbDoodadPtr doodad;
-+    Status status;
- 
-     dWire = (xkbDoodadWireDesc *) (*wire_inout);
-     any = dWire->any;
-@@ -5036,8 +5041,14 @@ _CheckSetDoodad(char **wire_inout,
-         doodad->text.width = text.width;
-         doodad->text.height = text.height;
-         doodad->text.color_ndx = dWire->text.colorNdx;
--        doodad->text.text = _GetCountedString(&wire, client->swapped);
--        doodad->text.font = _GetCountedString(&wire, client->swapped);
-+        status = _GetCountedString(&wire, client, &doodad->text.text);
-+        if (status != Success)
-+            return status;
-+        status = _GetCountedString(&wire, client, &doodad->text.font);
-+        if (status != Success) {
-+            free (doodad->text.text);
-+            return status;
-+        }
-         break;
-     case XkbIndicatorDoodad:
-         if (dWire->indicator.onColorNdx >= geom->num_colors) {
-@@ -5072,7 +5083,9 @@ _CheckSetDoodad(char **wire_inout,
-         }
-         doodad->logo.color_ndx = dWire->logo.colorNdx;
-         doodad->logo.shape_ndx = dWire->logo.shapeNdx;
--        doodad->logo.logo_name = _GetCountedString(&wire, client->swapped);
-+        status = _GetCountedString(&wire, client, &doodad->logo.logo_name);
-+        if (status != Success)
-+            return status;
-         break;
-     default:
-         client->errorValue = _XkbErrCode2(0x4F, dWire->any.type);
-@@ -5304,18 +5317,20 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
-     char *wire;
- 
-     wire = (char *) &req[1];
--    geom->label_font = _GetCountedString(&wire, client->swapped);
-+    status = _GetCountedString(&wire, client, &geom->label_font);
-+    if (status != Success)
-+        return status;
- 
-     for (i = 0; i < req->nProperties; i++) {
-         char *name, *val;
- 
--        name = _GetCountedString(&wire, client->swapped);
--        if (!name)
--            return BadAlloc;
--        val = _GetCountedString(&wire, client->swapped);
--        if (!val) {
-+        status = _GetCountedString(&wire, client, &name);
-+        if (status != Success)
-+            return status;
-+        status = _GetCountedString(&wire, client, &val);
-+        if (status != Success) {
-             free(name);
--            return BadAlloc;
-+            return status;
-         }
-         if (XkbAddGeomProperty(geom, name, val) == NULL) {
-             free(name);
-@@ -5349,9 +5364,9 @@ _CheckSetGeom(XkbGeometryPtr geom, xkbSetGeometryReq * req, ClientPtr client)
-     for (i = 0; i < req->nColors; i++) {
-         char *name;
- 
--        name = _GetCountedString(&wire, client->swapped);
--        if (!name)
--            return BadAlloc;
-+        status = _GetCountedString(&wire, client, &name);
-+        if (status != Success)
-+            return status;
-         if (!XkbAddGeomColor(geom, name, geom->num_colors)) {
-             free(name);
-             return BadAlloc;
--- 
-cgit v0.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch b/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch
deleted file mode 100644
index 681819619eb..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.17.2-uninit-clientsWritable.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-https://bugs.gentoo.org/show_bug.cgi?id=555776
-
-From 7cc7ffd25d5e50b54cb942d07d4cb160f20ff9c5 Mon Sep 17 00:00:00 2001
-From: Martin Peres <martin.peres@linux.intel.com>
-Date: Fri, 17 Jul 2015 17:21:26 +0300
-Subject: [PATCH] os: make sure the clientsWritable fd_set is initialized
- before use
-
-In WaitForSomething(), the fd_set clientsWritable may be used unitialized when
-the boolean AnyClientsWriteBlocked is set in the WakeupHandler(). This leads to
-a crash in FlushAllOutput() after x11proto's commit
-2c94cdb453bc641246cc8b9a876da9799bee1ce7.
-
-The problem did not manifest before because both the XFD_SIZE and the maximum
-number of clients were set to 256. As the connectionTranslation table was
-initalized for the 256 clients to 0, the test on the index not being 0 was
-aborting before dereferencing the client #0.
-
-As of commit 2c94cdb453bc641246cc8b9a876da9799bee1ce7 in x11proto, the XFD_SIZE
-got bumped to 512. This lead the OutputPending fd_set to have any fd above 256
-to be uninitialized which in turns lead to reading an index after the end of
-the ConnectionTranslation table. This index would then be used to find the
-client corresponding to the fd marked as pending writes and would also result
-to an out-of-bound access which would usually be the fatal one.
-
-Fix this by zeroing the clientsWritable fd_set at the beginning of
-WaitForSomething(). In this case, the bottom part of the loop, which would
-indirectly call FlushAllOutput, will not do any work but the next call to
-select will result in the execution of the right codepath. This is exactly what
-we want because we need to know the writable clients before handling them. In
-the end, it also makes sure that the fds above MaxClient are initialized,
-preventing the crash in FlushAllOutput().
-
-Thanks to everyone involved in tracking this one down!
-
-Reported-by: Karol Herbst <freedesktop@karolherbst.de>
-Reported-by: Tobias Klausmann <tobias.klausmann@mni.thm.de>
-Signed-off-by: Martin Peres <martin.peres@linux.intel.com>
-Tested-by: Martin Peres <martin.peres@linux.intel.com>
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91316
-Cc: Ilia Mirkin  <imirkin@alum.mit.edu>
-Cc: Martin Peres <martin.peres@linux.intel.com>
-Cc: Olivier Fourdan <ofourdan@redhat.com
-Cc: Adam Jackson <ajax@redhat.com>
-Cc: Alan Coopersmith <alan.coopersmith@oracle.com
-Cc: Chris Wilson <chris@chris-wilson.co.uk>
----
- os/WaitFor.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/os/WaitFor.c b/os/WaitFor.c
-index 431f1a6..993c14e 100644
---- a/os/WaitFor.c
-+++ b/os/WaitFor.c
-@@ -158,6 +158,7 @@ WaitForSomething(int *pClientsReady)
-     Bool someReady = FALSE;
- 
-     FD_ZERO(&clientsReadable);
-+    FD_ZERO(&clientsWritable);
- 
-     if (nready)
-         SmartScheduleStopTimer();
--- 
-2.4.5
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch
deleted file mode 100644
index 5a3dea36612..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.18-sysmacros.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 1df7e4f5c1090631ff6584176f7d1370d08bc15e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <petr.pisar@atlas.cz>
-Date: Sat, 16 Apr 2016 13:04:59 +0200
-Subject: [PATCH] Include sys/sysmacros.h for major(3)
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-GNU major(3) manual page prescribes <sys/types.h>, but that does not work with
-sys-libs/glibc-2.23-r1.
-
-https://bugs.gentoo.org/show_bug.cgi?id=580044
-Signed-off-by: Petr Písař <petr.pisar@atlas.cz>
----
- config/udev.c                          | 1 +
- hw/xfree86/common/xf86Xinput.c         | 2 ++
- hw/xfree86/os-support/linux/lnx_init.c | 1 +
- 3 files changed, 4 insertions(+)
-
-diff --git a/config/udev.c b/config/udev.c
-index 28c2658..62908f4 100644
---- a/config/udev.c
-+++ b/config/udev.c
-@@ -30,6 +30,7 @@
- #include <libudev.h>
- #include <ctype.h>
- #include <unistd.h>
-+#include <sys/sysmacros.h>
- 
- #include "input.h"
- #include "inputstr.h"
-diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
-index c56a2b9..d33c165 100644
---- a/hw/xfree86/common/xf86Xinput.c
-+++ b/hw/xfree86/common/xf86Xinput.c
-@@ -86,6 +86,8 @@
- #include <unistd.h>
- #ifdef HAVE_SYS_MKDEV_H
- #include <sys/mkdev.h>          /* for major() & minor() on Solaris */
-+#else
-+#include <sys/sysmacros.h>
- #endif
- 
- #include "mi.h"
-diff --git a/hw/xfree86/os-support/linux/lnx_init.c b/hw/xfree86/os-support/linux/lnx_init.c
-index 1ed213c..6caf531 100644
---- a/hw/xfree86/os-support/linux/lnx_init.c
-+++ b/hw/xfree86/os-support/linux/lnx_init.c
-@@ -38,6 +38,7 @@
- #include "xf86_OSlib.h"
- 
- #include <sys/stat.h>
-+#include <sys/sysmacros.h>
- 
- #ifndef K_OFF
- #define K_OFF 0x4
--- 
-2.8.1
-

diff --git a/x11-base/xorg-server/xorg-server-1.12.4-r7.ebuild b/x11-base/xorg-server/xorg-server-1.12.4-r7.ebuild
deleted file mode 100644
index 3948af492ea..00000000000
--- a/x11-base/xorg-server/xorg-server-1.12.4-r7.ebuild
+++ /dev/null
@@ -1,225 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-
-SRC_URI="${SRC_URI} mirror://gentoo/${PN}-1.12-cve-2014-8091..8103.patches.tar.xz"
-
-IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} ipv6 minimal nptl selinux tslib +udev"
-
-RDEPEND=">=app-eselect/eselect-opengl-1.3.0
-	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/libpciaccess-0.12.901
-	>=x11-libs/libXau-1.0.4
-	>=x11-libs/libXdmcp-1.0.2
-	>=x11-libs/libXfont-1.4.2
-	<x11-libs/libXfont-1.5.0
-	>=x11-libs/libxkbfile-1.0.4
-	>=x11-libs/pixman-0.21.8
-	>=x11-libs/xtrans-1.2.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
-	)
-	!minimal? (
-		>=x11-libs/libX11-1.1.5
-		>=x11-libs/libXext-1.0.5
-		>=media-libs/mesa-10.3.7-r2[nptl=]
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	>=x11-apps/xinit-1.3
-	selinux? ( sec-policy/selinux-xserver )"
-
-DEPEND="${RDEPEND}
-	sys-devel/flex
-	>=x11-proto/bigreqsproto-1.1.0
-	>=x11-proto/compositeproto-0.4
-	>=x11-proto/damageproto-1.1
-	>=x11-proto/fixesproto-5.0
-	>=x11-proto/fontsproto-2.0.2
-	<x11-proto/fontsproto-2.1.3
-	>=x11-proto/glproto-1.4.17-r1
-	>=x11-proto/inputproto-2.1.99.3
-	>=x11-proto/kbproto-1.0.3
-	>=x11-proto/randrproto-1.2.99.3
-	>=x11-proto/recordproto-1.13.99.1
-	>=x11-proto/renderproto-0.11
-	>=x11-proto/resourceproto-1.0.2
-	>=x11-proto/scrnsaverproto-1.1
-	>=x11-proto/trapproto-3.4.3
-	>=x11-proto/videoproto-2.2.2
-	>=x11-proto/xcmiscproto-1.2.0
-	>=x11-proto/xextproto-7.1.99
-	>=x11-proto/xf86dgaproto-2.0.99.1
-	>=x11-proto/xf86rushproto-1.1.2
-	>=x11-proto/xf86vidmodeproto-2.2.99.1
-	>=x11-proto/xineramaproto-1.1.3
-	>=x11-proto/xproto-7.0.22
-	dmx? (
-		>=x11-proto/dmxproto-2.2.99.1
-		doc? (
-			|| (
-				www-client/links
-				www-client/lynx
-				www-client/w3m
-			)
-		)
-	)
-	!minimal? (
-		>=x11-proto/xf86driproto-2.1.0
-		>=x11-proto/dri2proto-2.6
-		>=x11-libs/libdrm-2.4.20
-	)"
-
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)"
-
-# Security patches taken from Debian from their 1.12 package
-UPSTREAMED_PATCHES=(
-	"${WORKDIR}"/patches/${PN}-1.12-cve-2014-8091..8103.patch
-)
-
-PATCHES=(
-	"${UPSTREAMED_PATCHES[@]}"
-	"${FILESDIR}"/${PN}-1.12-disable-acpi.patch
-	"${FILESDIR}"/${PN}-1.12-cve-2013-1940.patch
-	"${FILESDIR}"/${PN}-1.12-cve-2013-4396.patch
-	"${FILESDIR}"/${PN}-1.17-cve-2015-0255-0.patch
-	"${FILESDIR}"/${PN}-1.17-cve-2015-0255-1.patch
-	"${FILESDIR}"/${PN}-1.12-cve-2015-3418.patch
-	"${FILESDIR}"/${PN}-1.17.2-uninit-clientsWritable.patch
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 wont work for xorg-server."
-}
-
-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
-	#	--enable-install-setuid needed because sparcs default off
-	# 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 dmx)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable tslib)
-		$(use_enable !minimal record)
-		$(use_enable !minimal xfree86-utils)
-		$(use_enable !minimal install-libxf86config)
-		$(use_enable !minimal dri)
-		$(use_enable !minimal dri2)
-		$(use_enable !minimal glx)
-		$(use_enable xnest)
-		$(use_enable xorg)
-		$(use_enable xvfb)
-		$(use_enable nptl glx-tls)
-		$(use_enable udev config-udev)
-		$(use_with doc doxygen)
-		$(use_with doc xmlto)
-		--sysconfdir=/etc/X11
-		--localstatedir=/var
-		--enable-install-setuid
-		--with-fontrootdir=/usr/share/fonts
-		--with-xkb-output=/var/lib/xkb
-		--disable-config-hal
-		--without-dtrace
-		--without-fop
-		--with-os-vendor=Gentoo
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal &&	use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/hw/xfree86/xorg.conf.example
-	fi
-
-	newinitd "${FILESDIR}"/xdm-setup.initd-1 xdm-setup
-	newinitd "${FILESDIR}"/xdm.initd-9 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
-}
-
-pkg_postinst() {
-	# sets up libGL and DRI2 symlinks if needed (ie, on a fresh install)
-	eselect opengl set xorg-x11 --use-old
-
-	if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then
-		ewarn "You must rebuild all drivers if upgrading from <xorg-server-$(get_version_component_range 1-2)"
-		ewarn "because the ABI changed. If you cannot start X because"
-		ewarn "of module version mismatch errors, this is your problem."
-
-		echo
-		ewarn "You can generate a list of all installed packages in the x11-drivers"
-		ewarn "category using this command:"
-		ewarn "	emerge portage-utils; qlist -I -C x11-drivers/"
-		ewarn "or using sets from portage-2.2:"
-		ewarn "	emerge @x11-module-rebuild"
-	fi
-}
-
-pkg_postrm() {
-	# Get rid of module dir to ensure opengl-update works properly
-	if [[ -z ${REPLACED_BY_VERSION} && -e ${ROOT}/usr/$(get_libdir)/xorg/modules ]]; then
-		rm -rf "${ROOT}"/usr/$(get_libdir)/xorg/modules
-	fi
-}
-
-server_based_install() {
-	if ! use xorg; then
-		rm "${D}"/usr/share/man/man1/Xserver.1x \
-			"${D}"/usr/$(get_libdir)/xserver/SecurityPolicy \
-			"${D}"/usr/$(get_libdir)/pkgconfig/xorg-server.pc \
-			"${D}"/usr/share/man/man1/Xserver.1x
-	fi
-}

diff --git a/x11-base/xorg-server/xorg-server-1.15.2-r4.ebuild b/x11-base/xorg-server/xorg-server-1.15.2-r4.ebuild
deleted file mode 100644
index 9ba84cb401c..00000000000
--- a/x11-base/xorg-server/xorg-server-1.15.2-r4.ebuild
+++ /dev/null
@@ -1,233 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_EAUTORECONF=yes
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-
-SRC_URI="${SRC_URI} mirror://gentoo/${PN}-1.16-cve-2014-8091..8103.patches.tar.xz"
-
-IUSE_SERVERS="dmx kdrive xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} ipv6 minimal nptl selinux +suid tslib +udev unwind"
-
-CDEPEND=">=app-eselect/eselect-opengl-1.3.0
-	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.20
-	>=x11-libs/libpciaccess-0.12.901
-	>=x11-libs/libXau-1.0.4
-	>=x11-libs/libXdmcp-1.0.2
-	>=x11-libs/libXfont-1.4.2
-	<x11-libs/libXfont-1.5.0
-	>=x11-libs/libxkbfile-1.0.4
-	>=x11-libs/libxshmfence-1.1
-	>=x11-libs/pixman-0.27.2
-	>=x11-libs/xtrans-1.3.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
-	)
-	!minimal? (
-		>=x11-libs/libX11-1.1.5
-		>=x11-libs/libXext-1.0.5
-		>=media-libs/mesa-10.3.7-r2[nptl=]
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	unwind? ( sys-libs/libunwind )
-	>=x11-apps/xinit-1.3"
-
-DEPEND="${CDEPEND}
-	sys-devel/flex
-	>=x11-proto/bigreqsproto-1.1.0
-	>=x11-proto/compositeproto-0.4
-	>=x11-proto/damageproto-1.1
-	>=x11-proto/fixesproto-5.0
-	>=x11-proto/fontsproto-2.0.2
-	<x11-proto/fontsproto-2.1.3
-	>=x11-proto/glproto-1.4.17-r1
-	>=x11-proto/inputproto-2.2.99.1
-	>=x11-proto/kbproto-1.0.3
-	>=x11-proto/randrproto-1.4.0
-	>=x11-proto/recordproto-1.13.99.1
-	>=x11-proto/renderproto-0.11
-	>=x11-proto/resourceproto-1.2.0
-	>=x11-proto/scrnsaverproto-1.1
-	>=x11-proto/trapproto-3.4.3
-	>=x11-proto/videoproto-2.2.2
-	>=x11-proto/xcmiscproto-1.2.0
-	>=x11-proto/xextproto-7.2.99.901
-	>=x11-proto/xf86dgaproto-2.0.99.1
-	>=x11-proto/xf86rushproto-1.1.2
-	>=x11-proto/xf86vidmodeproto-2.2.99.1
-	>=x11-proto/xineramaproto-1.1.3
-	>=x11-proto/xproto-7.0.22
-	>=x11-proto/presentproto-1.0
-	>=x11-proto/dri3proto-1.0
-	dmx? (
-		>=x11-proto/dmxproto-2.2.99.1
-		doc? (
-			|| (
-				www-client/links
-				www-client/lynx
-				www-client/w3m
-			)
-		)
-	)
-	!minimal? (
-		>=x11-proto/xf86driproto-2.1.0
-		>=x11-proto/dri2proto-2.8
-	)"
-
-RDEPEND="${CDEPEND}
-	selinux? ( sec-policy/selinux-xserver )
-"
-
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)"
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-src_prepare() {
-	UPSTREAMED_PATCHES=(
-		"${WORKDIR}"/patches/*.patch
-	)
-	PATCHES=(
-		"${UPSTREAMED_PATCHES[@]}"
-		"${FILESDIR}"/${PN}-1.12-ia64-fix_inx_outx.patch
-		"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch
-		"${FILESDIR}"/${PN}-1.17-cve-2015-0255-0.patch
-		"${FILESDIR}"/${PN}-1.17-cve-2015-0255-1.patch
-		"${FILESDIR}"/${PN}-1.17.2-uninit-clientsWritable.patch
-	)
-	xorg-2_src_prepare
-}
-
-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
-	XORG_CONFIGURE_OPTIONS=(
-		$(use_enable ipv6)
-		$(use_enable dmx)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable suid install-setuid)
-		$(use_enable tslib)
-		$(use_enable unwind libunwind)
-		$(use_enable !minimal record)
-		$(use_enable !minimal xfree86-utils)
-		$(use_enable !minimal install-libxf86config)
-		$(use_enable !minimal dri)
-		$(use_enable !minimal dri2)
-		$(use_enable !minimal glx)
-		$(use_enable xnest)
-		$(use_enable xorg)
-		$(use_enable xvfb)
-		$(use_enable nptl glx-tls)
-		$(use_enable udev config-udev)
-		$(use_with doc doxygen)
-		$(use_with doc xmlto)
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal &&	use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-pkg_postinst() {
-	# sets up libGL and DRI2 symlinks if needed (ie, on a fresh install)
-	eselect opengl set xorg-x11 --use-old
-
-	if [[ ${PV} != 9999 && $(get_version_component_range 2 ${REPLACING_VERSIONS}) != $(get_version_component_range 2 ${PV}) ]]; then
-		ewarn "You must rebuild all drivers if upgrading from <xorg-server-$(get_version_component_range 1-2)"
-		ewarn "because the ABI changed. If you cannot start X because"
-		ewarn "of module version mismatch errors, this is your problem."
-
-		echo
-		ewarn "You can rebuild all installed packages in the x11-drivers"
-		ewarn "category using this command:"
-		ewarn "	emerge @x11-module-rebuild"
-	fi
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-04-15 23:07 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-04-15 23:07 UTC (permalink / raw
  To: gentoo-commits

commit:     95209f5bb985775383ab3474f1cc461671bd5dae
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 15 23:01:05 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Apr 15 23:01:07 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95209f5b

x11-base/xorg-server: Drop old version

 x11-base/xorg-server/Manifest                      |   1 -
 .../xorg-server-1.19.99.901-randr-fix-crash.patch  |  44 -----
 .../xorg-server/xorg-server-1.19.99.901-r1.ebuild  | 220 ---------------------
 3 files changed, 265 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 866e6b9393e..b262359d335 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,3 +1,2 @@
 DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c
-DIST xorg-server-1.19.99.901.tar.bz2 6131851 BLAKE2B 5b3588fe7c42d10eb89fa4ebea5ab6f2c7fb25f876ec6a5c5b523062f5c712c52c20767aa60b607847b50aa12ec75307b8715d63aa92331b70a1971c8d740670 SHA512 c2fbe4868788cd0d6d5fe546acb8c2ddec39ac3e851f352ee438a785a248a048a87073972f51ff98ef36a35a6753f8c2f22c2ecfc719d47dd9bb3c453fdb3ae5
 DIST xorg-server-1.19.99.904.tar.bz2 6083787 BLAKE2B 7b5ba4601494ab7714a977e6fcced12e373f5aaf30d433560a899d4446116cc4a5e22ae21378fea6ab07b68bad1a2544e065fd1d449b3b155b2c0e8a6787e479 SHA512 b9dccc777d0a30c6b40bddffe1f359dde4103539c6598f04bf8cf5f59e6770229221a199c1866b4eba0cf8d2d87fe878985bbd2e3c6ec5b65e3f16195ea8d57e

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch b/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch
deleted file mode 100644
index bcaaf867c7a..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 2af0a50a4bb9be9f58681d417ceb9a7029caaf3b Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Wed, 28 Feb 2018 11:23:41 -0500
-Subject: [PATCH] randr: Fix a crash on initialization with GPU screens
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-RRSetChanged (immediately above) was immune to screens with no master,
-but RRTellChanged was not:
-
-    Thread 1 "X" received signal SIGSEGV, Segmentation fault.
-    RRTellChanged (pScreen=<optimized out>) at ../../randr/randr.c:576
-    576             mastersp = rrGetScrPriv(master);
-    (gdb) bt
-    #0  RRTellChanged (pScreen=<optimized out>) at ../../randr/randr.c:576
-    #1  0x000055555566f1e9 in RRNoticePropertyChange (value=0x555555bfbf28, property=70, output=0x555555bfef10) at ../../randr/rrproperty.c:153
-    #2  RRChangeOutputProperty (output=output@entry=0x555555bfef10, property=<optimized out>, type=type@entry=19, format=format@entry=32, mode=<optimized out>, mode@entry=0, len=len@entry=1, value=0x7fffffffe77c, sendevent=1, pending=0)
-        at ../../randr/rrproperty.c:263
-    #3  0x000055555566dba5 in RROutputSetNonDesktop (output=output@entry=0x555555bfef10, nonDesktop=nonDesktop@entry=0) at ../../randr/rroutput.c:333
-    ...
-
-Reported-by: Michel Dänzer <michel@daenzer.net>
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
- randr/randr.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/randr/randr.c b/randr/randr.c
-index 339ad3ece..feb54bcc8 100644
---- a/randr/randr.c
-+++ b/randr/randr.c
-@@ -602,6 +602,8 @@ RRTellChanged(ScreenPtr pScreen)
- 
-     if (pScreen->isGPU) {
-         master = pScreen->current_master;
-+        if (!master)
-+            return;
-         mastersp = rrGetScrPriv(master);
-     }
-     else {
--- 
-2.16.1
-

diff --git a/x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild b/x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild
deleted file mode 100644
index 19c536df784..00000000000
--- a/x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild
+++ /dev/null
@@ -1,220 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator 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 ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
-fi
-
-IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +glamor ipv6 libressl minimal selinux systemd +udev unwind xcsecurity"
-
-CDEPEND=">=app-eselect/eselect-opengl-1.3.0
-	!libressl? ( dev-libs/openssl:0= )
-	libressl? ( dev-libs/libressl )
-	>=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-10.3.4-r1[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-10.3.4-r1
-	)
-	udev? ( >=virtual/udev-150 )
-	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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	xephyr? ( kdrive )"
-
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/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
-	"${FILESDIR}"/${P}-randr-fix-crash.patch
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	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 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)
-		--enable-libdrm
-		--enable-suid-wrapper
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-04-17  1:35 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-04-17  1:35 UTC (permalink / raw
  To: gentoo-commits

commit:     4abddc5e499eef7cdb177e4b8c98219284c376e4
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 17 01:35:22 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Tue Apr 17 01:35:37 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4abddc5e

x11-base/xorg-server: Cherry-pick two patches from upstream

Closes: https://bugs.gentoo.org/653288
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 ...-Move-GBM-code-inside-ifdef-GLAMOR_HAS_GB.patch |  48 ++++++
 ....99.904-xwayland-Fix-build-without-glamor.patch | 175 +++++++++++++++++++++
 .../xorg-server/xorg-server-1.19.99.904.ebuild     |   7 +-
 3 files changed, 227 insertions(+), 3 deletions(-)

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.99.904-modesetting-Move-GBM-code-inside-ifdef-GLAMOR_HAS_GB.patch b/x11-base/xorg-server/files/xorg-server-1.19.99.904-modesetting-Move-GBM-code-inside-ifdef-GLAMOR_HAS_GB.patch
new file mode 100644
index 00000000000..f0c4ed58d33
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.19.99.904-modesetting-Move-GBM-code-inside-ifdef-GLAMOR_HAS_GB.patch
@@ -0,0 +1,48 @@
+From a98a95b798a0062783ae6fd2135ad488af5efcfd Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Sun, 15 Apr 2018 23:37:45 -0700
+Subject: [PATCH xserver 2/2] modesetting: Move GBM code inside #ifdef
+ GLAMOR_HAS_GBM
+
+Fixes a compilation error without Glamor.
+
+Bugzilla: https://bugs.gentoo.org/653288
+Signed-off-by: Matt Turner <mattst88@gmail.com>
+Reviewed-by: Olivier Fourdan <ofourdan@redhat.com>
+---
+ hw/xfree86/drivers/modesetting/drmmode_display.c | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
+index 322ef050b..79e91f0f8 100644
+--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
++++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
+@@ -998,18 +998,18 @@ static Bool
+ drmmode_create_bo(drmmode_ptr drmmode, drmmode_bo *bo,
+                   unsigned width, unsigned height, unsigned bpp)
+ {
+-    uint32_t format;
+-
+-    if (drmmode->scrn->depth == 30)
+-        format = GBM_FORMAT_ARGB2101010;
+-    else
+-        format = GBM_FORMAT_ARGB8888;
+-
+     bo->width = width;
+     bo->height = height;
+ 
+ #ifdef GLAMOR_HAS_GBM
+     if (drmmode->glamor) {
++        uint32_t format;
++
++        if (drmmode->scrn->depth == 30)
++            format = GBM_FORMAT_ARGB2101010;
++        else
++            format = GBM_FORMAT_ARGB8888;
++
+ #ifdef GBM_BO_WITH_MODIFIERS
+         uint32_t num_modifiers;
+         uint64_t *modifiers = NULL;
+-- 
+2.16.1
+

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.99.904-xwayland-Fix-build-without-glamor.patch b/x11-base/xorg-server/files/xorg-server-1.19.99.904-xwayland-Fix-build-without-glamor.patch
new file mode 100644
index 00000000000..312a5e05cdc
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.19.99.904-xwayland-Fix-build-without-glamor.patch
@@ -0,0 +1,175 @@
+From c3ae963a7b19e05b8296aae8b6354587756d48fa Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Mon, 16 Apr 2018 09:39:09 +0200
+Subject: [PATCH xserver 1/2] xwayland: Fix build without glamor
+
+Present support in Xwayland relies on glamor, make sure Xwayland can
+be built without glamor by moving references to Present code inside
+the conditional GLAMOR_HAS_GBM.
+
+Reported-by: Matt Turner <mattst88@gmail.com>
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Matt Turner <mattst88@gmail.com>
+Reviewed-by: Roman Gilg <subdiff@gmail.com>
+---
+ hw/xwayland/Makefile.am |  4 ++--
+ hw/xwayland/meson.build |  3 +--
+ hw/xwayland/xwayland.c  | 10 +++++++++-
+ hw/xwayland/xwayland.h  |  7 ++++++-
+ 4 files changed, 18 insertions(+), 6 deletions(-)
+
+diff --git a/hw/xwayland/Makefile.am b/hw/xwayland/Makefile.am
+index 0291afee7..80d3a1f19 100644
+--- a/hw/xwayland/Makefile.am
++++ b/hw/xwayland/Makefile.am
+@@ -11,7 +11,6 @@ Xwayland_CFLAGS =				\
+ 
+ Xwayland_SOURCES =				\
+ 	xwayland.c				\
+-	xwayland-present.c			\
+ 	xwayland-input.c			\
+ 	xwayland-cursor.c			\
+ 	xwayland-shm.c				\
+@@ -35,7 +34,8 @@ Xwayland_built_sources =
+ 
+ if GLAMOR_EGL
+ Xwayland_SOURCES += 				\
+-	xwayland-glamor.c
++	xwayland-glamor.c			\
++	xwayland-present.c
+ if XV
+ Xwayland_SOURCES += 				\
+ 	xwayland-glamor-xv.c
+diff --git a/hw/xwayland/meson.build b/hw/xwayland/meson.build
+index 69a5c819a..8d178825e 100644
+--- a/hw/xwayland/meson.build
++++ b/hw/xwayland/meson.build
+@@ -1,6 +1,5 @@
+ srcs = [
+     'xwayland.c',
+-    'xwayland-present.c',
+     'xwayland-input.c',
+     'xwayland-cursor.c',
+     'xwayland-shm.c',
+@@ -53,7 +52,7 @@ srcs += code.process(dmabuf_xml)
+ 
+ xwayland_glamor = []
+ if gbm_dep.found()
+-    srcs += 'xwayland-glamor.c'
++    srcs += [ 'xwayland-glamor.c', 'xwayland-present.c' ]
+     if build_xv
+         srcs += 'xwayland-glamor-xv.c'
+     endif
+diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
+index dd074c341..44bbc3b18 100644
+--- a/hw/xwayland/xwayland.c
++++ b/hw/xwayland/xwayland.c
+@@ -525,6 +525,7 @@ xwl_realize_window(WindowPtr window)
+         wl_region_destroy(region);
+     }
+ 
++#ifdef GLAMOR_HAS_GBM
+     if (xwl_screen->present) {
+         xwl_window->present_crtc_fake = RRCrtcCreate(xwl_screen->screen, xwl_window);
+         xwl_window->present_msc = 1;
+@@ -533,6 +534,7 @@ xwl_realize_window(WindowPtr window)
+         xorg_list_init(&xwl_window->present_event_list);
+         xorg_list_init(&xwl_window->present_release_queue);
+     }
++#endif
+ 
+     wl_display_flush(xwl_screen->display);
+ 
+@@ -599,9 +601,11 @@ xwl_unrealize_window(WindowPtr window)
+ 
+     compUnredirectWindow(serverClient, window, CompositeRedirectManual);
+ 
++#ifdef GLAMOR_HAS_GBM
+     if (xwl_screen->present)
+         /* Always cleanup Present (Present might have been active on child window) */
+         xwl_present_cleanup(window);
++#endif
+ 
+     screen->UnrealizeWindow = xwl_screen->UnrealizeWindow;
+     ret = (*screen->UnrealizeWindow) (window);
+@@ -621,8 +625,10 @@ xwl_unrealize_window(WindowPtr window)
+     if (xwl_window->frame_callback)
+         wl_callback_destroy(xwl_window->frame_callback);
+ 
++#ifdef GLAMOR_HAS_GBM
+     if (xwl_window->present_crtc_fake)
+         RRCrtcDestroy(xwl_window->present_crtc_fake);
++#endif
+ 
+     free(xwl_window);
+     dixSetPrivate(&window->devPrivates, &xwl_window_private_key, NULL);
+@@ -709,9 +715,11 @@ xwl_screen_post_damage(struct xwl_screen *xwl_screen)
+ 
+     xorg_list_for_each_entry_safe(xwl_window, next_xwl_window,
+                                   &xwl_screen->damage_window_list, link_damage) {
++#ifdef GLAMOR_HAS_GBM
+         /* Present on the main surface. So don't commit here as well. */
+         if (xwl_window->present_window)
+             continue;
++#endif
+         /* If we're waiting on a frame callback from the server,
+          * don't attach a new buffer. */
+         if (xwl_window->frame_callback)
+@@ -1053,10 +1061,10 @@ xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
+         ErrorF("Failed to initialize glamor, falling back to sw\n");
+         xwl_screen->glamor = 0;
+     }
+-#endif
+ 
+     if (xwl_screen->glamor && xwl_screen->rootless)
+         xwl_screen->present = xwl_present_init(pScreen);
++#endif
+ 
+     if (!xwl_screen->glamor) {
+         xwl_screen->CreateScreenResources = pScreen->CreateScreenResources;
+diff --git a/hw/xwayland/xwayland.h b/hw/xwayland/xwayland.h
+index a65559374..cf2551b99 100644
+--- a/hw/xwayland/xwayland.h
++++ b/hw/xwayland/xwayland.h
+@@ -127,7 +127,7 @@ struct xwl_window {
+     struct xorg_list link_damage;
+     struct wl_callback *frame_callback;
+     Bool allow_commits;
+-
++#ifdef GLAMOR_HAS_GBM
+     /* present */
+     RRCrtcPtr present_crtc_fake;
+     struct xorg_list present_link;
+@@ -143,8 +143,10 @@ struct xwl_window {
+ 
+     struct xorg_list present_event_list;
+     struct xorg_list present_release_queue;
++#endif
+ };
+ 
++#ifdef GLAMOR_HAS_GBM
+ struct xwl_present_event {
+     uint64_t event_id;
+     uint64_t target_msc;
+@@ -159,6 +161,7 @@ struct xwl_present_event {
+ 
+     struct xorg_list list;
+ };
++#endif
+ 
+ #define MODIFIER_META 0x01
+ 
+@@ -378,8 +381,10 @@ struct wl_buffer *xwl_glamor_pixmap_get_wl_buffer(PixmapPtr pixmap,
+                                                   unsigned short height,
+                                                   Bool *created);
+ 
++#ifdef GLAMOR_HAS_GBM
+ Bool xwl_present_init(ScreenPtr screen);
+ void xwl_present_cleanup(WindowPtr window);
++#endif
+ 
+ void xwl_screen_release_tablet_manager(struct xwl_screen *xwl_screen);
+ 
+-- 
+2.16.1
+

diff --git a/x11-base/xorg-server/xorg-server-1.19.99.904.ebuild b/x11-base/xorg-server/xorg-server-1.19.99.904.ebuild
index 7af80e32dab..805f0077333 100644
--- a/x11-base/xorg-server/xorg-server-1.19.99.904.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.19.99.904.ebuild
@@ -108,9 +108,10 @@ REQUIRED_USE="!minimal? (
 	)
 	xephyr? ( kdrive )"
 
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/patches/"
-#)
+UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-modesetting-Move-GBM-code-inside-ifdef-GLAMOR_HAS_GB.patch
+	"${FILESDIR}"/${P}-xwayland-Fix-build-without-glamor.patch
+)
 
 PATCHES=(
 	"${UPSTREAMED_PATCHES[@]}"


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-06-11  2:48 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-06-11  2:48 UTC (permalink / raw
  To: gentoo-commits

commit:     2b48a745f377d884219c60a6169a1aee94b59975
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Jun 11 02:45:35 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Jun 11 02:48:01 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b48a745

x11-base/xorg-server: Apply patch to fix module loading on alpha

Closes: https://bugs.gentoo.org/548906

 ...ine-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch | 224 +++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.20.0.ebuild     |   2 +
 2 files changed, 226 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch b/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch
new file mode 100644
index 00000000000..ebf677ae9c4
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch
@@ -0,0 +1,224 @@
+From eecedfffd40f0465d85347f14547ddc6b30e57df Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Tue, 22 May 2018 21:10:55 -0700
+Subject: [PATCH xserver] xfree86: Inline xf86{Read,Write}Mmio{8,16,32} on
+ alpha
+
+In commit 9db2af6f757e (xfree86: Remove xf86{Map,Unmap}VidMem) we
+somehow stopped exporting xf86{Read,Write}Mmio{8,16,32}. Since the
+function pointer indirection was intended to support dense vs sparse and
+sparse support is now gone, we can just make the functions static inline
+in compiler.h and avoid all of this.
+
+Bugzilla: https://bugs.gentoo.org/548906
+Tested-by: Christopher May-Townsend <chris@maytownsend.co.uk>
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+Signed-off-by: Matt Turner <mattst88@gmail.com>
+---
+ configure.ac                            |  4 --
+ hw/xfree86/common/compiler.h            | 67 ++++++++++++++++++++++++---------
+ hw/xfree86/os-support/bsd/Makefile.am   |  3 +-
+ hw/xfree86/os-support/linux/Makefile.am | 12 ------
+ hw/xfree86/os-support/linux/lnx_video.c | 27 -------------
+ hw/xfree86/os-support/meson.build       |  1 -
+ 6 files changed, 50 insertions(+), 64 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index ddc47faa2..0075b6ace 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1908,9 +1908,6 @@ if test "x$XORG" = xyes; then
+ 		XORG_OS_SUBDIR="linux"
+ 		linux_acpi="no"
+ 		case $host_cpu in
+-		  alpha*)
+-		  	linux_alpha=yes
+-			;;
+ 		  i*86|amd64*|x86_64*|ia64*)
+ 			linux_acpi=$enable_linux_acpi
+ 			;;
+@@ -2075,7 +2072,6 @@ AM_CONDITIONAL([XORG], [test "x$XORG" = xyes])
+ AM_CONDITIONAL([XORG_BUS_PCI], [test "x$PCI" = xyes])
+ AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes])
+ AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes])
+-AM_CONDITIONAL([LINUX_ALPHA], [test "x$linux_alpha" = xyes])
+ AM_CONDITIONAL([LNXACPI], [test "x$linux_acpi" = xyes])
+ AM_CONDITIONAL([LNXAPM], [test "x$linux_apm" = xyes])
+ AM_CONDITIONAL([SOLARIS_VT], [test "x$solaris_vt" = xyes])
+diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h
+index eea29dfb5..7144c6a27 100644
+--- a/hw/xfree86/common/compiler.h
++++ b/hw/xfree86/common/compiler.h
+@@ -986,33 +986,64 @@ inl(unsigned PORT_SIZE port)
+ #endif
+ 
+ #ifdef __alpha__
+-/* entry points for Mmio memory access routines */
+-extern _X_EXPORT int (*xf86ReadMmio8) (void *, unsigned long);
+-extern _X_EXPORT int (*xf86ReadMmio16) (void *, unsigned long);
+-extern _X_EXPORT int (*xf86ReadMmio32) (void *, unsigned long);
+-extern _X_EXPORT void (*xf86WriteMmio8) (int, void *, unsigned long);
+-extern _X_EXPORT void (*xf86WriteMmio16) (int, void *, unsigned long);
+-extern _X_EXPORT void (*xf86WriteMmio32) (int, void *, unsigned long);
++static inline int
++xf86ReadMmio8(void *Base, unsigned long Offset)
++{
++    mem_barrier();
++    return *(CARD8 *) ((unsigned long) Base + (Offset));
++}
++
++static inline int
++xf86ReadMmio16(void *Base, unsigned long Offset)
++{
++    mem_barrier();
++    return *(CARD16 *) ((unsigned long) Base + (Offset));
++}
++
++static inline int
++xf86ReadMmio32(void *Base, unsigned long Offset)
++{
++    mem_barrier();
++    return *(CARD32 *) ((unsigned long) Base + (Offset));
++}
++
++static inline void
++xf86WriteMmio8(int Value, void *Base, unsigned long Offset)
++{
++    write_mem_barrier();
++    *(CARD8 *) ((unsigned long) Base + (Offset)) = Value;
++}
++
++static inline void
++xf86WriteMmio16(int Value, void *Base, unsigned long Offset)
++{
++    write_mem_barrier();
++    *(CARD16 *) ((unsigned long) Base + (Offset)) = Value;
++}
++
++static inline void
++xf86WriteMmio32(int Value, void *Base, unsigned long Offset)
++{
++    write_mem_barrier();
++    *(CARD32 *) ((unsigned long) Base + (Offset)) = Value;
++}
++
+ extern _X_EXPORT void xf86SlowBCopyFromBus(unsigned char *, unsigned char *,
+                                            int);
+ extern _X_EXPORT void xf86SlowBCopyToBus(unsigned char *, unsigned char *, int);
+ 
+ /* Some macros to hide the system dependencies for MMIO accesses */
+ /* Changed to kill noise generated by gcc's -Wcast-align */
+-#define MMIO_IN8(base, offset) (*xf86ReadMmio8)(base, offset)
+-#define MMIO_IN16(base, offset) (*xf86ReadMmio16)(base, offset)
+-#define MMIO_IN32(base, offset) (*xf86ReadMmio32)(base, offset)
+-
+-#define MMIO_OUT32(base, offset, val) \
+-    do { \
+-	write_mem_barrier(); \
+-	*(volatile CARD32 *)(void *)(((CARD8*)(base)) + (offset)) = (val); \
+-    } while (0)
++#define MMIO_IN8(base, offset) xf86ReadMmio8(base, offset)
++#define MMIO_IN16(base, offset) xf86ReadMmio16(base, offset)
++#define MMIO_IN32(base, offset) xf86ReadMmio32(base, offset)
+ 
+ #define MMIO_OUT8(base, offset, val) \
+-    (*xf86WriteMmio8)((CARD8)(val), base, offset)
++    xf86WriteMmio8((CARD8)(val), base, offset)
+ #define MMIO_OUT16(base, offset, val) \
+-    (*xf86WriteMmio16)((CARD16)(val), base, offset)
++    xf86WriteMmio16((CARD16)(val), base, offset)
++#define MMIO_OUT32(base, offset, val) \
++    xf86WriteMmio32((CARD32)(val), base, offset)
+ 
+ #elif defined(__powerpc__) || defined(__sparc__)
+  /*
+diff --git a/hw/xfree86/os-support/bsd/Makefile.am b/hw/xfree86/os-support/bsd/Makefile.am
+index b01ea5bca..66ac83805 100644
+--- a/hw/xfree86/os-support/bsd/Makefile.am
++++ b/hw/xfree86/os-support/bsd/Makefile.am
+@@ -26,8 +26,7 @@ endif
+ if ALPHA_VIDEO
+ # Cheat here and piggyback other alpha bits on ALPHA_VIDEO.
+ ARCH_SOURCES = \
+-	alpha_video.c \
+-	bsd_ev56.c
++	alpha_video.c
+ endif
+ 
+ if ARM_VIDEO
+diff --git a/hw/xfree86/os-support/linux/Makefile.am b/hw/xfree86/os-support/linux/Makefile.am
+index 26e40bb93..9b4535b53 100644
+--- a/hw/xfree86/os-support/linux/Makefile.am
++++ b/hw/xfree86/os-support/linux/Makefile.am
+@@ -1,13 +1,5 @@
+ noinst_LTLIBRARIES = liblinux.la
+ 
+-if LINUX_ALPHA
+-noinst_LTLIBRARIES += liblinuxev56.la
+-
+-liblinuxev56_la_CFLAGS = $(AM_CFLAGS) -mcpu=ev56
+-
+-liblinuxev56_la_SOURCES = lnx_ev56.c
+-endif
+-
+ if LNXACPI
+ ACPI_SRCS = lnx_acpi.c
+ if !LNXAPM
+@@ -39,7 +31,3 @@ liblinux_la_SOURCES = linux.h lnx_init.c lnx_video.c \
+ AM_CFLAGS = -DUSESTDRES -DHAVE_SYSV_IPC $(DIX_CFLAGS) $(XORG_CFLAGS) $(PLATFORM_DEFINES)
+ 
+ AM_CPPFLAGS = $(XORG_INCS) $(PLATFORM_INCLUDES) $(LIBDRM_CFLAGS)
+-
+-if LINUX_ALPHA
+-liblinux_la_LIBADD = liblinuxev56.la
+-endif
+diff --git a/hw/xfree86/os-support/linux/lnx_video.c b/hw/xfree86/os-support/linux/lnx_video.c
+index c09d71947..04e45092a 100644
+--- a/hw/xfree86/os-support/linux/lnx_video.c
++++ b/hw/xfree86/os-support/linux/lnx_video.c
+@@ -166,30 +166,3 @@ xf86DisableIO(void)
+ 
+     ExtendedEnabled = FALSE;
+ }
+-
+-#if defined (__alpha__)
+-
+-extern int readDense8(void *Base, register unsigned long Offset);
+-extern int readDense16(void *Base, register unsigned long Offset);
+-extern int readDense32(void *Base, register unsigned long Offset);
+-extern void
+- writeDense8(int Value, void *Base, register unsigned long Offset);
+-extern void
+- writeDense16(int Value, void *Base, register unsigned long Offset);
+-extern void
+- writeDense32(int Value, void *Base, register unsigned long Offset);
+-
+-void (*xf86WriteMmio8) (int Value, void *Base, unsigned long Offset)
+-    = writeDense8;
+-void (*xf86WriteMmio16) (int Value, void *Base, unsigned long Offset)
+-    = writeDense16;
+-void (*xf86WriteMmio32) (int Value, void *Base, unsigned long Offset)
+-    = writeDense32;
+-int (*xf86ReadMmio8) (void *Base, unsigned long Offset)
+-    = readDense8;
+-int (*xf86ReadMmio16) (void *Base, unsigned long Offset)
+-    = readDense16;
+-int (*xf86ReadMmio32) (void *Base, unsigned long Offset)
+-    = readDense32;
+-
+-#endif                          /* __alpha__ */
+diff --git a/hw/xfree86/os-support/meson.build b/hw/xfree86/os-support/meson.build
+index 901422786..b6e5c975d 100644
+--- a/hw/xfree86/os-support/meson.build
++++ b/hw/xfree86/os-support/meson.build
+@@ -100,7 +100,6 @@ elif host_machine.system().endswith('bsd')
+         srcs_xorg_os_support += 'shared/ioperm_noop.c'
+     elif host_machine.cpu_family() == 'alpha'
+         srcs_xorg_os_support += 'bsd/alpha_video.c'
+-        srcs_xorg_os_support += 'bsd/bsd_ev56.c'
+     endif
+ 
+     if host_machine.system() == 'freebsd'
+-- 
+2.16.1
+

diff --git a/x11-base/xorg-server/xorg-server-1.20.0.ebuild b/x11-base/xorg-server/xorg-server-1.20.0.ebuild
index a7c996e78fd..0fa84f249ca 100644
--- a/x11-base/xorg-server/xorg-server-1.20.0.ebuild
+++ b/x11-base/xorg-server/xorg-server-1.20.0.ebuild
@@ -3,6 +3,7 @@
 
 EAPI=5
 
+XORG_EAUTORECONF=yes
 XORG_DOC=doc
 inherit xorg-2 multilib versionator flag-o-matic
 EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
@@ -109,6 +110,7 @@ REQUIRED_USE="!minimal? (
 	xephyr? ( kdrive )"
 
 UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch
 )
 
 PATCHES=(


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-10-01 22:52 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-10-01 22:52 UTC (permalink / raw
  To: gentoo-commits

commit:     e8ff080f8633dfaa490ce62c07068935d6ff0f7e
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  1 22:51:21 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Mon Oct  1 22:52:26 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8ff080f

x11-base/xorg-server: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   1 -
 ...ine-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch | 224 ---------------------
 x11-base/xorg-server/xorg-server-1.20.0.ebuild     | 221 --------------------
 3 files changed, 446 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index f874c858676..6b4fadcebbc 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,3 +1,2 @@
 DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c
-DIST xorg-server-1.20.0.tar.bz2 6096838 BLAKE2B 34ee6d6dbbde54d54e082a0791e85ad52d728e239a7d8fadb75ebcbdbaab8752b90ca6d075f096d971db7ec68ce4ecac5c70fcf536ce23c20b8dce8f32e2c046 SHA512 1489e8511c9da682ef0460182dfeeddd241c72d4ef4d206d9706f1e39572c09953df851fab18cefb65a1ee4c6710c6ba13c63c9c9fc0bc1b5f12c50780412cde
 DIST xorg-server-1.20.1.tar.bz2 6103772 BLAKE2B ac71d603cef8efe814275b658d4a76e231eb0fda14dd6e7177509bf147feaf37657789d8fc83f8017435c84760d7be357f203a8346aac612a53083cf413f7d75 SHA512 ef2b93a61683c8ca8d1f14b771e70db65ba119a73db8a46e7cdbf2ac2243e3f4b2732068eb5aa5d7b76f460db995a3c04390870198a5210ec30df4360ad9f94b

diff --git a/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch b/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch
deleted file mode 100644
index ebf677ae9c4..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.20.0-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.patch
+++ /dev/null
@@ -1,224 +0,0 @@
-From eecedfffd40f0465d85347f14547ddc6b30e57df Mon Sep 17 00:00:00 2001
-From: Matt Turner <mattst88@gmail.com>
-Date: Tue, 22 May 2018 21:10:55 -0700
-Subject: [PATCH xserver] xfree86: Inline xf86{Read,Write}Mmio{8,16,32} on
- alpha
-
-In commit 9db2af6f757e (xfree86: Remove xf86{Map,Unmap}VidMem) we
-somehow stopped exporting xf86{Read,Write}Mmio{8,16,32}. Since the
-function pointer indirection was intended to support dense vs sparse and
-sparse support is now gone, we can just make the functions static inline
-in compiler.h and avoid all of this.
-
-Bugzilla: https://bugs.gentoo.org/548906
-Tested-by: Christopher May-Townsend <chris@maytownsend.co.uk>
-Reviewed-by: Adam Jackson <ajax@redhat.com>
-Signed-off-by: Matt Turner <mattst88@gmail.com>
----
- configure.ac                            |  4 --
- hw/xfree86/common/compiler.h            | 67 ++++++++++++++++++++++++---------
- hw/xfree86/os-support/bsd/Makefile.am   |  3 +-
- hw/xfree86/os-support/linux/Makefile.am | 12 ------
- hw/xfree86/os-support/linux/lnx_video.c | 27 -------------
- hw/xfree86/os-support/meson.build       |  1 -
- 6 files changed, 50 insertions(+), 64 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index ddc47faa2..0075b6ace 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1908,9 +1908,6 @@ if test "x$XORG" = xyes; then
- 		XORG_OS_SUBDIR="linux"
- 		linux_acpi="no"
- 		case $host_cpu in
--		  alpha*)
--		  	linux_alpha=yes
--			;;
- 		  i*86|amd64*|x86_64*|ia64*)
- 			linux_acpi=$enable_linux_acpi
- 			;;
-@@ -2075,7 +2072,6 @@ AM_CONDITIONAL([XORG], [test "x$XORG" = xyes])
- AM_CONDITIONAL([XORG_BUS_PCI], [test "x$PCI" = xyes])
- AM_CONDITIONAL([XORG_BUS_BSDPCI], [test "x$xorg_bus_bsdpci" = xyes])
- AM_CONDITIONAL([XORG_BUS_SPARC], [test "x$xorg_bus_sparc" = xyes])
--AM_CONDITIONAL([LINUX_ALPHA], [test "x$linux_alpha" = xyes])
- AM_CONDITIONAL([LNXACPI], [test "x$linux_acpi" = xyes])
- AM_CONDITIONAL([LNXAPM], [test "x$linux_apm" = xyes])
- AM_CONDITIONAL([SOLARIS_VT], [test "x$solaris_vt" = xyes])
-diff --git a/hw/xfree86/common/compiler.h b/hw/xfree86/common/compiler.h
-index eea29dfb5..7144c6a27 100644
---- a/hw/xfree86/common/compiler.h
-+++ b/hw/xfree86/common/compiler.h
-@@ -986,33 +986,64 @@ inl(unsigned PORT_SIZE port)
- #endif
- 
- #ifdef __alpha__
--/* entry points for Mmio memory access routines */
--extern _X_EXPORT int (*xf86ReadMmio8) (void *, unsigned long);
--extern _X_EXPORT int (*xf86ReadMmio16) (void *, unsigned long);
--extern _X_EXPORT int (*xf86ReadMmio32) (void *, unsigned long);
--extern _X_EXPORT void (*xf86WriteMmio8) (int, void *, unsigned long);
--extern _X_EXPORT void (*xf86WriteMmio16) (int, void *, unsigned long);
--extern _X_EXPORT void (*xf86WriteMmio32) (int, void *, unsigned long);
-+static inline int
-+xf86ReadMmio8(void *Base, unsigned long Offset)
-+{
-+    mem_barrier();
-+    return *(CARD8 *) ((unsigned long) Base + (Offset));
-+}
-+
-+static inline int
-+xf86ReadMmio16(void *Base, unsigned long Offset)
-+{
-+    mem_barrier();
-+    return *(CARD16 *) ((unsigned long) Base + (Offset));
-+}
-+
-+static inline int
-+xf86ReadMmio32(void *Base, unsigned long Offset)
-+{
-+    mem_barrier();
-+    return *(CARD32 *) ((unsigned long) Base + (Offset));
-+}
-+
-+static inline void
-+xf86WriteMmio8(int Value, void *Base, unsigned long Offset)
-+{
-+    write_mem_barrier();
-+    *(CARD8 *) ((unsigned long) Base + (Offset)) = Value;
-+}
-+
-+static inline void
-+xf86WriteMmio16(int Value, void *Base, unsigned long Offset)
-+{
-+    write_mem_barrier();
-+    *(CARD16 *) ((unsigned long) Base + (Offset)) = Value;
-+}
-+
-+static inline void
-+xf86WriteMmio32(int Value, void *Base, unsigned long Offset)
-+{
-+    write_mem_barrier();
-+    *(CARD32 *) ((unsigned long) Base + (Offset)) = Value;
-+}
-+
- extern _X_EXPORT void xf86SlowBCopyFromBus(unsigned char *, unsigned char *,
-                                            int);
- extern _X_EXPORT void xf86SlowBCopyToBus(unsigned char *, unsigned char *, int);
- 
- /* Some macros to hide the system dependencies for MMIO accesses */
- /* Changed to kill noise generated by gcc's -Wcast-align */
--#define MMIO_IN8(base, offset) (*xf86ReadMmio8)(base, offset)
--#define MMIO_IN16(base, offset) (*xf86ReadMmio16)(base, offset)
--#define MMIO_IN32(base, offset) (*xf86ReadMmio32)(base, offset)
--
--#define MMIO_OUT32(base, offset, val) \
--    do { \
--	write_mem_barrier(); \
--	*(volatile CARD32 *)(void *)(((CARD8*)(base)) + (offset)) = (val); \
--    } while (0)
-+#define MMIO_IN8(base, offset) xf86ReadMmio8(base, offset)
-+#define MMIO_IN16(base, offset) xf86ReadMmio16(base, offset)
-+#define MMIO_IN32(base, offset) xf86ReadMmio32(base, offset)
- 
- #define MMIO_OUT8(base, offset, val) \
--    (*xf86WriteMmio8)((CARD8)(val), base, offset)
-+    xf86WriteMmio8((CARD8)(val), base, offset)
- #define MMIO_OUT16(base, offset, val) \
--    (*xf86WriteMmio16)((CARD16)(val), base, offset)
-+    xf86WriteMmio16((CARD16)(val), base, offset)
-+#define MMIO_OUT32(base, offset, val) \
-+    xf86WriteMmio32((CARD32)(val), base, offset)
- 
- #elif defined(__powerpc__) || defined(__sparc__)
-  /*
-diff --git a/hw/xfree86/os-support/bsd/Makefile.am b/hw/xfree86/os-support/bsd/Makefile.am
-index b01ea5bca..66ac83805 100644
---- a/hw/xfree86/os-support/bsd/Makefile.am
-+++ b/hw/xfree86/os-support/bsd/Makefile.am
-@@ -26,8 +26,7 @@ endif
- if ALPHA_VIDEO
- # Cheat here and piggyback other alpha bits on ALPHA_VIDEO.
- ARCH_SOURCES = \
--	alpha_video.c \
--	bsd_ev56.c
-+	alpha_video.c
- endif
- 
- if ARM_VIDEO
-diff --git a/hw/xfree86/os-support/linux/Makefile.am b/hw/xfree86/os-support/linux/Makefile.am
-index 26e40bb93..9b4535b53 100644
---- a/hw/xfree86/os-support/linux/Makefile.am
-+++ b/hw/xfree86/os-support/linux/Makefile.am
-@@ -1,13 +1,5 @@
- noinst_LTLIBRARIES = liblinux.la
- 
--if LINUX_ALPHA
--noinst_LTLIBRARIES += liblinuxev56.la
--
--liblinuxev56_la_CFLAGS = $(AM_CFLAGS) -mcpu=ev56
--
--liblinuxev56_la_SOURCES = lnx_ev56.c
--endif
--
- if LNXACPI
- ACPI_SRCS = lnx_acpi.c
- if !LNXAPM
-@@ -39,7 +31,3 @@ liblinux_la_SOURCES = linux.h lnx_init.c lnx_video.c \
- AM_CFLAGS = -DUSESTDRES -DHAVE_SYSV_IPC $(DIX_CFLAGS) $(XORG_CFLAGS) $(PLATFORM_DEFINES)
- 
- AM_CPPFLAGS = $(XORG_INCS) $(PLATFORM_INCLUDES) $(LIBDRM_CFLAGS)
--
--if LINUX_ALPHA
--liblinux_la_LIBADD = liblinuxev56.la
--endif
-diff --git a/hw/xfree86/os-support/linux/lnx_video.c b/hw/xfree86/os-support/linux/lnx_video.c
-index c09d71947..04e45092a 100644
---- a/hw/xfree86/os-support/linux/lnx_video.c
-+++ b/hw/xfree86/os-support/linux/lnx_video.c
-@@ -166,30 +166,3 @@ xf86DisableIO(void)
- 
-     ExtendedEnabled = FALSE;
- }
--
--#if defined (__alpha__)
--
--extern int readDense8(void *Base, register unsigned long Offset);
--extern int readDense16(void *Base, register unsigned long Offset);
--extern int readDense32(void *Base, register unsigned long Offset);
--extern void
-- writeDense8(int Value, void *Base, register unsigned long Offset);
--extern void
-- writeDense16(int Value, void *Base, register unsigned long Offset);
--extern void
-- writeDense32(int Value, void *Base, register unsigned long Offset);
--
--void (*xf86WriteMmio8) (int Value, void *Base, unsigned long Offset)
--    = writeDense8;
--void (*xf86WriteMmio16) (int Value, void *Base, unsigned long Offset)
--    = writeDense16;
--void (*xf86WriteMmio32) (int Value, void *Base, unsigned long Offset)
--    = writeDense32;
--int (*xf86ReadMmio8) (void *Base, unsigned long Offset)
--    = readDense8;
--int (*xf86ReadMmio16) (void *Base, unsigned long Offset)
--    = readDense16;
--int (*xf86ReadMmio32) (void *Base, unsigned long Offset)
--    = readDense32;
--
--#endif                          /* __alpha__ */
-diff --git a/hw/xfree86/os-support/meson.build b/hw/xfree86/os-support/meson.build
-index 901422786..b6e5c975d 100644
---- a/hw/xfree86/os-support/meson.build
-+++ b/hw/xfree86/os-support/meson.build
-@@ -100,7 +100,6 @@ elif host_machine.system().endswith('bsd')
-         srcs_xorg_os_support += 'shared/ioperm_noop.c'
-     elif host_machine.cpu_family() == 'alpha'
-         srcs_xorg_os_support += 'bsd/alpha_video.c'
--        srcs_xorg_os_support += 'bsd/bsd_ev56.c'
-     endif
- 
-     if host_machine.system() == 'freebsd'
--- 
-2.16.1
-

diff --git a/x11-base/xorg-server/xorg-server-1.20.0.ebuild b/x11-base/xorg-server/xorg-server-1.20.0.ebuild
deleted file mode 100644
index ec715ede7a2..00000000000
--- a/x11-base/xorg-server/xorg-server-1.20.0.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_EAUTORECONF=yes
-XORG_DOC=doc
-inherit xorg-2 multilib versionator 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 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-10.3.4-r1[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-10.3.4-r1
-	)
-	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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	xephyr? ( kdrive )"
-
-UPSTREAMED_PATCHES=(
-	"${FILESDIR}"/${P}-xfree86-Inline-xf86-Read-Write-Mmio-8-16-32-on-alpha.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_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	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 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)
-		$(use_enable systemd suid-wrapper)
-		$(use_enable !systemd 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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-11-01  6:25 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-11-01  6:25 UTC (permalink / raw
  To: gentoo-commits

commit:     ea5504ecb9e9163a17c7f693d377b2d8e7e15fa7
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  1 06:23:17 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu Nov  1 06:23:36 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea5504ec

x11-base/xorg-server: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   3 -
 .../files/xorg-server-1.19.4-sysmacros.patch       |  36 ----
 ...t-pick-sRGB-config-for-32-bit-RGBA-visual.patch |  39 ----
 x11-base/xorg-server/metadata.xml                  |   1 -
 x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild  | 224 ---------------------
 x11-base/xorg-server/xorg-server-1.20.1.ebuild     | 221 --------------------
 x11-base/xorg-server/xorg-server-1.20.2.ebuild     | 221 --------------------
 7 files changed, 745 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 290c8d10b68..4dc15913393 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,4 +1 @@
-DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c
-DIST xorg-server-1.20.1.tar.bz2 6103772 BLAKE2B ac71d603cef8efe814275b658d4a76e231eb0fda14dd6e7177509bf147feaf37657789d8fc83f8017435c84760d7be357f203a8346aac612a53083cf413f7d75 SHA512 ef2b93a61683c8ca8d1f14b771e70db65ba119a73db8a46e7cdbf2ac2243e3f4b2732068eb5aa5d7b76f460db995a3c04390870198a5210ec30df4360ad9f94b
-DIST xorg-server-1.20.2.tar.bz2 6204242 BLAKE2B 05333d12ca3ca2bca879410093fb193dc2476780b857cd22dcfb22d0dffe0e17afd161ee3a87030bd76ff4109fa1884768614f0bc26318d576f7c65b885aa425 SHA512 1c87d78b14529dd4b438ef038118c8540d1d17bdd58bf08ec5408a2ddbe8d0dda48033a9a9477cfc2c4c304dd1078fa40968a03c4d0cd3398359dd0fadb8e7c7
 DIST xorg-server-1.20.3.tar.bz2 6205000 BLAKE2B 9fc8acf1812d0aa4800941dd1846060f91edf1e7ebc92b35e8c2028266d88d3ab3ba14e95f535e5ee41941f8e20769ee75723ba609f5653d4892f97bc5cf91c4 SHA512 ee44554f86df4297f54c5871fe7a18954eeef4338775a25f36d6577b279c4775f61128da71b86cfaeadcc080838d6749dede138d4db178866579da2056543fba

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
deleted file mode 100644
index 8a3cb769292..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7d097c0c38ab82115a1e56489bfe09f9f01b24de Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Wed, 11 Oct 2017 16:11:49 +0300
-Subject: [PATCH] config/udev: Add sys/sysmacros.h include for major/minor
- functions for new glibc
-
-Commits d732c36597fa and 84e3b96b5313 added the include to some files, but
-missed config/udev.c, where the major and minor functions are used as well.
-This should be Linux-only, so we don't need the sys/mkdev.h case here for
-Solaris.
-
-Signed-off-by: Mart Raudsepp <leio@gentoo.org>
----
-https://bugs.gentoo.org/633530
-https://patchwork.freedesktop.org/patch/181800/
-
- config/udev.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/config/udev.c b/config/udev.c
-index 932f230..b3b8d0f 100644
---- a/config/udev.c
-+++ b/config/udev.c
-@@ -30,6 +30,9 @@
- #include <libudev.h>
- #include <ctype.h>
- #include <unistd.h>
-+#ifdef HAVE_SYS_SYSMACROS_H
-+#include <sys/sysmacros.h>
-+#endif
- 
- #include "input.h"
- #include "inputstr.h"
--- 
-2.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch b/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
deleted file mode 100644
index d7e5e511e5d..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From c2954b16c8730c7ed8441fd8dba25900f3aed265 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tapani=20P=C3=A4lli?= <tapani.palli@intel.com>
-Date: Tue, 28 Nov 2017 09:23:29 +0200
-Subject: [PATCH] glx: do not pick sRGB config for 32-bit RGBA visual
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes blending issues seen with kwin and gnome-shell when
-32bit visual has sRGB capability set.
-
-Reviewed-by: Adam Jackson <ajax@redhat.com>
-Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103699
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103646
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103655
----
- glx/glxscreens.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/glx/glxscreens.c b/glx/glxscreens.c
-index 73444152a..596d972e0 100644
---- a/glx/glxscreens.c
-+++ b/glx/glxscreens.c
-@@ -271,6 +271,11 @@ pickFBConfig(__GLXscreen * pGlxScreen, VisualPtr visual)
-         /* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */
-         if (visual->nplanes == 32 && config->rgbBits != 32)
-             continue;
-+        /* If it's the 32-bit RGBA visual, do not pick sRGB capable config.
-+         * This can cause issues with compositors that are not sRGB aware.
-+         */
-+        if (visual->nplanes == 32 && config->sRGBCapable == GL_TRUE)
-+            continue;
-         /* Can't use the same FBconfig for multiple X visuals.  I think. */
-         if (config->visualID != 0)
-             continue;
--- 
-2.17.0
-

diff --git a/x11-base/xorg-server/metadata.xml b/x11-base/xorg-server/metadata.xml
index 8c8c243082e..74e52195b25 100644
--- a/x11-base/xorg-server/metadata.xml
+++ b/x11-base/xorg-server/metadata.xml
@@ -9,7 +9,6 @@
 	<flag name="dmx">Build the Distributed Multiheaded X server</flag>
 	<flag name="glamor">Enable Glamor OpenGL 2D acceleration</flag>
 	<flag name="kdrive">Build the kdrive X servers</flag>
-	<flag name="tslib">Build with tslib support for touchscreen devices</flag>
 	<flag name="unwind">Enable libunwind usage for backtraces</flag>
 	<flag name="xcsecurity">Build Security extension</flag>
 	<flag name="xnest">Build the Xnest server</flag>

diff --git a/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
deleted file mode 100644
index 26685badc18..00000000000
--- a/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
+++ /dev/null
@@ -1,224 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/${PV}"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
-
-IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +glamor ipv6 libressl minimal selinux +suid systemd tslib +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.46
-	>=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-10.3.4-r1[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-10.3.4-r1
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	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
-	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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	xephyr? ( kdrive )"
-
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/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
-	"${FILESDIR}"/${PN}-1.19.4-sysmacros.patch #633530
-	"${FILESDIR}"/${PN}-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch #653688
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	XORG_CONFIGURE_OPTIONS=(
-		$(use_enable ipv6)
-		$(use_enable debug)
-		$(use_enable dmx)
-		$(use_enable glamor)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable suid install-setuid)
-		$(use_enable tslib)
-		$(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 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)
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}

diff --git a/x11-base/xorg-server/xorg-server-1.20.1.ebuild b/x11-base/xorg-server/xorg-server-1.20.1.ebuild
deleted file mode 100644
index e721825fa7e..00000000000
--- a/x11-base/xorg-server/xorg-server-1.20.1.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_EAUTORECONF=yes
-XORG_DOC=doc
-inherit xorg-2 multilib versionator 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 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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	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
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	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)
-		$(use_enable systemd suid-wrapper)
-		$(use_enable !systemd 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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}

diff --git a/x11-base/xorg-server/xorg-server-1.20.2.ebuild b/x11-base/xorg-server/xorg-server-1.20.2.ebuild
deleted file mode 100644
index be5e57d8cb2..00000000000
--- a/x11-base/xorg-server/xorg-server-1.20.2.ebuild
+++ /dev/null
@@ -1,221 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_EAUTORECONF=yes
-XORG_DOC=doc
-inherit xorg-2 multilib versionator 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 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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	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
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	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)
-		$(use_enable systemd suid-wrapper)
-		$(use_enable !systemd 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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2018-11-01  7:06 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2018-11-01  7:06 UTC (permalink / raw
  To: gentoo-commits

commit:     513f36b7d380d1aca9cc6515282630759a192f34
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  1 07:03:20 2018 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Thu Nov  1 07:06:18 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=513f36b7

Revert "x11-base/xorg-server: Drop old versions"

This reverts commit ea5504ecb9e9163a17c7f693d377b2d8e7e15fa7.

Unfortunately both tigervnc and nvidia-drivers depend on this version.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   3 +
 .../files/xorg-server-1.19.4-sysmacros.patch       |  36 ++++
 ...t-pick-sRGB-config-for-32-bit-RGBA-visual.patch |  39 ++++
 x11-base/xorg-server/metadata.xml                  |   1 +
 x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild  | 224 +++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.20.1.ebuild     | 221 ++++++++++++++++++++
 x11-base/xorg-server/xorg-server-1.20.2.ebuild     | 221 ++++++++++++++++++++
 7 files changed, 745 insertions(+)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 4dc15913393..290c8d10b68 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1 +1,4 @@
+DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c
+DIST xorg-server-1.20.1.tar.bz2 6103772 BLAKE2B ac71d603cef8efe814275b658d4a76e231eb0fda14dd6e7177509bf147feaf37657789d8fc83f8017435c84760d7be357f203a8346aac612a53083cf413f7d75 SHA512 ef2b93a61683c8ca8d1f14b771e70db65ba119a73db8a46e7cdbf2ac2243e3f4b2732068eb5aa5d7b76f460db995a3c04390870198a5210ec30df4360ad9f94b
+DIST xorg-server-1.20.2.tar.bz2 6204242 BLAKE2B 05333d12ca3ca2bca879410093fb193dc2476780b857cd22dcfb22d0dffe0e17afd161ee3a87030bd76ff4109fa1884768614f0bc26318d576f7c65b885aa425 SHA512 1c87d78b14529dd4b438ef038118c8540d1d17bdd58bf08ec5408a2ddbe8d0dda48033a9a9477cfc2c4c304dd1078fa40968a03c4d0cd3398359dd0fadb8e7c7
 DIST xorg-server-1.20.3.tar.bz2 6205000 BLAKE2B 9fc8acf1812d0aa4800941dd1846060f91edf1e7ebc92b35e8c2028266d88d3ab3ba14e95f535e5ee41941f8e20769ee75723ba609f5653d4892f97bc5cf91c4 SHA512 ee44554f86df4297f54c5871fe7a18954eeef4338775a25f36d6577b279c4775f61128da71b86cfaeadcc080838d6749dede138d4db178866579da2056543fba

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
new file mode 100644
index 00000000000..8a3cb769292
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
@@ -0,0 +1,36 @@
+From 7d097c0c38ab82115a1e56489bfe09f9f01b24de Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <leio@gentoo.org>
+Date: Wed, 11 Oct 2017 16:11:49 +0300
+Subject: [PATCH] config/udev: Add sys/sysmacros.h include for major/minor
+ functions for new glibc
+
+Commits d732c36597fa and 84e3b96b5313 added the include to some files, but
+missed config/udev.c, where the major and minor functions are used as well.
+This should be Linux-only, so we don't need the sys/mkdev.h case here for
+Solaris.
+
+Signed-off-by: Mart Raudsepp <leio@gentoo.org>
+---
+https://bugs.gentoo.org/633530
+https://patchwork.freedesktop.org/patch/181800/
+
+ config/udev.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/config/udev.c b/config/udev.c
+index 932f230..b3b8d0f 100644
+--- a/config/udev.c
++++ b/config/udev.c
+@@ -30,6 +30,9 @@
+ #include <libudev.h>
+ #include <ctype.h>
+ #include <unistd.h>
++#ifdef HAVE_SYS_SYSMACROS_H
++#include <sys/sysmacros.h>
++#endif
+ 
+ #include "input.h"
+ #include "inputstr.h"
+-- 
+2.10.2
+

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch b/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
new file mode 100644
index 00000000000..d7e5e511e5d
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
@@ -0,0 +1,39 @@
+From c2954b16c8730c7ed8441fd8dba25900f3aed265 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tapani=20P=C3=A4lli?= <tapani.palli@intel.com>
+Date: Tue, 28 Nov 2017 09:23:29 +0200
+Subject: [PATCH] glx: do not pick sRGB config for 32-bit RGBA visual
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This fixes blending issues seen with kwin and gnome-shell when
+32bit visual has sRGB capability set.
+
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103699
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103646
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103655
+---
+ glx/glxscreens.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/glx/glxscreens.c b/glx/glxscreens.c
+index 73444152a..596d972e0 100644
+--- a/glx/glxscreens.c
++++ b/glx/glxscreens.c
+@@ -271,6 +271,11 @@ pickFBConfig(__GLXscreen * pGlxScreen, VisualPtr visual)
+         /* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */
+         if (visual->nplanes == 32 && config->rgbBits != 32)
+             continue;
++        /* If it's the 32-bit RGBA visual, do not pick sRGB capable config.
++         * This can cause issues with compositors that are not sRGB aware.
++         */
++        if (visual->nplanes == 32 && config->sRGBCapable == GL_TRUE)
++            continue;
+         /* Can't use the same FBconfig for multiple X visuals.  I think. */
+         if (config->visualID != 0)
+             continue;
+-- 
+2.17.0
+

diff --git a/x11-base/xorg-server/metadata.xml b/x11-base/xorg-server/metadata.xml
index 74e52195b25..8c8c243082e 100644
--- a/x11-base/xorg-server/metadata.xml
+++ b/x11-base/xorg-server/metadata.xml
@@ -9,6 +9,7 @@
 	<flag name="dmx">Build the Distributed Multiheaded X server</flag>
 	<flag name="glamor">Enable Glamor OpenGL 2D acceleration</flag>
 	<flag name="kdrive">Build the kdrive X servers</flag>
+	<flag name="tslib">Build with tslib support for touchscreen devices</flag>
 	<flag name="unwind">Enable libunwind usage for backtraces</flag>
 	<flag name="xcsecurity">Build Security extension</flag>
 	<flag name="xnest">Build the Xnest server</flag>

diff --git a/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
new file mode 100644
index 00000000000..26685badc18
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_DOC=doc
+inherit xorg-2 multilib versionator flag-o-matic
+EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
+
+DESCRIPTION="X.Org X servers"
+SLOT="0/${PV}"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
+
+IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} debug +glamor ipv6 libressl minimal selinux +suid systemd tslib +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.46
+	>=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-10.3.4-r1[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-10.3.4-r1
+	)
+	tslib? ( >=x11-libs/tslib-1.0 )
+	udev? ( >=virtual/udev-150 )
+	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
+	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-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	xephyr? ( kdrive )"
+
+#UPSTREAMED_PATCHES=(
+#	"${WORKDIR}/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
+	"${FILESDIR}"/${PN}-1.19.4-sysmacros.patch #633530
+	"${FILESDIR}"/${PN}-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch #653688
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+pkg_setup() {
+	if use wayland && ! use glamor; then
+		ewarn "glamor is necessary for acceleration under Xwayland."
+		ewarn "Performance may be unacceptable without it."
+	fi
+}
+
+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
+	XORG_CONFIGURE_OPTIONS=(
+		$(use_enable ipv6)
+		$(use_enable debug)
+		$(use_enable dmx)
+		$(use_enable glamor)
+		$(use_enable kdrive)
+		$(use_enable kdrive kdrive-kbd)
+		$(use_enable kdrive kdrive-mouse)
+		$(use_enable kdrive kdrive-evdev)
+		$(use_enable suid install-setuid)
+		$(use_enable tslib)
+		$(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 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)
+		--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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal && use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}

diff --git a/x11-base/xorg-server/xorg-server-1.20.1.ebuild b/x11-base/xorg-server/xorg-server-1.20.1.ebuild
new file mode 100644
index 00000000000..e721825fa7e
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.20.1.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_EAUTORECONF=yes
+XORG_DOC=doc
+inherit xorg-2 multilib versionator 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 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-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	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
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+pkg_setup() {
+	if use wayland && ! use glamor; then
+		ewarn "glamor is necessary for acceleration under Xwayland."
+		ewarn "Performance may be unacceptable without it."
+	fi
+}
+
+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
+	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)
+		$(use_enable systemd suid-wrapper)
+		$(use_enable !systemd 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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal && use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}

diff --git a/x11-base/xorg-server/xorg-server-1.20.2.ebuild b/x11-base/xorg-server/xorg-server-1.20.2.ebuild
new file mode 100644
index 00000000000..be5e57d8cb2
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-1.20.2.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_EAUTORECONF=yes
+XORG_DOC=doc
+inherit xorg-2 multilib versionator 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 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-$(get_version_component_range 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	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
+)
+
+pkg_pretend() {
+	# older gcc is not supported
+	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
+		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
+}
+
+pkg_setup() {
+	if use wayland && ! use glamor; then
+		ewarn "glamor is necessary for acceleration under Xwayland."
+		ewarn "Performance may be unacceptable without it."
+	fi
+}
+
+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
+	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)
+		$(use_enable systemd suid-wrapper)
+		$(use_enable !systemd 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
+	)
+
+	xorg-2_src_configure
+}
+
+src_install() {
+	xorg-2_src_install
+
+	server_based_install
+
+	if ! use minimal && use xorg; then
+		# Install xorg.conf.example into docs
+		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2019-01-20  5:43 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2019-01-20  5:43 UTC (permalink / raw
  To: gentoo-commits

commit:     4c14dca574c964ff238b45966d6d756fe01220d6
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 20 05:35:41 2019 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Jan 20 05:43:07 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c14dca5

x11-base/xorg-server: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   1 -
 .../files/xorg-server-1.19.4-sysmacros.patch       |  36 ----
 ...t-pick-sRGB-config-for-32-bit-RGBA-visual.patch |  39 ----
 x11-base/xorg-server/metadata.xml                  |   1 -
 x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild  | 224 ---------------------
 5 files changed, 301 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 3bc38c0e6c1..4dc15913393 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,2 +1 @@
-DIST xorg-server-1.19.5.tar.bz2 5965044 BLAKE2B 23375793ea4459a962f412440e307081ce2acd3c646e5db4d1bfac20e267bcbb1752ba8f6de66df06d25eaf92d1b55082a80eced0d44c257a757d5926ca6a7f3 SHA512 928dea5850b98cd815004cfa133eca23cfa9521920c934c68a92787f2cae13cca1534eee772a4fb74b8ae8cb92662b5d68b95b834c8aa8ec57cd57cb4e5dd45c
 DIST xorg-server-1.20.3.tar.bz2 6205000 BLAKE2B 9fc8acf1812d0aa4800941dd1846060f91edf1e7ebc92b35e8c2028266d88d3ab3ba14e95f535e5ee41941f8e20769ee75723ba609f5653d4892f97bc5cf91c4 SHA512 ee44554f86df4297f54c5871fe7a18954eeef4338775a25f36d6577b279c4775f61128da71b86cfaeadcc080838d6749dede138d4db178866579da2056543fba

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch b/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
deleted file mode 100644
index 8a3cb769292..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.19.4-sysmacros.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7d097c0c38ab82115a1e56489bfe09f9f01b24de Mon Sep 17 00:00:00 2001
-From: Mart Raudsepp <leio@gentoo.org>
-Date: Wed, 11 Oct 2017 16:11:49 +0300
-Subject: [PATCH] config/udev: Add sys/sysmacros.h include for major/minor
- functions for new glibc
-
-Commits d732c36597fa and 84e3b96b5313 added the include to some files, but
-missed config/udev.c, where the major and minor functions are used as well.
-This should be Linux-only, so we don't need the sys/mkdev.h case here for
-Solaris.
-
-Signed-off-by: Mart Raudsepp <leio@gentoo.org>
----
-https://bugs.gentoo.org/633530
-https://patchwork.freedesktop.org/patch/181800/
-
- config/udev.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/config/udev.c b/config/udev.c
-index 932f230..b3b8d0f 100644
---- a/config/udev.c
-+++ b/config/udev.c
-@@ -30,6 +30,9 @@
- #include <libudev.h>
- #include <ctype.h>
- #include <unistd.h>
-+#ifdef HAVE_SYS_SYSMACROS_H
-+#include <sys/sysmacros.h>
-+#endif
- 
- #include "input.h"
- #include "inputstr.h"
--- 
-2.10.2
-

diff --git a/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch b/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
deleted file mode 100644
index d7e5e511e5d..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From c2954b16c8730c7ed8441fd8dba25900f3aed265 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Tapani=20P=C3=A4lli?= <tapani.palli@intel.com>
-Date: Tue, 28 Nov 2017 09:23:29 +0200
-Subject: [PATCH] glx: do not pick sRGB config for 32-bit RGBA visual
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes blending issues seen with kwin and gnome-shell when
-32bit visual has sRGB capability set.
-
-Reviewed-by: Adam Jackson <ajax@redhat.com>
-Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103699
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103646
-Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103655
----
- glx/glxscreens.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/glx/glxscreens.c b/glx/glxscreens.c
-index 73444152a..596d972e0 100644
---- a/glx/glxscreens.c
-+++ b/glx/glxscreens.c
-@@ -271,6 +271,11 @@ pickFBConfig(__GLXscreen * pGlxScreen, VisualPtr visual)
-         /* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */
-         if (visual->nplanes == 32 && config->rgbBits != 32)
-             continue;
-+        /* If it's the 32-bit RGBA visual, do not pick sRGB capable config.
-+         * This can cause issues with compositors that are not sRGB aware.
-+         */
-+        if (visual->nplanes == 32 && config->sRGBCapable == GL_TRUE)
-+            continue;
-         /* Can't use the same FBconfig for multiple X visuals.  I think. */
-         if (config->visualID != 0)
-             continue;
--- 
-2.17.0
-

diff --git a/x11-base/xorg-server/metadata.xml b/x11-base/xorg-server/metadata.xml
index 8c8c243082e..74e52195b25 100644
--- a/x11-base/xorg-server/metadata.xml
+++ b/x11-base/xorg-server/metadata.xml
@@ -9,7 +9,6 @@
 	<flag name="dmx">Build the Distributed Multiheaded X server</flag>
 	<flag name="glamor">Enable Glamor OpenGL 2D acceleration</flag>
 	<flag name="kdrive">Build the kdrive X servers</flag>
-	<flag name="tslib">Build with tslib support for touchscreen devices</flag>
 	<flag name="unwind">Enable libunwind usage for backtraces</flag>
 	<flag name="xcsecurity">Build Security extension</flag>
 	<flag name="xnest">Build the Xnest server</flag>

diff --git a/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
deleted file mode 100644
index 26685badc18..00000000000
--- a/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild
+++ /dev/null
@@ -1,224 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-XORG_DOC=doc
-inherit xorg-2 multilib versionator flag-o-matic
-EGIT_REPO_URI="https://anongit.freedesktop.org/git/xorg/xserver.git"
-
-DESCRIPTION="X.Org X servers"
-SLOT="0/${PV}"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux"
-
-IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +glamor ipv6 libressl minimal selinux +suid systemd tslib +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.46
-	>=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-10.3.4-r1[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-10.3.4-r1
-	)
-	tslib? ( >=x11-libs/tslib-1.0 )
-	udev? ( >=virtual/udev-150 )
-	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
-	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-$(get_version_component_range 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	xephyr? ( kdrive )"
-
-#UPSTREAMED_PATCHES=(
-#	"${WORKDIR}/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
-	"${FILESDIR}"/${PN}-1.19.4-sysmacros.patch #633530
-	"${FILESDIR}"/${PN}-1.19.5-glx-do-not-pick-sRGB-config-for-32-bit-RGBA-visual.patch #653688
-)
-
-pkg_pretend() {
-	# older gcc is not supported
-	[[ "${MERGE_TYPE}" != "binary" && $(gcc-major-version) -lt 4 ]] && \
-		die "Sorry, but gcc earlier than 4.0 will not work for xorg-server."
-}
-
-pkg_setup() {
-	if use wayland && ! use glamor; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-	fi
-}
-
-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
-	XORG_CONFIGURE_OPTIONS=(
-		$(use_enable ipv6)
-		$(use_enable debug)
-		$(use_enable dmx)
-		$(use_enable glamor)
-		$(use_enable kdrive)
-		$(use_enable kdrive kdrive-kbd)
-		$(use_enable kdrive kdrive-mouse)
-		$(use_enable kdrive kdrive-evdev)
-		$(use_enable suid install-setuid)
-		$(use_enable tslib)
-		$(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 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)
-		--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
-	)
-
-	xorg-2_src_configure
-}
-
-src_install() {
-	xorg-2_src_install
-
-	server_based_install
-
-	if ! use minimal && use xorg; then
-		# Install xorg.conf.example into docs
-		dodoc "${AUTOTOOLS_BUILD_DIR}"/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
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2020-06-24 20:13 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2020-06-24 20:13 UTC (permalink / raw
  To: gentoo-commits

commit:     d4da40d328f432a363638a2e520cfbf84b06c7e0
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 24 19:57:25 2020 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Wed Jun 24 20:13:01 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d4da40d3

x11-base/xorg-server: Drop old versions

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   1 -
 ...erver-1.20.7-Fix-building-with-fno-common.patch | 254 ---------------------
 x11-base/xorg-server/xorg-server-1.20.7.ebuild     | 236 -------------------
 3 files changed, 491 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 7c6689fd4eb..0b04317f8a0 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,2 +1 @@
-DIST xorg-server-1.20.7.tar.bz2 6303005 BLAKE2B 343ebc1ff45fc1cd459b204d92eabdd0629c94d4338d2d7cb635f73642080d07ef174cfbd83e5b7f253f2918af2d1efbe99d7c75720b88857f69093ee0be1b65 SHA512 c67612e379111c28c68941c0a660abf72be7669591b41ccaa3b3474c4540a03822a28d892831b12ce08bac6e5e7e33504c2d19ef2a0c2298f83bd083459f96f5
 DIST xorg-server-1.20.8.tar.bz2 6309640 BLAKE2B 0dadd3a7afdb768bcd79f99f3670f7efcb919c43ea88870c93df598b080fbbec48f88cfa996fb7bff2363cffe70d42d9b154855691a64ddb26156f1b378512a0 SHA512 ab0ec0fcbf490c61558b9297f61b58fd2dedb676c78bef6431dc9166054743b43a0091b88a8b3f4e81d1f539909440ee7e188a298cefabe13ea89159639cd805

diff --git a/x11-base/xorg-server/files/xorg-server-1.20.7-Fix-building-with-fno-common.patch b/x11-base/xorg-server/files/xorg-server-1.20.7-Fix-building-with-fno-common.patch
deleted file mode 100644
index d3011fcb255..00000000000
--- a/x11-base/xorg-server/files/xorg-server-1.20.7-Fix-building-with-fno-common.patch
+++ /dev/null
@@ -1,254 +0,0 @@
-From 1610ef1d6b5ba99da9d1a639f3b65b2e61514a7d Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Fri, 24 Jan 2020 12:49:44 +0100
-Subject: [PATCH xserver] Fix building with `-fno-common`
-
-* GCC 10 will switch the default to `-fno-common`.
-  https://gcc.gnu.org/PR85678
-
-Bug: https://bugs.gentoo.org/705880
-Signed-off-by: Matt Turner <mattst88@gmail.com>
----
- hw/dmx/config/dmxconfig.c                | 2 +-
- hw/dmx/config/xdmxconfig.c               | 2 +-
- hw/dmx/glxProxy/glxext.c                 | 2 --
- hw/xwayland/xwayland.c                   | 2 +-
- test/misc.c                              | 2 +-
- test/xi1/protocol-xchangedevicecontrol.c | 2 +-
- test/xi2/protocol-common.c               | 2 ++
- test/xi2/protocol-common.h               | 2 +-
- test/xi2/protocol-xigetclientpointer.c   | 2 +-
- test/xi2/protocol-xigetselectedevents.c  | 2 +-
- test/xi2/protocol-xipassivegrabdevice.c  | 2 +-
- test/xi2/protocol-xiquerydevice.c        | 2 +-
- test/xi2/protocol-xiquerypointer.c       | 2 +-
- test/xi2/protocol-xiqueryversion.c       | 2 +-
- test/xi2/protocol-xiselectevents.c       | 2 +-
- test/xi2/protocol-xisetclientpointer.c   | 2 +-
- test/xi2/protocol-xiwarppointer.c        | 2 +-
- 17 files changed, 17 insertions(+), 17 deletions(-)
-
-diff --git a/hw/dmx/config/dmxconfig.c b/hw/dmx/config/dmxconfig.c
-index c1a9e1cf3..85bc0dbe4 100644
---- a/hw/dmx/config/dmxconfig.c
-+++ b/hw/dmx/config/dmxconfig.c
-@@ -72,7 +72,7 @@ typedef struct DMXConfigCmdStruct {
-     DMXConfigList *xinputs;
- } DMXConfigCmd, *DMXConfigCmdPtr;
- 
--DMXConfigEntryPtr dmxConfigEntry;
-+extern DMXConfigEntryPtr dmxConfigEntry;
- static DMXConfigCmd dmxConfigCmd;
- 
- static int dmxDisplaysFromCommandLine;
-diff --git a/hw/dmx/config/xdmxconfig.c b/hw/dmx/config/xdmxconfig.c
-index 49e4b5459..05d839688 100644
---- a/hw/dmx/config/xdmxconfig.c
-+++ b/hw/dmx/config/xdmxconfig.c
-@@ -65,7 +65,7 @@ extern FILE *yyin;
- #define DMX_CANVAS_WIDTH  400
- #define DMX_CANVAS_HEIGHT 500
- 
--DMXConfigEntryPtr dmxConfigEntry;
-+extern DMXConfigEntryPtr dmxConfigEntry;
- static DMXConfigVirtualPtr dmxConfigCurrent, dmxConfigNewVirtual;
- static DMXConfigDisplayPtr dmxConfigCurrentDisplay, dmxConfigNewDisplay;
- static int dmxConfigGrabbed, dmxConfigGrabbedFine;
-diff --git a/hw/dmx/glxProxy/glxext.c b/hw/dmx/glxProxy/glxext.c
-index 49848bbff..ca9780f99 100644
---- a/hw/dmx/glxProxy/glxext.c
-+++ b/hw/dmx/glxProxy/glxext.c
-@@ -47,8 +47,6 @@
- #include "extinit.h"
- #include "glx_extinit.h"
- 
--int noGlxExtension;
--
- /*
- ** Forward declarations.
- */
-diff --git a/hw/xwayland/xwayland.c b/hw/xwayland/xwayland.c
-index feb1058b7..5fefa5923 100644
---- a/hw/xwayland/xwayland.c
-+++ b/hw/xwayland/xwayland.c
-@@ -40,7 +40,7 @@
- 
- #ifdef XF86VIDMODE
- #include <X11/extensions/xf86vmproto.h>
--_X_EXPORT Bool noXFree86VidModeExtension;
-+extern _X_EXPORT Bool noXFree86VidModeExtension;
- #endif
- 
- #ifdef XWL_HAS_GLAMOR
-diff --git a/test/misc.c b/test/misc.c
-index 3c669b677..f1f76cccd 100644
---- a/test/misc.c
-+++ b/test/misc.c
-@@ -33,7 +33,7 @@
- 
- #include "tests-common.h"
- 
--ScreenInfo screenInfo;
-+extern ScreenInfo screenInfo;
- 
- static void
- dix_version_compare(void)
-diff --git a/test/xi1/protocol-xchangedevicecontrol.c b/test/xi1/protocol-xchangedevicecontrol.c
-index 57a15c407..54f1f67cb 100644
---- a/test/xi1/protocol-xchangedevicecontrol.c
-+++ b/test/xi1/protocol-xchangedevicecontrol.c
-@@ -37,7 +37,7 @@
- 
- #include "protocol-common.h"
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- static ClientRec client_request;
- 
- static void
-diff --git a/test/xi2/protocol-common.c b/test/xi2/protocol-common.c
-index 8cd85dd05..05dd3c4e7 100644
---- a/test/xi2/protocol-common.c
-+++ b/test/xi2/protocol-common.c
-@@ -45,6 +45,8 @@ static ClientRec server_client;
- 
- void *global_userdata;
- 
-+void (*reply_handler) (ClientPtr client, int len, char *data, void *userdata);
-+
- int enable_GrabButton_wrap = 1;
- int enable_XISetEventMask_wrap = 1;
- 
-diff --git a/test/xi2/protocol-common.h b/test/xi2/protocol-common.h
-index 8490529ad..742ce348f 100644
---- a/test/xi2/protocol-common.h
-+++ b/test/xi2/protocol-common.h
-@@ -99,7 +99,7 @@ extern void *global_userdata;
-  * The reply handler called from WriteToClient. Set this handler if you need
-  * to check the reply values.
-  */
--void (*reply_handler) (ClientPtr client, int len, char *data, void *userdata);
-+extern void (*reply_handler) (ClientPtr client, int len, char *data, void *userdata);
- 
- /**
-  * The default screen used for the windows. Initialized by init_simple().
-diff --git a/test/xi2/protocol-xigetclientpointer.c b/test/xi2/protocol-xigetclientpointer.c
-index 9c38bd720..244e8438f 100644
---- a/test/xi2/protocol-xigetclientpointer.c
-+++ b/test/xi2/protocol-xigetclientpointer.c
-@@ -46,7 +46,7 @@ static struct {
-     int win;
- } test_data;
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- static ClientRec client_request;
- 
- static void
-diff --git a/test/xi2/protocol-xigetselectedevents.c b/test/xi2/protocol-xigetselectedevents.c
-index 9a0fac5d4..b14100224 100644
---- a/test/xi2/protocol-xigetselectedevents.c
-+++ b/test/xi2/protocol-xigetselectedevents.c
-@@ -60,7 +60,7 @@ static struct {
-     int mask_len;
- } test_data;
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- 
- /* AddResource is called from XISetSEventMask, we don't need this */
- Bool
-diff --git a/test/xi2/protocol-xipassivegrabdevice.c b/test/xi2/protocol-xipassivegrabdevice.c
-index c703a1ee8..142bcecb7 100644
---- a/test/xi2/protocol-xipassivegrabdevice.c
-+++ b/test/xi2/protocol-xipassivegrabdevice.c
-@@ -41,7 +41,7 @@
- 
- #include "protocol-common.h"
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- static ClientRec client_request;
- 
- #define N_MODS 7
-diff --git a/test/xi2/protocol-xiquerydevice.c b/test/xi2/protocol-xiquerydevice.c
-index a068038fd..6ee8a80fc 100644
---- a/test/xi2/protocol-xiquerydevice.c
-+++ b/test/xi2/protocol-xiquerydevice.c
-@@ -54,7 +54,7 @@ struct test_data {
-     int num_devices_in_reply;
- };
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- 
- static void reply_XIQueryDevice_data(ClientPtr client, int len, char *data,
-                                      void *closure);
-diff --git a/test/xi2/protocol-xiquerypointer.c b/test/xi2/protocol-xiquerypointer.c
-index ed75d7910..0f5a2b57a 100644
---- a/test/xi2/protocol-xiquerypointer.c
-+++ b/test/xi2/protocol-xiquerypointer.c
-@@ -41,7 +41,7 @@
- 
- #include "protocol-common.h"
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- static ClientRec client_request;
- static void reply_XIQueryPointer_data(ClientPtr client, int len,
-                                       char *data, void *closure);
-diff --git a/test/xi2/protocol-xiqueryversion.c b/test/xi2/protocol-xiqueryversion.c
-index 3ce758faa..c7ddbfc10 100644
---- a/test/xi2/protocol-xiqueryversion.c
-+++ b/test/xi2/protocol-xiqueryversion.c
-@@ -58,7 +58,7 @@ struct test_data {
-     int minor_expected;
- };
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- 
- static void
- reply_XIQueryVersion(ClientPtr client, int len, char *data, void *closure)
-diff --git a/test/xi2/protocol-xiselectevents.c b/test/xi2/protocol-xiselectevents.c
-index f136c23d0..06050ade7 100644
---- a/test/xi2/protocol-xiselectevents.c
-+++ b/test/xi2/protocol-xiselectevents.c
-@@ -62,7 +62,7 @@
- 
- static unsigned char *data[4096 * 20];  /* the request data buffer */
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- 
- int
- __real_XISetEventMask(DeviceIntPtr dev, WindowPtr win, ClientPtr client,
-diff --git a/test/xi2/protocol-xisetclientpointer.c b/test/xi2/protocol-xisetclientpointer.c
-index 6584bb9cc..ddc9f0000 100644
---- a/test/xi2/protocol-xisetclientpointer.c
-+++ b/test/xi2/protocol-xisetclientpointer.c
-@@ -48,7 +48,7 @@
- 
- #include "protocol-common.h"
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- static ClientRec client_request;
- 
- static void
-diff --git a/test/xi2/protocol-xiwarppointer.c b/test/xi2/protocol-xiwarppointer.c
-index 8484d54e5..e5c2f31ea 100644
---- a/test/xi2/protocol-xiwarppointer.c
-+++ b/test/xi2/protocol-xiwarppointer.c
-@@ -44,7 +44,7 @@
- static int expected_x = SPRITE_X;
- static int expected_y = SPRITE_Y;
- 
--ClientRec client_window;
-+extern ClientRec client_window;
- 
- /**
-  * This function overrides the one in the screen rec.
--- 
-2.24.1
-

diff --git a/x11-base/xorg-server/xorg-server-1.20.7.ebuild b/x11-base/xorg-server/xorg-server-1.20.7.ebuild
deleted file mode 100644
index ded98b6f8b9..00000000000
--- a/x11-base/xorg-server/xorg-server-1.20.7.ebuild
+++ /dev/null
@@ -1,236 +0,0 @@
-# Copyright 1999-2020 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
-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 ~s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-IUSE_SERVERS="dmx kdrive wayland xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug elogind ipv6 libressl +libglvnd minimal selinux +suid systemd +udev unwind xcsecurity"
-
-CDEPEND="libglvnd? (
-		media-libs/libglvnd[X]
-		!app-eselect/eselect-opengl
-		!!x11-drivers/nvidia-drivers[-libglvnd(-)]
-	)
-	!libglvnd? ( >=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
-	)
-	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 )
-	wayland? (
-		>=dev-libs/wayland-1.3.0
-		>=media-libs/libepoxy-1.5.4[egl(+)]
-		>=dev-libs/wayland-protocols-1.18
-	)
-	>=x11-apps/xinit-1.3.3-r1
-	systemd? (
-		sys-apps/dbus
-		sys-apps/systemd
-	)
-	elogind? (
-		sys-apps/dbus
-		sys-auth/elogind
-		sys-auth/pambase[elogind]
-	)
-	"
-
-DEPEND="${CDEPEND}
-	sys-devel/flex
-	>=x11-base/xorg-proto-2018.4
-	dmx? (
-		doc? (
-			|| (
-				www-client/links
-				www-client/lynx
-				www-client/w3m
-			)
-		)
-	)"
-
-RDEPEND="${CDEPEND}
-	selinux? ( sec-policy/selinux-xserver )
-"
-
-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=(
-	"${FILESDIR}"/${P}-Fix-building-with-fno-common.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 minimal; then
-		ewarn "glamor is necessary for acceleration under Xwayland."
-		ewarn "Performance may be unacceptable without it."
-		ewarn "Build with USE=-minimal to enable glamor."
-	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 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 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)
-		$(usex !elogind $(use_enable systemd systemd-logind) '--enable-systemd-logind')
-		$(use_with systemd systemd-daemon)
-		$(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_configure() {
-	# Needed since commit 2a1a96d956f4 ("glamor: Add a function to get the
-	# driver name via EGL_MESA_query_driver") neglected to add autotools
-	# support
-	append-cflags -DGLAMOR_HAS_EGL_QUERY_DRIVER
-
-	xorg-3_src_configure
-}
-
-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
-
-	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() {
-	if ! use minimal; then
-		# sets up libGL and DRI2 symlinks if needed (ie, on a fresh install)
-		if ! use libglvnd; then
-			eselect opengl set xorg-x11 --use-old
-		fi
-	fi
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2021-12-21  0:51 Sam James
  0 siblings, 0 replies; 24+ messages in thread
From: Sam James @ 2021-12-21  0:51 UTC (permalink / raw
  To: gentoo-commits

commit:     c40287e2a259a9d9e13ee6055748d4d5b0b9f8b9
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 21 00:51:30 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Dec 21 00:51:30 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c40287e2

x11-base/xorg-server: backport upstream resume/logind fix

Closes: https://bugs.gentoo.org/829496
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../xorg-server-21.1.2-fix-resume-logind.patch     | 148 +++++++++++++++++
 x11-base/xorg-server/xorg-server-21.1.2-r3.ebuild  | 185 +++++++++++++++++++++
 2 files changed, 333 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.2-fix-resume-logind.patch b/x11-base/xorg-server/files/xorg-server-21.1.2-fix-resume-logind.patch
new file mode 100644
index 000000000000..1d16e132f62a
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.2-fix-resume-logind.patch
@@ -0,0 +1,148 @@
+Merged upstream into master, this is the backport PR variant.
+
+https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/833
+https://bugs.gentoo.org/829496
+
+From: Jocelyn Falempe <jfalempe@redhat.com>
+Date: Thu, 16 Dec 2021 15:46:43 +0100
+Subject: [PATCH 1/2] xf86/logind: Fix compilation error when built without
+ logind/platform bus
+
+This was introduced by commit 8eb1396d
+
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1269
+Fixes: da9d012a9 - xf86/logind: Fix drm_drop_master before vt_reldisp
+
+Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
+Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+--- a/hw/xfree86/common/xf86Events.c
++++ b/hw/xfree86/common/xf86Events.c
+@@ -383,14 +383,7 @@ xf86VTLeave(void)
+         xf86GPUScreens[i]->LeaveVT(xf86GPUScreens[i]);
+ 
+     if (systemd_logind_controls_session()) {
+-        for (i = 0; i < xf86_num_platform_devices; i++) {
+-            if (xf86_platform_devices[i].flags & XF86_PDEV_SERVER_FD) {
+-                int major, minor;
+-                major = xf86_platform_odev_attributes(i)->major;
+-                minor = xf86_platform_odev_attributes(i)->minor;
+-                systemd_logind_drop_master(major, minor);
+-            }
+-        }
++        systemd_logind_drop_master();
+     }
+ 
+     if (!xf86VTSwitchAway())
+--- a/hw/xfree86/os-support/linux/systemd-logind.c
++++ b/hw/xfree86/os-support/linux/systemd-logind.c
+@@ -308,13 +308,19 @@ cleanup:
+  * and ensure the drm_drop_master is done before
+  * VT_RELDISP when switching VT
+  */
+-void systemd_logind_drop_master(int _major, int _minor)
++void systemd_logind_drop_master(void)
+ {
+-    struct systemd_logind_info *info = &logind_info;
+-    dbus_int32_t major = _major;
+-    dbus_int32_t minor = _minor;
++    int i;
++    for (i = 0; i < xf86_num_platform_devices; i++) {
++        if (xf86_platform_devices[i].flags & XF86_PDEV_SERVER_FD) {
++            dbus_int32_t major, minor;
++            struct systemd_logind_info *info = &logind_info;
+ 
+-    systemd_logind_ack_pause(info, minor, major);
++            major = xf86_platform_odev_attributes(i)->major;
++            minor = xf86_platform_odev_attributes(i)->minor;
++            systemd_logind_ack_pause(info, minor, major);
++        }
++    }
+ }
+ 
+ static DBusHandlerResult
+--- a/include/systemd-logind.h
++++ b/include/systemd-logind.h
+@@ -33,7 +33,7 @@ int systemd_logind_take_fd(int major, int minor, const char *path, Bool *paus);
+ void systemd_logind_release_fd(int major, int minor, int fd);
+ int systemd_logind_controls_session(void);
+ void systemd_logind_vtenter(void);
+-void systemd_logind_drop_master(int major, int minor);
++void systemd_logind_drop_master(void);
+ #else
+ #define systemd_logind_init()
+ #define systemd_logind_fini()
+@@ -41,7 +41,7 @@ void systemd_logind_drop_master(int major, int minor);
+ #define systemd_logind_release_fd(major, minor, fd) close(fd)
+ #define systemd_logind_controls_session() 0
+ #define systemd_logind_vtenter()
+-#define systemd_logind_drop_master(major, minor)
++#define systemd_logind_drop_master()
+ #endif
+ 
+ #endif
+GitLab
+From 66890ca569291a53ea9cdc6ec19070173e522260 Mon Sep 17 00:00:00 2001
+From: Jocelyn Falempe <jfalempe@redhat.com>
+Date: Fri, 17 Dec 2021 10:18:25 +0100
+Subject: [PATCH 2/2] xf86/logind: fix missing call to vtenter if the platform
+ device is not paused
+
+If there is one platform device, which is not paused nor resumed,
+systemd_logind_vtenter() will never get called.
+This break suspend/resume, and switching to VT on system with Nvidia
+proprietary driver.
+This is a regression introduced by f5bd039633fa83
+
+So now call systemd_logind_vtenter() if there are no paused
+platform devices.
+
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1271
+Fixes: f5bd0396 - xf86/logind: fix call systemd_logind_vtenter after receiving drm device resume
+
+Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
+Tested-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Hans de Goede <hdegoede@redhat.com>
+--- a/hw/xfree86/os-support/linux/systemd-logind.c
++++ b/hw/xfree86/os-support/linux/systemd-logind.c
+@@ -316,6 +316,7 @@ void systemd_logind_drop_master(void)
+             dbus_int32_t major, minor;
+             struct systemd_logind_info *info = &logind_info;
+ 
++            xf86_platform_devices[i].flags |= XF86_PDEV_PAUSED;
+             major = xf86_platform_odev_attributes(i)->major;
+             minor = xf86_platform_odev_attributes(i)->minor;
+             systemd_logind_ack_pause(info, minor, major);
+@@ -323,6 +324,16 @@ void systemd_logind_drop_master(void)
+     }
+ }
+ 
++static Bool are_platform_devices_resumed(void) {
++    int i;
++    for (i = 0; i < xf86_num_platform_devices; i++) {
++        if (xf86_platform_devices[i].flags & XF86_PDEV_PAUSED) {
++            return FALSE;
++        }
++    }
++    return TRUE;
++}
++
+ static DBusHandlerResult
+ message_filter(DBusConnection * connection, DBusMessage * message, void *data)
+ {
+@@ -416,13 +427,11 @@ message_filter(DBusConnection * connection, DBusMessage * message, void *data)
+ 
+         if (pdev) {
+             pdev->flags &= ~XF86_PDEV_PAUSED;
+-            systemd_logind_vtenter();
+         } else
+             systemd_logind_set_input_fd_for_all_devs(major, minor, fd,
+                                                      info->vt_active);
+-
+-        /* Always call vtenter(), only if there are only legacy video devs */
+-        if (!xf86_num_platform_devices)
++        /* Call vtenter if all platform devices are resumed, or if there are no platform device */
++        if (are_platform_devices_resumed())
+             systemd_logind_vtenter();
+     }
+     return DBUS_HANDLER_RESULT_HANDLED;
+GitLab

diff --git a/x11-base/xorg-server/xorg-server-21.1.2-r3.ebuild b/x11-base/xorg-server/xorg-server-21.1.2-r3.ebuild
new file mode 100644
index 000000000000..3f1a181bcf83
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-21.1.2-r3.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+XORG_TARBALL_SUFFIX="xz"
+XORG_EAUTORECONF="no"
+inherit xorg-3 meson
+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="xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
+RESTRICT="!test? ( test )"
+
+CDEPEND="
+	media-libs/libglvnd[X]
+	dev-libs/libbsd
+	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/libxcvt-0.1.0
+	>=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
+	>=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 )
+	selinux? ( sys-libs/libselinux )
+	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-2021.4.99.2
+	>=x11-libs/xtrans-1.3.5
+	media-fonts/font-util
+"
+RDEPEND="${CDEPEND}
+	!systemd? ( gui-libs/display-manager-init )
+	selinux? ( sec-policy/selinux-xserver )
+	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
+"
+BDEPEND="
+	sys-devel/flex
+"
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	elogind? ( udev )
+	?? ( elogind systemd )"
+
+UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-fix-resume-logind.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
+)
+
+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
+
+	local emesonargs=(
+		--localstatedir "${EPREFIX}/var"
+		--sysconfdir "${EPREFIX}/etc/X11"
+		--buildtype $(usex debug debug plain)
+		-Db_ndebug=$(usex debug false true)
+		$(meson_use !minimal dri1)
+		$(meson_use !minimal dri2)
+		$(meson_use !minimal dri3)
+		$(meson_use !minimal glamor)
+		$(meson_use !minimal glx)
+		$(meson_use udev)
+		$(meson_use udev udev_kms)
+		$(meson_use unwind libunwind)
+		$(meson_use xcsecurity)
+		$(meson_use xephyr)
+		$(meson_use xnest)
+		$(meson_use xorg)
+		$(meson_use xvfb)
+		-Ddocs=false
+		-Ddrm=true
+		-Ddtrace=false
+		-Dipv6=true
+		-Dhal=false
+		-Dlinux_acpi=false
+		-Dlinux_apm=false
+		-Dsecure-rpc=false
+		-Dsha1=libcrypto
+		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
+	)
+
+	if [[ ${PV} == 9999 ]] ; then
+		# Gone in 21.1.x, but not in master.
+		emesonargs+=( -Dxwayland=false )
+	fi
+
+	if use systemd || use elogind; then
+		emesonargs+=(
+			-Dsystemd_logind=true
+			$(meson_use suid suid_wrapper)
+		)
+	else
+		emesonargs+=(
+			-Dsystemd_logind=false
+			-Dsuid_wrapper=false
+		)
+	fi
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# The meson build system does not support install-setuid
+	if ! use systemd || ! use elogind; then
+		if use suid; then
+			chmod u+s "${ED}"/usr/bin/Xorg
+		fi
+	fi
+
+	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
+
+	# install the @x11-module-rebuild set for Portage
+	insinto /usr/share/portage/config/sets
+	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2022-04-21 18:49 Sam James
  0 siblings, 0 replies; 24+ messages in thread
From: Sam James @ 2022-04-21 18:49 UTC (permalink / raw
  To: gentoo-commits

commit:     70d74dc715b01cd841ba931b9e3f3537eea50de6
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Apr 21 18:34:56 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Apr 21 18:49:34 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70d74dc7

x11-base/xorg-server: fix build with GCC 12

Note that this isn't just a boring build-time fix as it changes
the sizes needed for malloc, so revbump.

Closes: https://bugs.gentoo.org/839822
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/xorg-server-21.1.3-gcc12.patch           |  84 +++++++++
 x11-base/xorg-server/xorg-server-21.1.3-r2.ebuild  | 189 +++++++++++++++++++++
 2 files changed, 273 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.3-gcc12.patch b/x11-base/xorg-server/files/xorg-server-21.1.3-gcc12.patch
new file mode 100644
index 000000000000..d34809e0a776
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.3-gcc12.patch
@@ -0,0 +1,84 @@
+https://gitlab.freedesktop.org/xorg/xserver/-/commit/c6b0dcb82d4db07a2f32c09a8c09c85a5f57248e
+https://bugs.gentoo.org/839822
+
+From c6b0dcb82d4db07a2f32c09a8c09c85a5f57248e Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Thu, 20 Jan 2022 10:20:38 +0100
+Subject: [PATCH] render: Fix build with gcc 12
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The xserver fails to compile with the latest gcc 12:
+
+ render/picture.c: In function ‘CreateSolidPicture’:
+ render/picture.c:874:26: error: array subscript ‘union _SourcePict[0]’ is partly outside array bounds of ‘unsigned char[16]’ [-Werror=array-bounds]
+  874 |     pPicture->pSourcePict->type = SourcePictTypeSolidFill;
+      |                          ^~
+ render/picture.c:868:45: note: object of size 16 allocated by ‘malloc’
+  868 |     pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictSolidFill));
+      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ render/picture.c: In function ‘CreateLinearGradientPicture’:
+ render/picture.c:906:26: error: array subscript ‘union _SourcePict[0]’ is partly outside array bounds of ‘unsigned char[32]’ [-Werror=array-bounds]
+  906 |     pPicture->pSourcePict->linear.type = SourcePictTypeLinear;
+      |                          ^~
+ render/picture.c:899:45: note: object of size 32 allocated by ‘malloc’
+  899 |     pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictLinearGradient));
+      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ render/picture.c: In function ‘CreateConicalGradientPicture’:
+ render/picture.c:989:26: error: array subscript ‘union _SourcePict[0]’ is partly outside array bounds of ‘unsigned char[32]’ [-Werror=array-bounds]
+  989 |     pPicture->pSourcePict->conical.type = SourcePictTypeConical;
+      |                          ^~
+ render/picture.c:982:45: note: object of size 32 allocated by ‘malloc’
+  982 |     pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictConicalGradient));
+      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ cc1: some warnings being treated as errors
+ ninja: build stopped: subcommand failed.
+
+This is because gcc 12 has become stricter and raises a warning now.
+
+Fix the warning/error by allocating enough memory to store the union
+struct.
+
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+Acked-by: Michel Dänzer <mdaenzer@redhat.com>
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1256
+--- a/render/picture.c
++++ b/render/picture.c
+@@ -865,7 +865,7 @@ CreateSolidPicture(Picture pid, xRenderColor * color, int *error)
+     }
+ 
+     pPicture->id = pid;
+-    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictSolidFill));
++    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(SourcePict));
+     if (!pPicture->pSourcePict) {
+         *error = BadAlloc;
+         free(pPicture);
+@@ -896,7 +896,7 @@ CreateLinearGradientPicture(Picture pid, xPointFixed * p1, xPointFixed * p2,
+     }
+ 
+     pPicture->id = pid;
+-    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictLinearGradient));
++    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(SourcePict));
+     if (!pPicture->pSourcePict) {
+         *error = BadAlloc;
+         free(pPicture);
+@@ -936,7 +936,7 @@ CreateRadialGradientPicture(Picture pid, xPointFixed * inner,
+     }
+ 
+     pPicture->id = pid;
+-    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictRadialGradient));
++    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(SourcePict));
+     if (!pPicture->pSourcePict) {
+         *error = BadAlloc;
+         free(pPicture);
+@@ -979,7 +979,7 @@ CreateConicalGradientPicture(Picture pid, xPointFixed * center, xFixed angle,
+     }
+ 
+     pPicture->id = pid;
+-    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(PictConicalGradient));
++    pPicture->pSourcePict = (SourcePictPtr) malloc(sizeof(SourcePict));
+     if (!pPicture->pSourcePict) {
+         *error = BadAlloc;
+         free(pPicture);
+GitLab

diff --git a/x11-base/xorg-server/xorg-server-21.1.3-r2.ebuild b/x11-base/xorg-server/xorg-server-21.1.3-r2.ebuild
new file mode 100644
index 000000000000..4da014d53b9d
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-21.1.3-r2.ebuild
@@ -0,0 +1,189 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+XORG_TARBALL_SUFFIX="xz"
+XORG_EAUTORECONF="no"
+inherit xorg-3 meson
+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 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
+fi
+
+IUSE_SERVERS="xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
+RESTRICT="!test? ( test )"
+
+CDEPEND="
+	media-libs/libglvnd[X]
+	dev-libs/libbsd
+	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/libxcvt-0.1.0
+	>=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
+	>=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:= )
+	selinux? (
+		sys-process/audit
+		sys-libs/libselinux:=
+	)
+	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-2021.4.99.2
+	>=x11-libs/xtrans-1.3.5
+	media-fonts/font-util
+"
+RDEPEND="${CDEPEND}
+	!systemd? ( gui-libs/display-manager-init )
+	selinux? ( sec-policy/selinux-xserver )
+	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
+"
+BDEPEND="
+	sys-devel/flex
+"
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	elogind? ( udev )
+	?? ( elogind systemd )"
+
+UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-gcc12.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
+)
+
+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
+
+	local emesonargs=(
+		--localstatedir "${EPREFIX}/var"
+		--sysconfdir "${EPREFIX}/etc/X11"
+		--buildtype $(usex debug debug plain)
+		-Db_ndebug=$(usex debug false true)
+		$(meson_use !minimal dri1)
+		$(meson_use !minimal dri2)
+		$(meson_use !minimal dri3)
+		$(meson_use !minimal glamor)
+		$(meson_use !minimal glx)
+		$(meson_use udev)
+		$(meson_use udev udev_kms)
+		$(meson_use unwind libunwind)
+		$(meson_use xcsecurity)
+		$(meson_use selinux xselinux)
+		$(meson_use xephyr)
+		$(meson_use xnest)
+		$(meson_use xorg)
+		$(meson_use xvfb)
+		-Ddocs=false
+		-Ddrm=true
+		-Ddtrace=false
+		-Dipv6=true
+		-Dhal=false
+		-Dlinux_acpi=false
+		-Dlinux_apm=false
+		-Dsecure-rpc=false
+		-Dsha1=libcrypto
+		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
+	)
+
+	if [[ ${PV} == 9999 ]] ; then
+		# Gone in 21.1.x, but not in master.
+		emesonargs+=( -Dxwayland=false )
+	fi
+
+	if use systemd || use elogind; then
+		emesonargs+=(
+			-Dsystemd_logind=true
+			$(meson_use suid suid_wrapper)
+		)
+	else
+		emesonargs+=(
+			-Dsystemd_logind=false
+			-Dsuid_wrapper=false
+		)
+	fi
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# The meson build system does not support install-setuid
+	if ! use systemd && ! use elogind; then
+		if use suid; then
+			chmod u+s "${ED}"/usr/bin/Xorg
+		fi
+	fi
+
+	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
+
+	# install the @x11-module-rebuild set for Portage
+	insinto /usr/share/portage/config/sets
+	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2022-06-03  8:38 Sam James
  0 siblings, 0 replies; 24+ messages in thread
From: Sam James @ 2022-06-03  8:38 UTC (permalink / raw
  To: gentoo-commits

commit:     e90981351332cd70992e6458fc7aec721b883dce
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jun  3 08:38:02 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jun  3 08:38:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9098135

x11-base/xorg-server: backport present crash fix

Closes: https://bugs.gentoo.org/830482
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../xorg-server-21.1.3-present-null-check.patch    |  36 ++++
 x11-base/xorg-server/xorg-server-21.1.3-r3.ebuild  | 190 +++++++++++++++++++++
 2 files changed, 226 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.3-present-null-check.patch b/x11-base/xorg-server/files/xorg-server-21.1.3-present-null-check.patch
new file mode 100644
index 000000000000..15d653320708
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.3-present-null-check.patch
@@ -0,0 +1,36 @@
+https://gitlab.freedesktop.org/xorg/xserver/-/commit/22d58188
+https://bugs.gentoo.org/830482
+
+From: =?UTF-8?q?B=C5=82a=C5=BCej=20Szczygie=C5=82?= <spaz16@wp.pl>
+Date: Thu, 13 Jan 2022 00:47:27 +0100
+Subject: [PATCH] present: Check for NULL to prevent crash
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1275
+Signed-off-by: Błażej Szczygieł <spaz16@wp.pl>
+Tested-by: Aaron Plattner <aplattner@nvidia.com>
+--- a/present/present_scmd.c
++++ b/present/present_scmd.c
+@@ -158,6 +158,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window)
+     if (!screen_priv->info)
+         return NULL;
+ 
++    if (!screen_priv->info->get_crtc)
++        return NULL;
++
+     return (*screen_priv->info->get_crtc)(window);
+ }
+ 
+@@ -196,6 +199,9 @@ present_flush(WindowPtr window)
+     if (!screen_priv->info)
+         return;
+ 
++    if (!screen_priv->info->flush)
++        return;
++
+     (*screen_priv->info->flush) (window);
+ }
+ 
+GitLab

diff --git a/x11-base/xorg-server/xorg-server-21.1.3-r3.ebuild b/x11-base/xorg-server/xorg-server-21.1.3-r3.ebuild
new file mode 100644
index 000000000000..771c59b73114
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-21.1.3-r3.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+XORG_TARBALL_SUFFIX="xz"
+XORG_EAUTORECONF="no"
+inherit xorg-3 meson
+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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+IUSE_SERVERS="xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
+RESTRICT="!test? ( test )"
+
+CDEPEND="
+	media-libs/libglvnd[X]
+	dev-libs/libbsd
+	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/libxcvt-0.1.0
+	>=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
+	>=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:= )
+	selinux? (
+		sys-process/audit
+		sys-libs/libselinux:=
+	)
+	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-2021.4.99.2
+	>=x11-libs/xtrans-1.3.5
+	media-fonts/font-util
+"
+RDEPEND="${CDEPEND}
+	!systemd? ( gui-libs/display-manager-init )
+	selinux? ( sec-policy/selinux-xserver )
+	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
+"
+BDEPEND="
+	sys-devel/flex
+"
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	elogind? ( udev )
+	?? ( elogind systemd )"
+
+UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-gcc12.patch
+	"${FILESDIR}"/${P}-present-null-check.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
+)
+
+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
+
+	local emesonargs=(
+		--localstatedir "${EPREFIX}/var"
+		--sysconfdir "${EPREFIX}/etc/X11"
+		--buildtype $(usex debug debug plain)
+		-Db_ndebug=$(usex debug false true)
+		$(meson_use !minimal dri1)
+		$(meson_use !minimal dri2)
+		$(meson_use !minimal dri3)
+		$(meson_use !minimal glamor)
+		$(meson_use !minimal glx)
+		$(meson_use udev)
+		$(meson_use udev udev_kms)
+		$(meson_use unwind libunwind)
+		$(meson_use xcsecurity)
+		$(meson_use selinux xselinux)
+		$(meson_use xephyr)
+		$(meson_use xnest)
+		$(meson_use xorg)
+		$(meson_use xvfb)
+		-Ddocs=false
+		-Ddrm=true
+		-Ddtrace=false
+		-Dipv6=true
+		-Dhal=false
+		-Dlinux_acpi=false
+		-Dlinux_apm=false
+		-Dsecure-rpc=false
+		-Dsha1=libcrypto
+		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
+	)
+
+	if [[ ${PV} == 9999 ]] ; then
+		# Gone in 21.1.x, but not in master.
+		emesonargs+=( -Dxwayland=false )
+	fi
+
+	if use systemd || use elogind; then
+		emesonargs+=(
+			-Dsystemd_logind=true
+			$(meson_use suid suid_wrapper)
+		)
+	else
+		emesonargs+=(
+			-Dsystemd_logind=false
+			-Dsuid_wrapper=false
+		)
+	fi
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# The meson build system does not support install-setuid
+	if ! use systemd && ! use elogind; then
+		if use suid; then
+			chmod u+s "${ED}"/usr/bin/Xorg
+		fi
+	fi
+
+	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
+
+	# install the @x11-module-rebuild set for Portage
+	insinto /usr/share/portage/config/sets
+	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2022-12-05 10:21 Sam James
  0 siblings, 0 replies; 24+ messages in thread
From: Sam James @ 2022-12-05 10:21 UTC (permalink / raw
  To: gentoo-commits

commit:     632db727dc0c879fa4eb1aedcb747d9a9265d330
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  5 10:17:44 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec  5 10:19:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=632db727

x11-base/xorg-server: backport BadIDChoice fix w/ MaxClients

I was hoping this would slip into a release but it hasn't yet.

In any case, this fix has been on master for a while & I've
been running with it for months.

Closes: https://bugs.gentoo.org/857483
Closes: https://bugs.gentoo.org/875977
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/xorg-server-21.1.4-BadIDChoice.patch     | 59 ++++++++++++++++++++++
 ...er-9999.ebuild => xorg-server-21.1.4-r1.ebuild} |  7 ++-
 x11-base/xorg-server/xorg-server-9999.ebuild       |  2 +-
 3 files changed, 66 insertions(+), 2 deletions(-)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch b/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch
new file mode 100644
index 000000000000..def3c58714b4
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch
@@ -0,0 +1,59 @@
+https://bugs.gentoo.org/857483
+https://gitlab.freedesktop.org/xorg/xserver/-/issues/1310
+https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/953
+
+From f61307631203ab0266c035db07c2f776cf7c6cf4 Mon Sep 17 00:00:00 2001
+From: Olivier Fourdan <ofourdan@redhat.com>
+Date: Tue, 12 Jul 2022 14:44:48 +0200
+Subject: [PATCH] dix: Fix overzealous caching of ResourceClientBits()
+
+Commit c7311654 cached the value of ResourceClientBits(), but that value
+depends on the `MaxClients` value set either from the command line or
+from the configuration file.
+
+For the latter, a call to ResourceClientBits() is issued before the
+configuration file is read, meaning that the cached value is from the
+default, not from the maximum number of clients set in the configuration
+file.
+
+That obviously causes all sort of issues, including memory corruption
+and crashes of the Xserver when reaching the default limit value.
+
+To avoid that issue, also keep the LimitClient value, and recompute the
+ilog2() value if that changes, as on startup when the value is set from
+the the xorg.conf ServerFlags section.
+
+v2: Drop the `cache == 0` test
+    Rename cache vars
+
+Fixes: c7311654 - dix: cache ResourceClientBits() value
+Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1310
+Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
+Reviewed-by: Adam Jackson <ajax@redhat.com>
+(cherry picked from commit 2efa6d659508346358a1ef27b2393e18843f66a3)
+--- a/dix/resource.c
++++ b/dix/resource.c
+@@ -620,12 +620,15 @@ ilog2(int val)
+ unsigned int
+ ResourceClientBits(void)
+ {
+-    static unsigned int cached = 0;
++    static unsigned int cache_ilog2 = 0;
++    static unsigned int cache_limit = 0;
+ 
+-    if (cached == 0)
+-      cached = ilog2(LimitClients);
++    if (LimitClients != cache_limit) {
++        cache_limit = LimitClients;
++        cache_ilog2 = ilog2(LimitClients);
++    }
+ 
+-    return cached;
++    return cache_ilog2;
+ }
+ 
+ /*****************
+-- 
+GitLab
+
+

diff --git a/x11-base/xorg-server/xorg-server-9999.ebuild b/x11-base/xorg-server/xorg-server-21.1.4-r1.ebuild
similarity index 96%
copy from x11-base/xorg-server/xorg-server-9999.ebuild
copy to x11-base/xorg-server/xorg-server-21.1.4-r1.ebuild
index 316e0c3ba53c..85f83743b7ff 100644
--- a/x11-base/xorg-server/xorg-server-9999.ebuild
+++ b/x11-base/xorg-server/xorg-server-21.1.4-r1.ebuild
@@ -44,7 +44,7 @@ CDEPEND="
 		>=x11-libs/libX11-1.1.5
 	)
 	xephyr? (
-		x11-libs/libxcb[xkb]
+		x11-libs/libxcb
 		x11-libs/xcb-util
 		x11-libs/xcb-util-image
 		x11-libs/xcb-util-keysyms
@@ -95,6 +95,11 @@ REQUIRED_USE="!minimal? (
 	elogind? ( udev )
 	?? ( elogind systemd )"
 
+UPSTREAMED_PATCHES=(
+	# https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/953
+	"${FILESDIR}"/${PN}-21.1.4-BadIDChoice.patch
+)
+
 PATCHES=(
 	"${UPSTREAMED_PATCHES[@]}"
 	"${FILESDIR}"/${PN}-1.12-unloadsubmodule.patch

diff --git a/x11-base/xorg-server/xorg-server-9999.ebuild b/x11-base/xorg-server/xorg-server-9999.ebuild
index 316e0c3ba53c..b70fa161d379 100644
--- a/x11-base/xorg-server/xorg-server-9999.ebuild
+++ b/x11-base/xorg-server/xorg-server-9999.ebuild
@@ -44,7 +44,7 @@ CDEPEND="
 		>=x11-libs/libX11-1.1.5
 	)
 	xephyr? (
-		x11-libs/libxcb[xkb]
+		x11-libs/libxcb
 		x11-libs/xcb-util
 		x11-libs/xcb-util-image
 		x11-libs/xcb-util-keysyms


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2023-02-26 23:45 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2023-02-26 23:45 UTC (permalink / raw
  To: gentoo-commits

commit:     edb9d8bbd529347bd374f60b841c9899a12d6dae
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sun Feb 26 23:44:26 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sun Feb 26 23:44:29 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=edb9d8bb

x11-base/xorg-server: Drop old versions

Bug: https://bugs.gentoo.org/893438
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   1 -
 .../files/xorg-server-21.1.4-BadIDChoice.patch     |  59 -------
 x11-base/xorg-server/xorg-server-21.1.6.ebuild     | 195 ---------------------
 3 files changed, 255 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index 29a64821bd89..b061ccbf2fac 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,2 +1 @@
-DIST xorg-server-21.1.6.tar.xz 4977496 BLAKE2B 8bcfa0a29f7b84b3ba9357d8ae9b1c7a5dc108159cf059f9c76c2c15f00be0d34964a3240937d146ae5f58a2d94deb091facacab984f8f905848bef5679cf46a SHA512 5e3cf879facf3a04aa64b7f6129226ea68a97109a7daca5146b57b4c707cc76a4fbad1924997dd319efd8c8c20eb5bb59570a719101b76ae07e923b7e9656239
 DIST xorg-server-21.1.7.tar.xz 4933292 BLAKE2B 327e217dcd632d9c013a330dbb0f93bf3c1bf6088906fcb3ff2959574fb6958c215a2ab6ed41b57250a9f200bcc3987bf87c5ffd11c7a7088c7fe6f1a245bd4b SHA512 e2a093381e28da9b2aa700c6609349fa851f4ca8df23c776f30e4e2733e7a6c1b257576b93f4c4e87fb09df901385bf52528982f6e7a6ad469597aeae8640bb5

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch b/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch
deleted file mode 100644
index def3c58714b4..000000000000
--- a/x11-base/xorg-server/files/xorg-server-21.1.4-BadIDChoice.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-https://bugs.gentoo.org/857483
-https://gitlab.freedesktop.org/xorg/xserver/-/issues/1310
-https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/953
-
-From f61307631203ab0266c035db07c2f776cf7c6cf4 Mon Sep 17 00:00:00 2001
-From: Olivier Fourdan <ofourdan@redhat.com>
-Date: Tue, 12 Jul 2022 14:44:48 +0200
-Subject: [PATCH] dix: Fix overzealous caching of ResourceClientBits()
-
-Commit c7311654 cached the value of ResourceClientBits(), but that value
-depends on the `MaxClients` value set either from the command line or
-from the configuration file.
-
-For the latter, a call to ResourceClientBits() is issued before the
-configuration file is read, meaning that the cached value is from the
-default, not from the maximum number of clients set in the configuration
-file.
-
-That obviously causes all sort of issues, including memory corruption
-and crashes of the Xserver when reaching the default limit value.
-
-To avoid that issue, also keep the LimitClient value, and recompute the
-ilog2() value if that changes, as on startup when the value is set from
-the the xorg.conf ServerFlags section.
-
-v2: Drop the `cache == 0` test
-    Rename cache vars
-
-Fixes: c7311654 - dix: cache ResourceClientBits() value
-Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1310
-Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
-Reviewed-by: Adam Jackson <ajax@redhat.com>
-(cherry picked from commit 2efa6d659508346358a1ef27b2393e18843f66a3)
---- a/dix/resource.c
-+++ b/dix/resource.c
-@@ -620,12 +620,15 @@ ilog2(int val)
- unsigned int
- ResourceClientBits(void)
- {
--    static unsigned int cached = 0;
-+    static unsigned int cache_ilog2 = 0;
-+    static unsigned int cache_limit = 0;
- 
--    if (cached == 0)
--      cached = ilog2(LimitClients);
-+    if (LimitClients != cache_limit) {
-+        cache_limit = LimitClients;
-+        cache_ilog2 = ilog2(LimitClients);
-+    }
- 
--    return cached;
-+    return cache_ilog2;
- }
- 
- /*****************
--- 
-GitLab
-
-

diff --git a/x11-base/xorg-server/xorg-server-21.1.6.ebuild b/x11-base/xorg-server/xorg-server-21.1.6.ebuild
deleted file mode 100644
index 552f91189bcb..000000000000
--- a/x11-base/xorg-server/xorg-server-21.1.6.ebuild
+++ /dev/null
@@ -1,195 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-XORG_TARBALL_SUFFIX="xz"
-XORG_EAUTORECONF="no"
-inherit flag-o-matic xorg-3 meson
-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 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-IUSE_SERVERS="xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
-	media-libs/libglvnd[X]
-	dev-libs/libbsd
-	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
-	xorg? (
-		>=x11-libs/libxcvt-0.1.0
-	)
-	xnest? (
-		>=x11-libs/libXext-1.0.99.4
-		>=x11-libs/libX11-1.1.5
-	)
-	xephyr? (
-		x11-libs/libxcb
-		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? (
-		>=media-libs/mesa-18[X(+),egl(+),gbm(+)]
-		>=media-libs/libepoxy-1.5.4[X,egl(+)]
-	)
-	udev? ( virtual/libudev:= )
-	unwind? ( sys-libs/libunwind:= )
-	selinux? (
-		sys-process/audit
-		sys-libs/libselinux:=
-	)
-	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-2021.4.99.2
-	>=x11-libs/xtrans-1.3.5
-	media-fonts/font-util
-	test? ( >=x11-libs/libxcvt-0.1.0 )
-"
-RDEPEND="${CDEPEND}
-	!systemd? ( gui-libs/display-manager-init )
-	selinux? ( sec-policy/selinux-xserver )
-	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
-"
-BDEPEND="
-	sys-devel/flex
-"
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	elogind? ( udev )
-	?? ( elogind systemd )"
-
-UPSTREAMED_PATCHES=(
-	# https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/953
-	"${FILESDIR}"/${PN}-21.1.4-BadIDChoice.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
-)
-
-src_configure() {
-	# bug #835653
-	use x86 && replace-flags -Os -O2
-
-	# 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
-	local emesonargs=(
-		--localstatedir "${EPREFIX}/var"
-		--sysconfdir "${EPREFIX}/etc/X11"
-		--buildtype $(usex debug debug plain)
-		-Db_ndebug=$(usex debug false true)
-		$(meson_use !minimal dri1)
-		$(meson_use !minimal dri2)
-		$(meson_use !minimal dri3)
-		$(meson_use !minimal glamor)
-		$(meson_use !minimal glx)
-		$(meson_use udev)
-		$(meson_use udev udev_kms)
-		$(meson_use unwind libunwind)
-		$(meson_use xcsecurity)
-		$(meson_use selinux xselinux)
-		$(meson_use xephyr)
-		$(meson_use xnest)
-		$(meson_use xorg)
-		$(meson_use xvfb)
-		-Ddocs=false
-		-Ddrm=true
-		-Ddtrace=false
-		-Dipv6=true
-		-Dhal=false
-		-Dlinux_acpi=false
-		-Dlinux_apm=false
-		-Dsecure-rpc=false
-		-Dsha1=libcrypto
-		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
-	)
-
-	if [[ ${PV} == 9999 ]] ; then
-		# Gone in 21.1.x, but not in master.
-		emesonargs+=( -Dxwayland=false )
-	fi
-
-	if use systemd || use elogind; then
-		emesonargs+=(
-			-Dsystemd_logind=true
-			$(meson_use suid suid_wrapper)
-		)
-	else
-		emesonargs+=(
-			-Dsystemd_logind=false
-			-Dsuid_wrapper=false
-		)
-	fi
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# The meson build system does not support install-setuid
-	if ! use systemd && ! use elogind; then
-		if use suid; then
-			chmod u+s "${ED}"/usr/bin/Xorg
-		fi
-	fi
-
-	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
-
-	# install the @x11-module-rebuild set for Portage
-	insinto /usr/share/portage/config/sets
-	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2023-07-22 17:24 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2023-07-22 17:24 UTC (permalink / raw
  To: gentoo-commits

commit:     de718a87b2cedfc40155f05af6fd477b14cabcb8
Author:     Ahmed Charles <me <AT> ahmedcharles <DOT> com>
AuthorDate: Thu Jul 20 18:53:12 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Jul 22 17:24:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de718a87

x11-base/xorg-server: fix xf86-video-nouveau build

Closes: https://bugs.gentoo.org/885763
Closes: https://github.com/gentoo/gentoo/pull/31985
Signed-off-by: Ahmed Charles <me <AT> ahmedcharles.com>
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 .../xorg-server/files/xorg-server-21.1.8-wfb.patch |  43 +++++
 x11-base/xorg-server/xorg-server-21.1.8-r2.ebuild  | 195 +++++++++++++++++++++
 2 files changed, 238 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.8-wfb.patch b/x11-base/xorg-server/files/xorg-server-21.1.8-wfb.patch
new file mode 100644
index 000000000000..48cdbd017088
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.8-wfb.patch
@@ -0,0 +1,43 @@
+https://bugs.gentoo.org/885763
+https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1114
+https://gitlab.freedesktop.org/xorg/xserver/-/commit/34a430a16ec2cb9851b1f2bc7fc2117e19b9fcc7
+
+From 34a430a16ec2cb9851b1f2bc7fc2117e19b9fcc7 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Thu, 13 Apr 2023 15:45:58 +0200
+Subject: [PATCH] fb: Declare wfbFinishScreenInit, wfbScreenInit for
+ !FB_ACCESS_WRAPPER
+
+xf86-video-nouveau calls wfbScreenInit without defining
+FB_ACCESS_WRAPPER (which has other unintended side effects).
+Presently, this compiles and links because compilers still support
+implicit function declarations, but this is going to change fairly
+soon.  This seems to be the most straightforward change to keep
+the driver building.
+---
+ fb/fb.h | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/fb/fb.h b/fb/fb.h
+index 08143a0d49..309f15294c 100644
+--- a/fb/fb.h
++++ b/fb/fb.h
+@@ -1027,7 +1027,6 @@ extern _X_EXPORT Bool
+                int dpiy, int width,     /* pixel width of frame buffer */
+                int bpp);        /* bits per pixel of frame buffer */
+ 
+-#ifdef FB_ACCESS_WRAPPER
+ extern _X_EXPORT Bool
+ wfbFinishScreenInit(ScreenPtr pScreen,
+                     void *pbits,
+@@ -1049,7 +1048,6 @@ wfbScreenInit(ScreenPtr pScreen,
+               int width,
+               int bpp,
+               SetupWrapProcPtr setupWrap, FinishWrapProcPtr finishWrap);
+-#endif
+ 
+ extern _X_EXPORT Bool
+ fbFinishScreenInit(ScreenPtr pScreen,
+-- 
+GitLab
+

diff --git a/x11-base/xorg-server/xorg-server-21.1.8-r2.ebuild b/x11-base/xorg-server/xorg-server-21.1.8-r2.ebuild
new file mode 100644
index 000000000000..ce07240d3cc7
--- /dev/null
+++ b/x11-base/xorg-server/xorg-server-21.1.8-r2.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+XORG_TARBALL_SUFFIX="xz"
+XORG_EAUTORECONF="no"
+inherit flag-o-matic xorg-3 meson
+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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+IUSE_SERVERS="xephyr xnest xorg xvfb"
+IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
+RESTRICT="!test? ( test )"
+
+CDEPEND="
+	media-libs/libglvnd[X]
+	dev-libs/libbsd
+	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
+	xorg? (
+		>=x11-libs/libxcvt-0.1.0
+	)
+	xnest? (
+		>=x11-libs/libXext-1.0.99.4
+		>=x11-libs/libX11-1.1.5
+	)
+	xephyr? (
+		x11-libs/libxcb
+		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? (
+		>=media-libs/mesa-18[X(+),egl(+),gbm(+)]
+		>=media-libs/libepoxy-1.5.4[X,egl(+)]
+	)
+	udev? ( virtual/libudev:= )
+	unwind? ( sys-libs/libunwind:= )
+	selinux? (
+		sys-process/audit
+		sys-libs/libselinux:=
+	)
+	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-2021.4.99.2
+	>=x11-libs/xtrans-1.3.5
+	media-fonts/font-util
+	test? ( >=x11-libs/libxcvt-0.1.0 )
+"
+RDEPEND="${CDEPEND}
+	!systemd? ( gui-libs/display-manager-init )
+	selinux? ( sec-policy/selinux-xserver )
+	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
+"
+BDEPEND="
+	sys-devel/flex
+"
+PDEPEND="
+	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
+
+REQUIRED_USE="!minimal? (
+		|| ( ${IUSE_SERVERS} )
+	)
+	elogind? ( udev )
+	?? ( elogind systemd )"
+
+UPSTREAMED_PATCHES=(
+	"${FILESDIR}"/${P}-deadlock.patch
+	"${FILESDIR}"/${P}-wfb.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
+)
+
+src_configure() {
+	# bug #835653
+	use x86 && replace-flags -Os -O2
+
+	# 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
+	local emesonargs=(
+		--localstatedir "${EPREFIX}/var"
+		--sysconfdir "${EPREFIX}/etc/X11"
+		--buildtype $(usex debug debug plain)
+		-Db_ndebug=$(usex debug false true)
+		$(meson_use !minimal dri1)
+		$(meson_use !minimal dri2)
+		$(meson_use !minimal dri3)
+		$(meson_use !minimal glamor)
+		$(meson_use !minimal glx)
+		$(meson_use udev)
+		$(meson_use udev udev_kms)
+		$(meson_use unwind libunwind)
+		$(meson_use xcsecurity)
+		$(meson_use selinux xselinux)
+		$(meson_use xephyr)
+		$(meson_use xnest)
+		$(meson_use xorg)
+		$(meson_use xvfb)
+		-Ddocs=false
+		-Ddrm=true
+		-Ddtrace=false
+		-Dipv6=true
+		-Dhal=false
+		-Dlinux_acpi=false
+		-Dlinux_apm=false
+		-Dsecure-rpc=false
+		-Dsha1=libcrypto
+		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
+	)
+
+	if [[ ${PV} == 9999 ]] ; then
+		# Gone in 21.1.x, but not in master.
+		emesonargs+=( -Dxwayland=false )
+	fi
+
+	if use systemd || use elogind; then
+		emesonargs+=(
+			-Dsystemd_logind=true
+			$(meson_use suid suid_wrapper)
+		)
+	else
+		emesonargs+=(
+			-Dsystemd_logind=false
+			-Dsuid_wrapper=false
+		)
+	fi
+
+	meson_src_configure
+}
+
+src_install() {
+	meson_src_install
+
+	# The meson build system does not support install-setuid
+	if ! use systemd && ! use elogind; then
+		if use suid; then
+			chmod u+s "${ED}"/usr/bin/Xorg
+		fi
+	fi
+
+	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
+
+	# install the @x11-module-rebuild set for Portage
+	insinto /usr/share/portage/config/sets
+	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
+}
+
+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
+}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2024-01-17 16:36 Matt Turner
  0 siblings, 0 replies; 24+ messages in thread
From: Matt Turner @ 2024-01-17 16:36 UTC (permalink / raw
  To: gentoo-commits

commit:     af7147991b6712d002ebe15e1c667752e879a30e
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 17 16:34:35 2024 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Wed Jan 17 16:36:02 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=af714799

x11-base/xorg-server: Drop old versions

Bug: https://bugs.gentoo.org/919803
Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 x11-base/xorg-server/Manifest                      |   1 -
 ...1.9-xephyr-Don-t-check-for-SeatId-anymore.patch |  66 -------
 x11-base/xorg-server/xorg-server-21.1.10.ebuild    | 192 --------------------
 x11-base/xorg-server/xorg-server-21.1.9.ebuild     | 194 ---------------------
 4 files changed, 453 deletions(-)

diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest
index a95d91d46cc0..129869f4ebbc 100644
--- a/x11-base/xorg-server/Manifest
+++ b/x11-base/xorg-server/Manifest
@@ -1,3 +1,2 @@
 DIST xorg-server-21.1.10.tar.xz 4935984 BLAKE2B c06d5f09e79b608d9e37f43ed05a0932d9e195cc0da418621c2db45be85ccceef38b14631a4b90e78468c845e4852dc07c65208138b93975f091b2139e437a60 SHA512 8135d9b7c0c71f427ba0a3b80741fee4f6ae195779399b73261a00858882f3516e367a08e2da1403734b04eacabae9aa231e5375eff23b57a3ff764e9caf8926
 DIST xorg-server-21.1.11.tar.xz 4985464 BLAKE2B 0a18840979bb8b20b02eca9d737f20ddcf92a4771386074c38692df8a1c9b0f471af2211f3006f845ad0dd887b3844b7e7aac761bc12fc4e4177f1ada32ec503 SHA512 ad5edacbe8c7e2ebe6b4a690af94c7ea5ebc781d00b0e58ae2d273c78ceee2fa00b86d10479ad69da1b3233490619bae5a33db64c967c24bbfc5d5d39ddce1cb
-DIST xorg-server-21.1.9.tar.xz 4935860 BLAKE2B 8e0a2e0f5fc4d06a08c1424fe618da9822e951f5b744b4cac1b1e14305ab598b162e4f08fb53ba5e60d0001257216755a576b470c961c26a909d66e9a46d1c77 SHA512 9044e1b9222616fb63aea444b75f4ca6582edb7d899018f8ea30359e57edf04b1555e69397ebc4d288f7e36d6b82a54dde3895f11d414573d229e908ac17bfe8

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.9-xephyr-Don-t-check-for-SeatId-anymore.patch b/x11-base/xorg-server/files/xorg-server-21.1.9-xephyr-Don-t-check-for-SeatId-anymore.patch
deleted file mode 100644
index 64581c9d0a18..000000000000
--- a/x11-base/xorg-server/files/xorg-server-21.1.9-xephyr-Don-t-check-for-SeatId-anymore.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-https://bugs.gentoo.org/884221
-https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1192
-
-From 4c03b67d334b05b814239420776f2fdd4c4a98ac Mon Sep 17 00:00:00 2001
-From: nerdopolis <bluescreen_avenger@verizon.net>
-Date: Tue, 11 Jan 2022 18:41:42 -0500
-Subject: [PATCH xserver] xephyr: Don't check for SeatId anymore
-
-After a change for the xserver to automatically determine the seat
-based on the XDG_SEAT variable, xephyr stopped working. This was
-because of an old feature where xephyr used to handle evdev
-directly. This was dropped some time ago, and now this check is
-not needed
----
- hw/kdrive/ephyr/ephyrinit.c | 34 ++++++++++++++++------------------
- 1 file changed, 16 insertions(+), 18 deletions(-)
-
-diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c
-index 020461db2..09cd28cb3 100644
---- a/hw/kdrive/ephyr/ephyrinit.c
-+++ b/hw/kdrive/ephyr/ephyrinit.c
-@@ -70,25 +70,23 @@ InitInput(int argc, char **argv)
-     KdKeyboardInfo *ki;
-     KdPointerInfo *pi;
- 
--    if (!SeatId) {
--        KdAddKeyboardDriver(&EphyrKeyboardDriver);
--        KdAddPointerDriver(&EphyrMouseDriver);
--
--        if (!kdHasKbd) {
--            ki = KdNewKeyboard();
--            if (!ki)
--                FatalError("Couldn't create Xephyr keyboard\n");
--            ki->driver = &EphyrKeyboardDriver;
--            KdAddKeyboard(ki);
--        }
-+    KdAddKeyboardDriver(&EphyrKeyboardDriver);
-+    KdAddPointerDriver(&EphyrMouseDriver);
-+
-+    if (!kdHasKbd) {
-+        ki = KdNewKeyboard();
-+        if (!ki)
-+            FatalError("Couldn't create Xephyr keyboard\n");
-+        ki->driver = &EphyrKeyboardDriver;
-+        KdAddKeyboard(ki);
-+    }
- 
--        if (!kdHasPointer) {
--            pi = KdNewPointer();
--            if (!pi)
--                FatalError("Couldn't create Xephyr pointer\n");
--            pi->driver = &EphyrMouseDriver;
--            KdAddPointer(pi);
--        }
-+    if (!kdHasPointer) {
-+        pi = KdNewPointer();
-+        if (!pi)
-+            FatalError("Couldn't create Xephyr pointer\n");
-+        pi->driver = &EphyrMouseDriver;
-+        KdAddPointer(pi);
-     }
- 
-     KdInitInput();
--- 
-2.41.0
-

diff --git a/x11-base/xorg-server/xorg-server-21.1.10.ebuild b/x11-base/xorg-server/xorg-server-21.1.10.ebuild
deleted file mode 100644
index 3d6ab7fc6830..000000000000
--- a/x11-base/xorg-server/xorg-server-21.1.10.ebuild
+++ /dev/null
@@ -1,192 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-XORG_TARBALL_SUFFIX="xz"
-XORG_EAUTORECONF="no"
-inherit flag-o-matic xorg-3 meson
-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 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
-fi
-
-IUSE_SERVERS="xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
-	media-libs/libglvnd[X]
-	dev-libs/libbsd
-	dev-libs/openssl:0=
-	>=x11-apps/iceauth-1.0.2
-	>=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
-	xorg? (
-		>=x11-libs/libxcvt-0.1.0
-	)
-	xnest? (
-		>=x11-libs/libXext-1.0.99.4
-		>=x11-libs/libX11-1.1.5
-	)
-	xephyr? (
-		x11-libs/libxcb
-		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? (
-		>=media-libs/mesa-18[X(+),egl(+),gbm(+)]
-		>=media-libs/libepoxy-1.5.4[X,egl(+)]
-	)
-	udev? ( virtual/libudev:= )
-	unwind? ( sys-libs/libunwind:= )
-	selinux? (
-		sys-process/audit
-		sys-libs/libselinux:=
-	)
-	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-2021.4.99.2
-	>=x11-libs/xtrans-1.3.5
-	media-fonts/font-util
-	test? ( >=x11-libs/libxcvt-0.1.0 )
-"
-RDEPEND="${CDEPEND}
-	!systemd? ( gui-libs/display-manager-init )
-	selinux? ( sec-policy/selinux-xserver )
-	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
-"
-BDEPEND="
-	app-alternatives/lex
-"
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	elogind? ( udev )
-	?? ( elogind systemd )"
-
-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() {
-	# bug #835653
-	use x86 && replace-flags -Os -O2
-
-	# 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
-	local emesonargs=(
-		--localstatedir "${EPREFIX}/var"
-		--sysconfdir "${EPREFIX}/etc/X11"
-		--buildtype $(usex debug debug plain)
-		-Db_ndebug=$(usex debug false true)
-		$(meson_use !minimal dri1)
-		$(meson_use !minimal dri2)
-		$(meson_use !minimal dri3)
-		$(meson_use !minimal glamor)
-		$(meson_use !minimal glx)
-		$(meson_use udev)
-		$(meson_use udev udev_kms)
-		$(meson_use unwind libunwind)
-		$(meson_use xcsecurity)
-		$(meson_use selinux xselinux)
-		$(meson_use xephyr)
-		$(meson_use xnest)
-		$(meson_use xorg)
-		$(meson_use xvfb)
-		-Ddocs=false
-		-Ddrm=true
-		-Ddtrace=false
-		-Dipv6=true
-		-Dhal=false
-		-Dlinux_acpi=false
-		-Dlinux_apm=false
-		-Dsecure-rpc=false
-		-Dsha1=libcrypto
-		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
-	)
-
-	if [[ ${PV} == 9999 ]] ; then
-		# Gone in 21.1.x, but not in master.
-		emesonargs+=( -Dxwayland=false )
-	fi
-
-	if use systemd || use elogind; then
-		emesonargs+=(
-			-Dsystemd_logind=true
-			$(meson_use suid suid_wrapper)
-		)
-	else
-		emesonargs+=(
-			-Dsystemd_logind=false
-			-Dsuid_wrapper=false
-		)
-	fi
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# The meson build system does not support install-setuid
-	if ! use systemd && ! use elogind; then
-		if use suid; then
-			chmod u+s "${ED}"/usr/bin/Xorg
-		fi
-	fi
-
-	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
-
-	# install the @x11-module-rebuild set for Portage
-	insinto /usr/share/portage/config/sets
-	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
-}
-
-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
-}

diff --git a/x11-base/xorg-server/xorg-server-21.1.9.ebuild b/x11-base/xorg-server/xorg-server-21.1.9.ebuild
deleted file mode 100644
index 525f5a0f366b..000000000000
--- a/x11-base/xorg-server/xorg-server-21.1.9.ebuild
+++ /dev/null
@@ -1,194 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-XORG_TARBALL_SUFFIX="xz"
-XORG_EAUTORECONF="no"
-inherit flag-o-matic xorg-3 meson
-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 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-fi
-
-IUSE_SERVERS="xephyr xnest xorg xvfb"
-IUSE="${IUSE_SERVERS} debug +elogind minimal selinux suid systemd test +udev unwind xcsecurity"
-RESTRICT="!test? ( test )"
-
-CDEPEND="
-	media-libs/libglvnd[X]
-	dev-libs/libbsd
-	dev-libs/openssl:0=
-	>=x11-apps/iceauth-1.0.2
-	>=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
-	xorg? (
-		>=x11-libs/libxcvt-0.1.0
-	)
-	xnest? (
-		>=x11-libs/libXext-1.0.99.4
-		>=x11-libs/libX11-1.1.5
-	)
-	xephyr? (
-		x11-libs/libxcb
-		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? (
-		>=media-libs/mesa-18[X(+),egl(+),gbm(+)]
-		>=media-libs/libepoxy-1.5.4[X,egl(+)]
-	)
-	udev? ( virtual/libudev:= )
-	unwind? ( sys-libs/libunwind:= )
-	selinux? (
-		sys-process/audit
-		sys-libs/libselinux:=
-	)
-	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-2021.4.99.2
-	>=x11-libs/xtrans-1.3.5
-	media-fonts/font-util
-	test? ( >=x11-libs/libxcvt-0.1.0 )
-"
-RDEPEND="${CDEPEND}
-	!systemd? ( gui-libs/display-manager-init )
-	selinux? ( sec-policy/selinux-xserver )
-	xorg? ( >=x11-apps/xinit-1.3.3-r1 )
-"
-BDEPEND="
-	app-alternatives/lex
-"
-PDEPEND="
-	xorg? ( >=x11-base/xorg-drivers-$(ver_cut 1-2) )"
-
-REQUIRED_USE="!minimal? (
-		|| ( ${IUSE_SERVERS} )
-	)
-	elogind? ( udev )
-	?? ( elogind systemd )"
-
-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
-
-	"${FILESDIR}"/${P}-xephyr-Don-t-check-for-SeatId-anymore.patch
-)
-
-src_configure() {
-	# bug #835653
-	use x86 && replace-flags -Os -O2
-
-	# 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
-	local emesonargs=(
-		--localstatedir "${EPREFIX}/var"
-		--sysconfdir "${EPREFIX}/etc/X11"
-		--buildtype $(usex debug debug plain)
-		-Db_ndebug=$(usex debug false true)
-		$(meson_use !minimal dri1)
-		$(meson_use !minimal dri2)
-		$(meson_use !minimal dri3)
-		$(meson_use !minimal glamor)
-		$(meson_use !minimal glx)
-		$(meson_use udev)
-		$(meson_use udev udev_kms)
-		$(meson_use unwind libunwind)
-		$(meson_use xcsecurity)
-		$(meson_use selinux xselinux)
-		$(meson_use xephyr)
-		$(meson_use xnest)
-		$(meson_use xorg)
-		$(meson_use xvfb)
-		-Ddocs=false
-		-Ddrm=true
-		-Ddtrace=false
-		-Dipv6=true
-		-Dhal=false
-		-Dlinux_acpi=false
-		-Dlinux_apm=false
-		-Dsecure-rpc=false
-		-Dsha1=libcrypto
-		-Dxkb_output_dir="${EPREFIX}/var/lib/xkb"
-	)
-
-	if [[ ${PV} == 9999 ]] ; then
-		# Gone in 21.1.x, but not in master.
-		emesonargs+=( -Dxwayland=false )
-	fi
-
-	if use systemd || use elogind; then
-		emesonargs+=(
-			-Dsystemd_logind=true
-			$(meson_use suid suid_wrapper)
-		)
-	else
-		emesonargs+=(
-			-Dsystemd_logind=false
-			-Dsuid_wrapper=false
-		)
-	fi
-
-	meson_src_configure
-}
-
-src_install() {
-	meson_src_install
-
-	# The meson build system does not support install-setuid
-	if ! use systemd && ! use elogind; then
-		if use suid; then
-			chmod u+s "${ED}"/usr/bin/Xorg
-		fi
-	fi
-
-	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
-
-	# install the @x11-module-rebuild set for Portage
-	insinto /usr/share/portage/config/sets
-	newins "${FILESDIR}"/xorg-sets.conf xorg.conf
-}
-
-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
-}


^ permalink raw reply related	[flat|nested] 24+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/
@ 2024-05-21 11:48 Sam James
  0 siblings, 0 replies; 24+ messages in thread
From: Sam James @ 2024-05-21 11:48 UTC (permalink / raw
  To: gentoo-commits

commit:     509f72b7bab93d0aa2a5ff1260937f958fdd560b
Author:     Gabi Falk <gabifalk <AT> gmx <DOT> com>
AuthorDate: Sat May 11 13:00:00 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue May 21 11:48:20 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=509f72b7

x11-base/xorg-server: backport upstream patch to port to modern C (C99)

Closes: https://bugs.gentoo.org/925876
Link: https://gitlab.freedesktop.org/xorg/xserver/-/commit/e89edec497bac581ca9b614fb00c25365580f045
Signed-off-by: Gabi Falk <gabifalk <AT> gmx.com>
Closes: https://github.com/gentoo/gentoo/pull/36640
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/xorg-server-21.1.10-fix-c99-32bit.patch  | 54 ++++++++++++++++++++++
 ...1.1.13.ebuild => xorg-server-21.1.13-r1.ebuild} |  2 +
 2 files changed, 56 insertions(+)

diff --git a/x11-base/xorg-server/files/xorg-server-21.1.10-fix-c99-32bit.patch b/x11-base/xorg-server/files/xorg-server-21.1.10-fix-c99-32bit.patch
new file mode 100644
index 000000000000..40afef18cead
--- /dev/null
+++ b/x11-base/xorg-server/files/xorg-server-21.1.10-fix-c99-32bit.patch
@@ -0,0 +1,54 @@
+https://bugs.gentoo.org/925876
+https://gitlab.freedesktop.org/xorg/xserver/-/commit/e89edec497bac581ca9b614fb00c25365580f045
+
+From e89edec497bac581ca9b614fb00c25365580f045 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= <jexposit@redhat.com>
+Date: Fri, 19 Jan 2024 13:05:51 +0100
+Subject: [PATCH] ephyr: Fix incompatible pointer type build error
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fix a compilation error on 32 bits architectures with gcc 14:
+
+  ephyr_glamor_xv.c: In function ‘ephyr_glamor_xv_init’:
+  ephyr_glamor_xv.c:154:31: error: assignment to ‘SetPortAttributeFuncPtr’ {aka ‘int (*)(struct _KdScreenInfo *, long unsigned int,  int,  void *)’} from incompatible pointer type ‘int (*)(KdScreenInfo *, Atom,  INT32,  void *)’ {aka ‘int (*)(struct _KdScreenInfo *, long unsigned int,  long int,  void *)’} [-Wincompatible-pointer-types]
+    154 |     adaptor->SetPortAttribute = ephyr_glamor_xv_set_port_attribute;
+        |                               ^
+  ephyr_glamor_xv.c:155:31: error: assignment to ‘GetPortAttributeFuncPtr’ {aka ‘int (*)(struct _KdScreenInfo *, long unsigned int,  int *, void *)’} from incompatible pointer type ‘int (*)(KdScreenInfo *, Atom,  INT32 *, void *)’ {aka ‘int (*)(struct _KdScreenInfo *, long unsigned int,  long int *, void *)’} [-Wincompatible-pointer-types]
+    155 |     adaptor->GetPortAttribute = ephyr_glamor_xv_get_port_attribute;
+        |                               ^
+
+Build error logs:
+https://koji.fedoraproject.org/koji/taskinfo?taskID=111964273
+
+Signed-off-by: José Expósito <jexposit@redhat.com>
+---
+ hw/kdrive/ephyr/ephyr_glamor_xv.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/hw/kdrive/ephyr/ephyr_glamor_xv.c b/hw/kdrive/ephyr/ephyr_glamor_xv.c
+index 4dd15cf41..b5eae48c8 100644
+--- a/hw/kdrive/ephyr/ephyr_glamor_xv.c
++++ b/hw/kdrive/ephyr/ephyr_glamor_xv.c
+@@ -50,16 +50,16 @@ ephyr_glamor_xv_stop_video(KdScreenInfo *screen, void *data, Bool cleanup)
+ 
+ static int
+ ephyr_glamor_xv_set_port_attribute(KdScreenInfo *screen,
+-                                   Atom attribute, INT32 value, void *data)
++                                   Atom attribute, int value, void *data)
+ {
+-    return glamor_xv_set_port_attribute(data, attribute, value);
++    return glamor_xv_set_port_attribute(data, attribute, (INT32)value);
+ }
+ 
+ static int
+ ephyr_glamor_xv_get_port_attribute(KdScreenInfo *screen,
+-                                   Atom attribute, INT32 *value, void *data)
++                                   Atom attribute, int *value, void *data)
+ {
+-    return glamor_xv_get_port_attribute(data, attribute, value);
++    return glamor_xv_get_port_attribute(data, attribute, (INT32 *)value);
+ }
+ 
+ static void

diff --git a/x11-base/xorg-server/xorg-server-21.1.13.ebuild b/x11-base/xorg-server/xorg-server-21.1.13-r1.ebuild
similarity index 98%
rename from x11-base/xorg-server/xorg-server-21.1.13.ebuild
rename to x11-base/xorg-server/xorg-server-21.1.13-r1.ebuild
index aac526f8a150..e32da90e92a2 100644
--- a/x11-base/xorg-server/xorg-server-21.1.13.ebuild
+++ b/x11-base/xorg-server/xorg-server-21.1.13-r1.ebuild
@@ -104,6 +104,8 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.18-support-multiple-Files-sections.patch
 	# pending upstream backport, bug #885763
 	"${FILESDIR}"/${PN}-21.1.10-c99.patch
+	# backport of upstream commit, bug #925876
+	"${FILESDIR}"/${PN}-21.1.10-fix-c99-32bit.patch
 )
 
 src_configure() {


^ permalink raw reply related	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2024-05-21 11:49 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-11 21:53 [gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/, x11-base/xorg-server/files/ Mart Raudsepp
  -- strict thread matches above, loose matches on Subject: below --
2024-05-21 11:48 Sam James
2024-01-17 16:36 Matt Turner
2023-07-22 17:24 Matt Turner
2023-02-26 23:45 Matt Turner
2022-12-05 10:21 Sam James
2022-06-03  8:38 Sam James
2022-04-21 18:49 Sam James
2021-12-21  0:51 Sam James
2020-06-24 20:13 Matt Turner
2019-01-20  5:43 Matt Turner
2018-11-01  7:06 Matt Turner
2018-11-01  6:25 Matt Turner
2018-10-01 22:52 Matt Turner
2018-06-11  2:48 Matt Turner
2018-04-17  1:35 Matt Turner
2018-04-15 23:07 Matt Turner
2017-11-23  5:11 Matt Turner
2017-03-15 19:57 Matt Turner
2017-02-25 20:43 Matt Turner
2016-12-28  1:35 Mike Frysinger
2016-01-23 14:17 Manuel Rüger
2015-09-03 15:58 Chí-Thanh Christopher Nguyễn
2015-08-22 20:11 Sergei Trofimovich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox