[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 702ab503b10f6fe6719564dbc310bd4422f58014 Author: Sam James gentoo org> AuthorDate: Thu Dec 14 02:38:35 2023 + Commit: Sam James gentoo org> CommitDate: Thu Dec 14 04:03:40 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=702ab503 x11-base/xorg-server: fix headers for modern C issue Otherwise nouveau can't build. These changes are in master already and I've sent a PR to backport them too. Closes: https://bugs.gentoo.org/885763 Signed-off-by: Sam James gentoo.org> .../files/xorg-server-21.1.10-c99.patch| 39 + x11-base/xorg-server/xorg-server-21.1.10-r1.ebuild | 194 + 2 files changed, 233 insertions(+) diff --git a/x11-base/xorg-server/files/xorg-server-21.1.10-c99.patch b/x11-base/xorg-server/files/xorg-server-21.1.10-c99.patch new file mode 100644 index ..12a48e611329 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-21.1.10-c99.patch @@ -0,0 +1,39 @@ +https://bugs.gentoo.org/885763 +https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1114 +https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1222 +https://gitlab.freedesktop.org/xorg/xserver/-/commit/34a430a16ec2cb9851b1f2bc7fc2117e19b9fcc7 + +From f3cb68d274c4536130683d28182620fbbf1b287d Mon Sep 17 00:00:00 2001 +From: Florian Weimer +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. + +(cherry picked from commit 34a430a16ec2cb9851b1f2bc7fc2117e19b9fcc7) +--- 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.10-r1.ebuild b/x11-base/xorg-server/xorg-server-21.1.10-r1.ebuild new file mode 100644 index ..8d72321f5444 --- /dev/null +++ b/x11-base/xorg-server/xorg-server-21.1.10-r1.ebuild @@ -0,0 +1,194 @@ +# 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} != * ]]; 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[
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 637e44f058d0f6d13a6339fe09ecaa5fddef4ba2 Author: Matt Turner gentoo org> AuthorDate: Sat Nov 25 17:14:05 2023 + Commit: Matt Turner gentoo org> CommitDate: Sat Nov 25 17:31:02 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=637e44f0 x11-base/xorg-server: Drop old versions Signed-off-by: Matt Turner gentoo.org> x11-base/xorg-server/Manifest | 1 - .../files/xorg-server-21.1.8-deadlock.patch| 97 -- .../xorg-server/files/xorg-server-21.1.8-wfb.patch | 43 - x11-base/xorg-server/xorg-server-21.1.8-r2.ebuild | 195 - 4 files changed, 336 deletions(-) diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index 26f511e9d9ed..16f4b3d8b53f 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1,2 +1 @@ -DIST xorg-server-21.1.8.tar.xz 4980208 BLAKE2B a223efe6d14b55bd133b7f8db75b7720ea0ae58f1eced0f6b20caf6e7045e7649a0923a1c6db5d649265375e6768fa9811477d2fa0da52d7a1e65cf4511535d2 SHA512 6104b3620ed2e1e27d9a8e963388bbe8785a764585b1bc03dbf5d719a92894773dda580d377ca18ceeab353e65a5d23cc947bab84a4012f9dd1eca31cac36937 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.8-deadlock.patch b/x11-base/xorg-server/files/xorg-server-21.1.8-deadlock.patch deleted file mode 100644 index 8da824119edf.. --- a/x11-base/xorg-server/files/xorg-server-21.1.8-deadlock.patch +++ /dev/null @@ -1,97 +0,0 @@ -https://bugs.gentoo.org/909643 -https://gitlab.freedesktop.org/mesa/mesa/-/issues/116 -https://gitlab.freedesktop.org/mesa/mesa/-/issues/6685 -https://gitlab.freedesktop.org/xorg/xserver/-/commit/b98fc07d3442a289c6bef82df50dd0a2d01de71a - -From b98fc07d3442a289c6bef82df50dd0a2d01de71a Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Thu, 2 Feb 2023 12:26:27 -0500 -Subject: [PATCH] present: Send a PresentConfigureNotify event for destroyed - windows -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This enables fixing a deadlock case on the client side, where the client -ends up blocked waiting for a Present event that will never come because -the window was destroyed. The new PresentWindowDestroyed flag allows the -client to avoid blocking indefinitely. - -Signed-off-by: Adam Jackson -See-also: https://gitlab.freedesktop.org/mesa/mesa/-/issues/116 -See-also: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6685 -Reviewed-by: Michel Dänzer -(cherry picked from commit 462b06033e66a32308d940eb5fc47f5e4c914dc0) a/present/present_event.c -+++ b/present/present_event.c -@@ -102,7 +102,8 @@ present_event_swap(xGenericEvent *from, xGenericEvent *to) - } - - void --present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling) -+present_send_config_notify(WindowPtr window, int x, int y, int w, int h, -+ int bw, WindowPtr sibling, CARD32 flags) - { - present_window_priv_ptr window_priv = present_window_priv(window); - -@@ -122,7 +123,7 @@ present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, - .off_y = 0, - .pixmap_width = w, - .pixmap_height = h, --.pixmap_flags = 0 -+.pixmap_flags = flags - }; - present_event_ptr event; - a/present/present_priv.h -+++ b/present/present_priv.h -@@ -43,6 +43,11 @@ - #define DebugPresent(x) - #endif - -+/* XXX this belongs in presentproto */ -+#ifndef PresentWindowDestroyed -+#define PresentWindowDestroyed (1 << 0) -+#endif -+ - extern int present_request; - - extern DevPrivateKeyRec present_screen_private_key; -@@ -307,7 +312,7 @@ void - present_free_events(WindowPtr window); - - void --present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling); -+present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling, CARD32 flags); - - void - present_send_complete_notify(WindowPtr window, CARD8 kind, CARD8 mode, CARD32 serial, uint64_t ust, uint64_t msc); a/present/present_screen.c -+++ b/present/present_screen.c -@@ -93,6 +93,15 @@ present_destroy_window(WindowPtr window) - present_screen_priv_ptr screen_priv = present_screen_priv(screen); - present_window_priv_ptr window_priv = present_window_priv(window); - -+present_send_config_notify(window, -+ window->drawable.x, -+ window->drawable.y, -+ window->drawable.width, -+ window->drawable.height, -+
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 9b4db39b0d72f93d5c46898cb262d8c5349542cc Author: Matt Turner gentoo org> AuthorDate: Wed Oct 25 15:29:54 2023 + Commit: Matt Turner gentoo org> CommitDate: Wed Oct 25 15:41:30 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b4db39b x11-base/xorg-server: Version bump to 21.1.9 Bug: https://bugs.gentoo.org/916254 Closes: https://bugs.gentoo.org/884221 Closes: https://bugs.gentoo.org/909092 Signed-off-by: Matt Turner 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.9.ebuild | 194 + 3 files changed, 261 insertions(+) diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index 4aa30fb75c5f..26f511e9d9ed 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1 +1,2 @@ DIST xorg-server-21.1.8.tar.xz 4980208 BLAKE2B a223efe6d14b55bd133b7f8db75b7720ea0ae58f1eced0f6b20caf6e7045e7649a0923a1c6db5d649265375e6768fa9811477d2fa0da52d7a1e65cf4511535d2 SHA512 6104b3620ed2e1e27d9a8e963388bbe8785a764585b1bc03dbf5d719a92894773dda580d377ca18ceeab353e65a5d23cc947bab84a4012f9dd1eca31cac36937 +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 new file mode 100644 index ..64581c9d0a18 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-21.1.9-xephyr-Don-t-check-for-SeatId-anymore.patch @@ -0,0 +1,66 @@ +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 +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.9.ebuild b/x11-base/xorg-server/xorg-server-21.1.9.ebuild new file mode 100644 index ..f4b46fb4d12e --- /dev/null +++ b/x11-base/xorg-server/xorg-server-21.1.9.ebuild @@ -0,0 +1,194 @@ +# 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} != * ]]; 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 xcsecur
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 10fc6a6a7edcf1e7ff3d4db4fcbcbe18cec8f734 Author: Sam James gentoo org> AuthorDate: Sun Jul 9 08:08:19 2023 + Commit: Sam James gentoo org> CommitDate: Sun Jul 9 08:08:43 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=10fc6a6a x11-base/xorg-server: backport deadlock fix >From the 21.1 backport branch. Closes: https://bugs.gentoo.org/909643 Signed-off-by: Sam James gentoo.org> .../files/xorg-server-21.1.8-deadlock.patch| 97 +++ x11-base/xorg-server/xorg-server-21.1.8-r1.ebuild | 194 + 2 files changed, 291 insertions(+) diff --git a/x11-base/xorg-server/files/xorg-server-21.1.8-deadlock.patch b/x11-base/xorg-server/files/xorg-server-21.1.8-deadlock.patch new file mode 100644 index ..8da824119edf --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-21.1.8-deadlock.patch @@ -0,0 +1,97 @@ +https://bugs.gentoo.org/909643 +https://gitlab.freedesktop.org/mesa/mesa/-/issues/116 +https://gitlab.freedesktop.org/mesa/mesa/-/issues/6685 +https://gitlab.freedesktop.org/xorg/xserver/-/commit/b98fc07d3442a289c6bef82df50dd0a2d01de71a + +From b98fc07d3442a289c6bef82df50dd0a2d01de71a Mon Sep 17 00:00:00 2001 +From: Adam Jackson +Date: Thu, 2 Feb 2023 12:26:27 -0500 +Subject: [PATCH] present: Send a PresentConfigureNotify event for destroyed + windows +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This enables fixing a deadlock case on the client side, where the client +ends up blocked waiting for a Present event that will never come because +the window was destroyed. The new PresentWindowDestroyed flag allows the +client to avoid blocking indefinitely. + +Signed-off-by: Adam Jackson +See-also: https://gitlab.freedesktop.org/mesa/mesa/-/issues/116 +See-also: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6685 +Reviewed-by: Michel Dänzer +(cherry picked from commit 462b06033e66a32308d940eb5fc47f5e4c914dc0) +--- a/present/present_event.c b/present/present_event.c +@@ -102,7 +102,8 @@ present_event_swap(xGenericEvent *from, xGenericEvent *to) + } + + void +-present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling) ++present_send_config_notify(WindowPtr window, int x, int y, int w, int h, ++ int bw, WindowPtr sibling, CARD32 flags) + { + present_window_priv_ptr window_priv = present_window_priv(window); + +@@ -122,7 +123,7 @@ present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, + .off_y = 0, + .pixmap_width = w, + .pixmap_height = h, +-.pixmap_flags = 0 ++.pixmap_flags = flags + }; + present_event_ptr event; + +--- a/present/present_priv.h b/present/present_priv.h +@@ -43,6 +43,11 @@ + #define DebugPresent(x) + #endif + ++/* XXX this belongs in presentproto */ ++#ifndef PresentWindowDestroyed ++#define PresentWindowDestroyed (1 << 0) ++#endif ++ + extern int present_request; + + extern DevPrivateKeyRec present_screen_private_key; +@@ -307,7 +312,7 @@ void + present_free_events(WindowPtr window); + + void +-present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling); ++present_send_config_notify(WindowPtr window, int x, int y, int w, int h, int bw, WindowPtr sibling, CARD32 flags); + + void + present_send_complete_notify(WindowPtr window, CARD8 kind, CARD8 mode, CARD32 serial, uint64_t ust, uint64_t msc); +--- a/present/present_screen.c b/present/present_screen.c +@@ -93,6 +93,15 @@ present_destroy_window(WindowPtr window) + present_screen_priv_ptr screen_priv = present_screen_priv(screen); + present_window_priv_ptr window_priv = present_window_priv(window); + ++present_send_config_notify(window, ++ window->drawable.x, ++ window->drawable.y, ++ window->drawable.width, ++ window->drawable.height, ++ window->borderWidth, ++ window->nextSib, ++ PresentWindowDestroyed); ++ + if (window_priv) { + present_clear_window_notifies(window); + present_free_events(window); +@@ -123,7 +132,7 @@ present_config_notify(WindowPtr window, + ScreenPtr screen = window->drawable.pScreen; + present_screen_priv_ptr screen_priv = present_screen_priv(screen); + +-present_send_config_notify(window, x, y, w, h, bw, sibling); ++present_send_config_notify(window, x, y, w, h, bw, sibling, 0); + + unwrap(screen_priv, screen, ConfigNotify); + if (screen->ConfigNotify) +-- +GitLab diff --git a/x11-base/xorg-server/xorg-server-21.1.8-r1.ebuild b/x11-base/xorg-server/xorg-server-21.1.8-r1.ebuild new file mode 100644 index ..654737cbf8be --- /dev/null +++ b/x11-base/xorg-se
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 858311492b0112ad227968ba6813cffc1fe85f75 Author: Sam James gentoo org> AuthorDate: Thu Dec 2 02:36:34 2021 + Commit: Sam James gentoo org> CommitDate: Thu Dec 2 02:36:34 2021 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=85831149 x11-base/xorg-server: apply DPI revert patch to 21.1.1 Upstream changed their mind post-release given the widespread breakage. Signed-off-by: Sam James gentoo.org> .../files/xorg-server-21.1.1-DPI-revert.patch | 133 + ...-21.1.1.ebuild => xorg-server-21.1.1-r1.ebuild} | 1 + 2 files changed, 134 insertions(+) diff --git a/x11-base/xorg-server/files/xorg-server-21.1.1-DPI-revert.patch b/x11-base/xorg-server/files/xorg-server-21.1.1-DPI-revert.patch new file mode 100644 index ..89d8e2653a28 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-21.1.1-DPI-revert.patch @@ -0,0 +1,133 @@ +https://gitlab.freedesktop.org/xorg/xserver/-/commit/35af1299e73483eaf93d913a960e1d1738bc7de6 + +From: Povilas Kanapickas +Date: Sat, 13 Nov 2021 17:23:54 +0200 +Subject: [PATCH] Revert "hw/xfree86: Propagate physical dimensions from DRM + connector" + +Quite a lot of applications currently expect the screen DPI exposed by +the X server to be 96 even when the real display DPI is different. +Additionally, currently Xwayland completely ignores any hardware +information and sets the DPI to 96. Accordingly the new behavior, even +if it fixes a bug, should not be enabled automatically to all users. + +A better solution would be to make the default DPI stay as is and enable +the correct behavior with a command line option (maybe -dpi auto, or +similar). For now let's just revert the bug fix. + +This reverts commit 05b3c681ea2f478c0cb941c2f8279919cf78de6d. + +Signed-off-by: Povilas Kanapickas +--- a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c +@@ -55,7 +55,6 @@ + #include "xf86Xinput.h" + #include "xf86InPriv.h" + #include "mivalidate.h" +-#include "xf86Crtc.h" + + /* For xf86GetClocks */ + #if defined(CSRG_BASED) || defined(__GNU__) +@@ -852,9 +851,8 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y) + { + MessageType from = X_DEFAULT; + xf86MonPtr DDC = (xf86MonPtr) (pScrn->monitor->DDC); +-int probedWidthmm, probedHeightmm; ++int ddcWidthmm, ddcHeightmm; + int widthErr, heightErr; +-xf86OutputPtr compat = xf86CompatOutput(pScrn); + + /* XXX Maybe there is no need for widthmm/heightmm in ScrnInfoRec */ + pScrn->widthmm = pScrn->monitor->widthmm; +@@ -864,15 +862,11 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y) + /* DDC gives display size in mm for individual modes, + * but cm for monitor + */ +-probedWidthmm = DDC->features.hsize * 10; /* 10mm in 1cm */ +-probedHeightmm = DDC->features.vsize * 10; /* 10mm in 1cm */ +-} +-else if (compat && compat->mm_width > 0 && compat->mm_height > 0) { +-probedWidthmm = compat->mm_width; +-probedHeightmm = compat->mm_height; ++ddcWidthmm = DDC->features.hsize * 10; /* 10mm in 1cm */ ++ddcHeightmm = DDC->features.vsize * 10; /* 10mm in 1cm */ + } + else { +-probedWidthmm = probedHeightmm = 0; ++ddcWidthmm = ddcHeightmm = 0; + } + + if (monitorResolution > 0) { +@@ -898,15 +892,15 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y) +pScrn->widthmm, pScrn->heightmm); + + /* Warn if config and probe disagree about display size */ +-if (probedWidthmm && probedHeightmm) { ++if (ddcWidthmm && ddcHeightmm) { + if (pScrn->widthmm > 0) { +-widthErr = abs(probedWidthmm - pScrn->widthmm); ++widthErr = abs(ddcWidthmm - pScrn->widthmm); + } + else { + widthErr = 0; + } + if (pScrn->heightmm > 0) { +-heightErr = abs(probedHeightmm - pScrn->heightmm); ++heightErr = abs(ddcHeightmm - pScrn->heightmm); + } + else { + heightErr = 0; +@@ -915,17 +909,17 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int y) + /* Should include config file name for monitor here */ + xf86DrvMsg(pScrn->scrnIndex, X_WARNING, +"Probed monitor is %dx%d mm, using Displaysize %dx%d mm\n", +- probedWidthmm, probedHeightmm, pScrn->widthmm, ++ ddcWidthmm, ddcHeightmm, pScrn->widthmm, +pScrn->heightmm); + } + } + } +-else if (probedWidthmm && probedHeightmm) { ++else if (ddcWidthmm && ddcHeightmm) { + from = X_PROBED; + xf86DrvMsg(pScrn->scrnIndex, from, "Display dimensions: (%d, %d) mm\n", +- probedWidthmm, probedHeightmm); +-pScrn->widthmm = probedWidthmm; +-pScrn->heightmm = probedHeightmm; ++
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: ff6b355183abf835dc5355e01e6ca742eaff3a12 Author: Matt Turner gentoo org> AuthorDate: Thu Mar 19 21:13:07 2020 + Commit: Matt Turner gentoo org> CommitDate: Thu Mar 19 21:50:43 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff6b3551 x11-base/xorg-server: Add patch to build with -fno-common Closes: https://bugs.gentoo.org/705880 Signed-off-by: Matt Turner gentoo.org> ...erver-1.20.7-Fix-building-with-fno-common.patch | 254 + x11-base/xorg-server/xorg-server-1.20.7.ebuild | 1 + 2 files changed, 255 insertions(+) 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 new file mode 100644 index 000..d3011fcb255 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.20.7-Fix-building-with-fno-common.patch @@ -0,0 +1,254 @@ +From 1610ef1d6b5ba99da9d1a639f3b65b2e61514a7d Mon Sep 17 00:00:00 2001 +From: David Seifert +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 +--- + 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 +-_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/protoc
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 5144ab5fc62a428f70645a13012d8d0f697fc040 Author: Matt Turner gentoo org> AuthorDate: Sun Jan 26 21:08:01 2020 + Commit: Matt Turner gentoo org> CommitDate: Sun Jan 26 21:09:56 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5144ab5f x11-base/xorg-server: Drop old versions Signed-off-by: Matt Turner gentoo.org> x11-base/xorg-server/Manifest | 1 - ...ck-the-shm-dir-at-run-time-not-build-time.patch | 174 --- ...1.20.4-shm-Use-memfd_create-when-possible.patch | 89 ...ndent-shm_tmpfile-to-follow-our-standards.patch | 72 --- x11-base/xorg-server/xorg-server-1.20.5.ebuild | 236 - 5 files changed, 572 deletions(-) diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index c2b87823b65..3cdea5a75a0 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1,3 +1,2 @@ -DIST xorg-server-1.20.5.tar.bz2 6126757 BLAKE2B 2374c6f39acd80174d9cf9c15b6a75f420de3a9b7b51a41385a326fed106fc57fdc5a0a4a08beba36a8d65bff1c8c8d35bb50c73c5285ee206f3293a212369be SHA512 625f0626b122cf95600abe382c3217348999357a0e2d2443092f1b67cff1c98d7ef09303884ceaeac181e0555dc56b0d4d44bda45cc464dac2d9a50c5b32d631 DIST xorg-server-1.20.6.tar.bz2 6298697 BLAKE2B 30e505cf83bb2b20e17533b89b81521d029412ea6bd804ecf20458af20364172eb7b21561f14c885d5e16597e6d09985b255b6cec2beb30662658d9e316bc953 SHA512 9aa0ba4aee92fe628f2b8c41e4fe0134dc86154bb8787f907884ef2fd970e18e68e72ea8a1beb706d11ecf155b2abc9731f1abadff251ed592f8cca3b1240dd6 DIST xorg-server-1.20.7.tar.bz2 6303005 BLAKE2B 343ebc1ff45fc1cd459b204d92eabdd0629c94d4338d2d7cb635f73642080d07ef174cfbd83e5b7f253f2918af2d1efbe99d7c75720b88857f69093ee0be1b65 SHA512 c67612e379111c28c68941c0a660abf72be7669591b41ccaa3b3474c4540a03822a28d892831b12ce08bac6e5e7e33504c2d19ef2a0c2298f83bd083459f96f5 diff --git a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch deleted file mode 100644 index 54ed62935a6..000 --- a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch +++ /dev/null @@ -1,174 +0,0 @@ -From 19f6cb570becbc4e355807199c6e251fc7935132 Mon Sep 17 00:00:00 2001 -From: Eric Anholt -Date: Wed, 19 Sep 2018 13:28:06 -0700 -Subject: [PATCH xserver] shm: Pick the shm dir at run time, not build time. - -Prodding the builder's filesystem for tmp dirs doesn't necessarily -tell you anything about what the actual host's filesystem is going to -look like, so we should just try the dirs at runtime. - -Signed-off-by: Eric Anholt - Xext/shm.c | 48 + - configure.ac| 43 - include/dix-config.h.in | 3 --- - include/meson.build | 5 - - 4 files changed, 29 insertions(+), 70 deletions(-) - -diff --git a/Xext/shm.c b/Xext/shm.c -index ed43b9202..2739a59e7 100644 a/Xext/shm.c -+++ b/Xext/shm.c -@@ -1194,36 +1194,46 @@ ProcShmAttachFd(ClientPtr client) - static int - shm_tmpfile(void) - { --#ifdef SHMDIR -+const char *shmdirs[] = { -+"/run/shm", -+"/var/tmp", -+"/tmp", -+}; - int fd; --char template[] = SHMDIR "/shmfd-XX"; -+ - #ifdef O_TMPFILE --fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); --if (fd >= 0) { --DebugF ("Using O_TMPFILE\n"); --return fd; -+for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { -+fd = open(shmdirs[i], O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); -+if (fd >= 0) { -+DebugF ("Using O_TMPFILE\n"); -+return fd; -+} - } - ErrorF ("Not using O_TMPFILE\n"); - #endif -+ -+for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { -+char template[PATH_MAX]; -+snprintf(template, ARRAY_SIZE(template), "%s/shmfd-XX", shmdirs[i]); - #ifdef HAVE_MKOSTEMP --fd = mkostemp(template, O_CLOEXEC); -+fd = mkostemp(template, O_CLOEXEC); - #else --fd = mkstemp(template); -+fd = mkstemp(template); - #endif --if (fd < 0) --return -1; --unlink(template); -+if (fd < 0) -+continue; -+unlink(template); - #ifndef HAVE_MKOSTEMP --int flags = fcntl(fd, F_GETFD); --if (flags != -1) { --flags |= FD_CLOEXEC; --(void) fcntl(fd, F_SETFD, &flags); --} -+int flags = fcntl(fd, F_GETFD); -+if (flags != -1) { -+flags |= FD_CLOEXEC; -+(void) fcntl(fd, F_SETFD, &flags); -+} - #endif --return fd; --#else -+return fd; -+} -+ - return -1; --#endif - } - - static int -diff --git a/configure.ac b/configure.ac -index 359b62cb5..57a233102 100644 a/configure.ac -+++ b/configure.ac -@@ -1115,49 +1115,6 @@ case "$DRI2,$HAV
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 4b03aab97013ea3cacb778956262dbf16e70fcdf Author: Matt Turner gentoo org> AuthorDate: Thu Feb 28 01:18:22 2019 + Commit: Matt Turner gentoo org> CommitDate: Thu Feb 28 05:44:46 2019 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b03aab9 x11-base/xorg-server: Version bump to 1.20.4 Closes: https://bugs.gentoo.org/677752 Signed-off-by: Matt Turner gentoo.org> x11-base/xorg-server/Manifest | 1 + ...ck-the-shm-dir-at-run-time-not-build-time.patch | 174 + ...1.20.4-shm-Use-memfd_create-when-possible.patch | 89 + ...ndent-shm_tmpfile-to-follow-our-standards.patch | 72 +++ x11-base/xorg-server/xorg-server-1.20.4.ebuild | 217 + 5 files changed, 553 insertions(+) diff --git a/x11-base/xorg-server/Manifest b/x11-base/xorg-server/Manifest index 4dc15913393..d0d520e0f00 100644 --- a/x11-base/xorg-server/Manifest +++ b/x11-base/xorg-server/Manifest @@ -1 +1,2 @@ DIST xorg-server-1.20.3.tar.bz2 6205000 BLAKE2B 9fc8acf1812d0aa4800941dd1846060f91edf1e7ebc92b35e8c2028266d88d3ab3ba14e95f535e5ee41941f8e20769ee75723ba609f5653d4892f97bc5cf91c4 SHA512 ee44554f86df4297f54c5871fe7a18954eeef4338775a25f36d6577b279c4775f61128da71b86cfaeadcc080838d6749dede138d4db178866579da2056543fba +DIST xorg-server-1.20.4.tar.bz2 6123780 BLAKE2B 224dda54f433315f6614cbee5bc54db91d9d9e190c06ac7f26e334b80b9d4a612ff4b2a4f10f50a6f928ecdbea40172d5578289fbf88411f006bcd473253b05d SHA512 f1c92ef6d7613e0636973d3395b48dfdad42230847ab1c8b1cea84647a968f649f9aba97bdb01c10ee8351cbe954d4e6ca4a0fc84bb8fa662d49c8ba2aee00a8 diff --git a/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch new file mode 100644 index 000..54ed62935a6 --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.20.4-shm-Pick-the-shm-dir-at-run-time-not-build-time.patch @@ -0,0 +1,174 @@ +From 19f6cb570becbc4e355807199c6e251fc7935132 Mon Sep 17 00:00:00 2001 +From: Eric Anholt +Date: Wed, 19 Sep 2018 13:28:06 -0700 +Subject: [PATCH xserver] shm: Pick the shm dir at run time, not build time. + +Prodding the builder's filesystem for tmp dirs doesn't necessarily +tell you anything about what the actual host's filesystem is going to +look like, so we should just try the dirs at runtime. + +Signed-off-by: Eric Anholt +--- + Xext/shm.c | 48 + + configure.ac| 43 + include/dix-config.h.in | 3 --- + include/meson.build | 5 - + 4 files changed, 29 insertions(+), 70 deletions(-) + +diff --git a/Xext/shm.c b/Xext/shm.c +index ed43b9202..2739a59e7 100644 +--- a/Xext/shm.c b/Xext/shm.c +@@ -1194,36 +1194,46 @@ ProcShmAttachFd(ClientPtr client) + static int + shm_tmpfile(void) + { +-#ifdef SHMDIR ++const char *shmdirs[] = { ++"/run/shm", ++"/var/tmp", ++"/tmp", ++}; + int fd; +-char template[] = SHMDIR "/shmfd-XX"; ++ + #ifdef O_TMPFILE +-fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); +-if (fd >= 0) { +-DebugF ("Using O_TMPFILE\n"); +-return fd; ++for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { ++fd = open(shmdirs[i], O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666); ++if (fd >= 0) { ++DebugF ("Using O_TMPFILE\n"); ++return fd; ++} + } + ErrorF ("Not using O_TMPFILE\n"); + #endif ++ ++for (int i = 0; i < ARRAY_SIZE(shmdirs); i++) { ++char template[PATH_MAX]; ++snprintf(template, ARRAY_SIZE(template), "%s/shmfd-XX", shmdirs[i]); + #ifdef HAVE_MKOSTEMP +-fd = mkostemp(template, O_CLOEXEC); ++fd = mkostemp(template, O_CLOEXEC); + #else +-fd = mkstemp(template); ++fd = mkstemp(template); + #endif +-if (fd < 0) +-return -1; +-unlink(template); ++if (fd < 0) ++continue; ++unlink(template); + #ifndef HAVE_MKOSTEMP +-int flags = fcntl(fd, F_GETFD); +-if (flags != -1) { +-flags |= FD_CLOEXEC; +-(void) fcntl(fd, F_SETFD, &flags); +-} ++int flags = fcntl(fd, F_GETFD); ++if (flags != -1) { ++flags |= FD_CLOEXEC; ++(void) fcntl(fd, F_SETFD, &flags); ++} + #endif +-return fd; +-#else ++return fd; ++} ++ + return -1; +-#endif + } + + static int +diff --git a/configure.ac b/configure.ac +index 359b62cb5..57a233102 100644 +--- a/configure.ac b/configure.ac +@@ -1115,49 +1115,6 @@ case "$DRI2,$HAVE_DRI2PROTO" in + esac + AM_CONDITIONAL(DRI2, test "x$DRI2" = xyes) + +-dnl +-dnl Locate a suitable tmp file system for creating shared memeory files +-dnl +- +-AC_ARG_WITH(shared-memory-dir, AS_HELP_STRING([--with-shared-memory-dir=PATH], [Path to directory in a world-wr
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: 6d0297870ace46f17905f7440cee1614ce2ffb9b Author: Nick Sarnie gentoo org> AuthorDate: Sat May 5 18:55:53 2018 + Commit: Nick Sarnie gentoo org> CommitDate: Sat May 5 19:04:06 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d029787 x11-base/xorg-server: Backport patch to fix colors on Intel GPUs Colors are broken on Intel GPUs with Mesa 18.0, let's backport the fix Bug: https://bugs.gentoo.org/653688 Package-Manager: Portage-2.3.36, Repoman-2.3.9 ...t-pick-sRGB-config-for-32-bit-RGBA-visual.patch | 39 x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild | 251 + 2 files changed, 290 insertions(+) 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 000..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?= +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 +Signed-off-by: Tapani Pälli +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/xorg-server-1.19.5-r2.ebuild b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild new file mode 100644 index 000..4b366b21c80 --- /dev/null +++ b/x11-base/xorg-server/xorg-server-1.19.5-r2.ebuild @@ -0,0 +1,251 @@ +# 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 ~arm-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
[gentoo-commits] repo/gentoo:master commit in: x11-base/xorg-server/files/, x11-base/xorg-server/
commit: bbf0927bb971152a4d7e18b7fa3f3c40c186a569 Author: Matt Turner gentoo org> AuthorDate: Tue Mar 6 20:23:08 2018 + Commit: Matt Turner gentoo org> CommitDate: Tue Mar 6 20:25:20 2018 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbf0927b x11-base/xorg-server: Add upstream patch to fix crash Closes: https://bugs.gentoo.org/649392 .../xorg-server-1.19.99.901-randr-fix-crash.patch | 44 ++ ...01.ebuild => xorg-server-1.19.99.901-r1.ebuild} | 1 + 2 files changed, 45 insertions(+) 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 new file mode 100644 index 000..bcaaf867c7a --- /dev/null +++ b/x11-base/xorg-server/files/xorg-server-1.19.99.901-randr-fix-crash.patch @@ -0,0 +1,44 @@ +From 2af0a50a4bb9be9f58681d417ceb9a7029caaf3b Mon Sep 17 00:00:00 2001 +From: Adam Jackson +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=) at ../../randr/randr.c:576 +576 mastersp = rrGetScrPriv(master); +(gdb) bt +#0 RRTellChanged (pScreen=) at ../../randr/randr.c:576 +#1 0x5566f1e9 in RRNoticePropertyChange (value=0x55bfbf28, property=70, output=0x55bfef10) at ../../randr/rrproperty.c:153 +#2 RRChangeOutputProperty (output=output@entry=0x55bfef10, property=, type=type@entry=19, format=format@entry=32, mode=, mode@entry=0, len=len@entry=1, value=0x7fffe77c, sendevent=1, pending=0) +at ../../randr/rrproperty.c:263 +#3 0x5566dba5 in RROutputSetNonDesktop (output=output@entry=0x55bfef10, nonDesktop=nonDesktop@entry=0) at ../../randr/rroutput.c:333 +... + +Reported-by: Michel Dänzer +Signed-off-by: Adam Jackson +--- + 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.ebuild b/x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild similarity index 99% rename from x11-base/xorg-server/xorg-server-1.19.99.901.ebuild rename to x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild index 37491c682e6..19c536df784 100644 --- a/x11-base/xorg-server/xorg-server-1.19.99.901.ebuild +++ b/x11-base/xorg-server/xorg-server-1.19.99.901-r1.ebuild @@ -117,6 +117,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}-randr-fix-crash.patch ) pkg_pretend() {