Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] xorg: update to 21.1.2
@ 2021-12-17 18:12 dkwo
  2021-12-17 20:12 ` leahneukirchen
                   ` (53 more replies)
  0 siblings, 54 replies; 55+ messages in thread
From: dkwo @ 2021-12-17 18:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 482 bytes --]

There is a new pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update to 21.1.2
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 14964 bytes --]

From 546c3075a93ff98dafc1d27cc16bed624526ef52 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 1/4] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From ff169525b0a64f04b86452cc2468df4504f6a342 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 2/4] New package: libxcvt-0.1.1

---
 common/shlibs            |  2 ++
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index a634e46b4717..b85dc1bb703e 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4090,3 +4090,5 @@ libkmaillanguagetool.so.5 kdepim-addons-21.08.3_1
 libkaddressbookmergelibprivate.so.5 kdepim-addons-21.08.3_1
 libkmailconfirmbeforedeleting.so.5 kdepim-addons-21.08.3_1
 libkaddressbookprivate.so.5 kaddressbook-21.08.3_1
+libkdumpfile.so.8 libkdumpfile-0.4.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From c57bb7c3e42d1e5d1fdb0932ea8f33c1e3ba1f7a Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 3/4] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 37249a3fb2735d54d3d66a4141bfb00b06c7b0b5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 4/4] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
@ 2021-12-17 20:12 ` leahneukirchen
  2021-12-20 14:49 ` slotThe
                   ` (52 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: leahneukirchen @ 2021-12-17 20:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 169 bytes --]

New comment by leahneukirchen on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-997004788

Comment:
What about XInput2.4?

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
  2021-12-17 20:12 ` leahneukirchen
@ 2021-12-20 14:49 ` slotThe
  2021-12-23 18:13 ` dkwo
                   ` (51 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: slotThe @ 2021-12-20 14:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 346 bytes --]

New comment by slotThe on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-997990665

Comment:
> What about XInput2.4?

This should be integrated in `xorg-server` 21.1.2.  XInput is not the `xinput` package, if that's what you're thinking (that one's still at the version we're currently packaging)

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
  2021-12-17 20:12 ` leahneukirchen
  2021-12-20 14:49 ` slotThe
@ 2021-12-23 18:13 ` dkwo
  2021-12-23 18:19 ` [PR PATCH] [Updated] " dkwo
                   ` (50 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-23 18:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 927 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1000459097

Comment:
indeed:
> This is the first release candidate of Xorg 21.1.0 release.
> Notable changes since 1.20 include:
> 
>   - The meson support is now fully mature. While autotools support will still be
>   kept for this release series, it will be dropped afterwards.
> 
>   - Glamor support for Xvfb.
> 
>   - Variable refresh rate support in the modesetting driver.
> 
>   - XInput 2.4 support which adds touchpad gestures.
>   
>   - DMX DDX has been removed.
>   
>   - X server now correctly reports display DPI in more cases which may affect
>   rendering of client applications on hi-DPI screens.
> 
>   A large number of small features and various bug fixes.
> 
> Note that since 21.1 series XWayland is released separately and thus this
> release does not include it.

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

* Re: [PR PATCH] [Updated] xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (2 preceding siblings ...)
  2021-12-23 18:13 ` dkwo
@ 2021-12-23 18:19 ` dkwo
  2021-12-23 18:20 ` dkwo
                   ` (49 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-23 18:19 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 487 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update to 21.1.2
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 17205 bytes --]

From 5273c70df2269ba14caa64db80d5d75b6005a21d Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 1/6] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 56a6659dc2b46955e8c2cf5943221a8a2614e431 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 2/6] New package: libxcvt-0.1.1

---
 common/shlibs            |  2 ++
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 29 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 86b3a4f42422..13412e5580bb 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4095,3 +4095,5 @@ libkaddressbookmergelibprivate.so.5 kdepim-addons-21.08.3_1
 libkmailconfirmbeforedeleting.so.5 kdepim-addons-21.08.3_1
 libkaddressbookprivate.so.5 kaddressbook-21.08.3_1
 libcodec2.so.1.0 codec2-1.0.1_1
+libkdumpfile.so.8 libkdumpfile-0.4.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From ebfc0d5acc28cb078d4f48c354e8e5270fb2466b Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 3/6] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From ee8ad022d99edf65f9e2434f6bcb8fdd2d3af63b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 4/6] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From f499ee5e0b7b7dc7e501786731c4d1fcf95ecd2b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 5/6] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 9f7c6e8942ce96db8d598cc6439d3649c47c4aa3 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 6/6] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (3 preceding siblings ...)
  2021-12-23 18:19 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-23 18:20 ` dkwo
  2021-12-23 20:35 ` dkwo
                   ` (48 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-23 18:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 263 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1000462100

Comment:
Rebased and pushed a couple more updates, as in https://who-t.blogspot.com/2021/09/whats-new-in-xi-24-touchpad-gestures.html

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (4 preceding siblings ...)
  2021-12-23 18:20 ` dkwo
@ 2021-12-23 20:35 ` dkwo
  2021-12-24 11:48 ` [PR PATCH] [Updated] " dkwo
                   ` (47 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-23 20:35 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 198 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1000513505

Comment:
I'm confused, it all builds fine locally using update-bulk.

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

* Re: [PR PATCH] [Updated] xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (5 preceding siblings ...)
  2021-12-23 20:35 ` dkwo
@ 2021-12-24 11:48 ` dkwo
  2021-12-24 12:17 ` dkwo
                   ` (46 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-24 11:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 487 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update to 21.1.2
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 17202 bytes --]

From 5273c70df2269ba14caa64db80d5d75b6005a21d Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 1/6] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 2871b5022c9fcfbf81f73ed66230b2a3859ea932 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 2/6] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 86b3a4f42422..6e3270bb5ff9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4021,6 +4021,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From db6eb2197a96c5c17a0542d8d83ddfa46c3f8924 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 3/6] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 7339f9436b2ae6a2485cd55bf0c81f7c3f72078d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 4/6] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From fd86d8af5482e78c4afe23de8c04d0658de681bd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 5/6] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 2e3621ca6db309849957bb2e37037e22740a37fa Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 6/6] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (6 preceding siblings ...)
  2021-12-24 11:48 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-24 12:17 ` dkwo
  2021-12-25  8:12 ` [PR PATCH] [Updated] " dkwo
                   ` (45 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-24 12:17 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 344 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1000817405

Comment:
It fails on ci with
`Dependency inputproto found: NO found 2.3.2 but need: '>= 2.3.99.1'`
while here I get correctly
`Run-time dependency inputproto found: YES 2.3.99.2`
which is provided by xorgproto.

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

* Re: [PR PATCH] [Updated] xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (7 preceding siblings ...)
  2021-12-24 12:17 ` dkwo
@ 2021-12-25  8:12 ` dkwo
  2021-12-25  8:38 ` dkwo
                   ` (44 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-25  8:12 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 487 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update to 21.1.2
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 18355 bytes --]

From 745aae2725bef45b3f7cac35ca9a47ee10002b02 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 1/7] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From c49621720db53776134432c4d03de0fd20fbdbd4 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 2/7] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 86b3a4f42422..6e3270bb5ff9 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4021,6 +4021,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 872f51e4c72c146282dad458b0454d95603885f9 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 3/7] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 27c84c40c08d7af289ff3aa161b6e91e3bf37046 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 4/7] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From c578e3079842d0b1b1b52cf70e6ec5c8cbf35490 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 5/7] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From c4689f9d5902e19b31962167de7cce1907a5f716 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 6/7] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 6f94aee1d44eb0b267dac4fba453103216deab0a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 7/7] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

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

* Re: xorg: update to 21.1.2
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (8 preceding siblings ...)
  2021-12-25  8:12 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-25  8:38 ` dkwo
  2021-12-27  5:17 ` xorg: update stuff abenson
                   ` (43 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-25  8:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 178 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1000992336

Comment:
Now it mysteriously builds again in ci.

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (9 preceding siblings ...)
  2021-12-25  8:38 ` dkwo
@ 2021-12-27  5:17 ` abenson
  2021-12-27 21:10 ` [PR PATCH] [Updated] " dkwo
                   ` (42 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2021-12-27  5:17 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 198 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1001341956

Comment:
I think xf86 drivers will need to be revbumped for this.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (10 preceding siblings ...)
  2021-12-27  5:17 ` xorg: update stuff abenson
@ 2021-12-27 21:10 ` dkwo
  2021-12-27 21:37 ` dkwo
                   ` (41 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-27 21:10 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 38564 bytes --]

From e3d033d67f540c7e788fe8f69d9844541c435ebc Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/31] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 3348e70e6dec7f4b60057073af91c63d6e894066 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/31] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index e1a175684656..66e09d7d760c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 0e2cbbac915cb94a42712641c9590f347b8d16d1 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/31] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From df8c3c401bff16276e7593dd4958430c574335cc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/31] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 4b789b321d6d1104a0f733c48c08538935c8227d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/31] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 61d9a4122a075fbfc76972545c41a9fa9900dfec Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/31] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 4fe22423e9a4fd1682cc36064a679bf78a5e1b03 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/31] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 7124ecb22fd6de993078d7562874900b2eef31d0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/31] xf86-input-evdev: rebuild against xorg

---
 srcpkgs/xf86-input-evdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..0ce960145539 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
+revision=2
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 829c72dad398b204fe080711bf116cfc300281c1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/31] xf86-input-joystick: rebuild against xorg

---
 srcpkgs/xf86-input-joystick/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..dca7c06e38ec 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-input-joystick'.
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
+revision=3
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 808cee3017502ecdaf154a8ad1cedfd3ab3b839c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/31] xf86-input-libinput: rebuild against xorg

---
 srcpkgs/xf86-input-libinput/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6fbb6ea2d575..bb2d4bec96bc 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
 version=1.2.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libinput-devel xorg-server-devel"

From a2781297016bfcb70cf3b35d45ee135165cb54c8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/31] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From bc35c00d1ae4115491f4c86baf052c6ef391f116 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 12/31] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From 41a17da8b7aa8a078ce16ade3367015d8d8a6ca6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/31] xf86-input-vmmouse: rebuild against xorg

---
 srcpkgs/xf86-input-vmmouse/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..efab756166a4 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-input-vmmouse'.
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
+revision=4
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 122cf3a3457f5d2425e239b917f9e84d86024ad1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 14/31] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From 24e5ab028403f6f19dd696fc47284a8c860c2e1b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/31] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 97a3c232f6f8e516568da7a1afcde15f8396841e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/31] xf86-video-openchrome: rebuild against xorg

---
 srcpkgs/xf86-video-openchrome/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..866ab21447b9 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-video-openchrome'.
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
+revision=3
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From b0a6254df13d211200d16fa5531e64452da8c7dd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 17/31] xf86-video-qxl: rebuild against xorg

---
 srcpkgs/xf86-video-qxl/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From acdfd4b74ea28e5238d8a5796a65c4d27a1f5ba2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/31] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 3bf3753bdfae721c36f934659c7d9ed6407055e1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/31] xf86-video-sisusb: rebuild against xorg

---
 srcpkgs/xf86-video-sisusb/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..6fcfa3b233b8 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-video-sisusb'.
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
+revision=3
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From f0c24fbde08be185605a899890cf20c6756d6be0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/31] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 1c1bcea18cb85f451a063f87e10035941819478f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 21/31] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From ec2e22e88d81c63ebdae78882e2f88db24b25f6c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/31] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From eb2fbf8ee8dff8236143913d38e5cf68563203b0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/31] xf86-video-ati: rebuild against xorg

---
 srcpkgs/xf86-video-ati/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 964d20bf0e0343a25dbfb7e760eb2920548f0176 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/31] xf86-video-cirrus: rebuild against xorg

---
 srcpkgs/xf86-video-cirrus/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..ca9652988f3f 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-video-cirrus'.
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
+revision=8
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From d0a66562cd301ef0556fa90051f375014c745f70 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 25/31] xf86-video-dummy: rebuild against xorg

---
 srcpkgs/xf86-video-dummy/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..5e2bb0e9b751 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,7 +1,7 @@
 # Template build file for 'xf86-video-dummy'.
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
+revision=4
 lib32disabled=yes
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From a93339b7689ad28b2f0328847b801c4817543324 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/31] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From a561e47195efc5614a207b1261dddda30148cd5b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 27/31] xf86-video-fbturbo-sunxi: rebuild against xorg

---
 srcpkgs/xf86-video-fbturbo-sunxi/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
index 3da5f84a572c..b9383e95d815 100644
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ b/srcpkgs/xf86-video-fbturbo-sunxi/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbturbo-sunxi'
 pkgname=xf86-video-fbturbo-sunxi
 version=0.4.0
-revision=5
+revision=6
 wrksrc="${pkgname%-sunxi}-${version}"
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-server-devel"

From aa61efb092aa751d8ed2572aae643be5858a807a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 28/31] xf86-video-fbturbo: rebuild against xorg

---
 srcpkgs/xf86-video-fbturbo/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
index acfbff8c05d3..a65263eb897c 100644
--- a/srcpkgs/xf86-video-fbturbo/template
+++ b/srcpkgs/xf86-video-fbturbo/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbturbo'
 pkgname=xf86-video-fbturbo
 version=0.4.0
-revision=17
+revision=18
 build_style=gnu-configure
 short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
 maintainer="Orphaned <orphan@voidlinux.org>"

From c38bd9b487aea035f6430587f4a614fd7fc04b3e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 29/31] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 52b7ac0e9192b54fe7bebe79652196da4c5bc693 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 30/31] xf86-video-mach64: rebuild against xorg

---
 srcpkgs/xf86-video-mach64/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 812220492cb0c763cba3f1daa1e419702f5c4779 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 31/31] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (11 preceding siblings ...)
  2021-12-27 21:10 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-27 21:37 ` dkwo
  2021-12-27 21:38 ` dkwo
                   ` (40 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-27 21:37 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 46071 bytes --]

From e3d033d67f540c7e788fe8f69d9844541c435ebc Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/30] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 3348e70e6dec7f4b60057073af91c63d6e894066 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/30] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index e1a175684656..66e09d7d760c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 0e2cbbac915cb94a42712641c9590f347b8d16d1 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/30] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From df8c3c401bff16276e7593dd4958430c574335cc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/30] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 4b789b321d6d1104a0f733c48c08538935c8227d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/30] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 61d9a4122a075fbfc76972545c41a9fa9900dfec Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/30] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 4fe22423e9a4fd1682cc36064a679bf78a5e1b03 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/30] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 2a60b72a736a6eca998690a92439d059a12a5de1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/30] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 6a80f90bf432e8d4b30aabceb2a90e276f0a8428 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/30] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 1d5d92e9b5e2fb6839370ecd5ffba78ebc71dbf7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/30] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 0368a27f283873d25c3efe773dccb54d9f3b939f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/30] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From a6bf098ac5855e1c7cb8ec3fbfadc16b0a1db72b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/30] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From b785e49752f1812d56c3474de8a3198fad667c54 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/30] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From 21b6ce54863a8d752e3141516c0e0647e8eacc73 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/30] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 63eb3702526bb4546daf4c079415d152124c8aac Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/30] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 1aa1cce242480c2fcfa3e6318a0ca11d0e1665a4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/30] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From f7c0dae842ff1eedd455814e46a7d3c695dda703 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/30] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 55a7f5de54339ae6e8902afda463746245618252 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/30] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 57aa7f680c6ce9ba3349e1833130ae10668cbb3b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/30] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From d5aaec7b96b64a5d3811bc4667baffcae10a21d3 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/30] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 51117831a3fee88da0902896bde02f471bd7b863 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/30] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 632294bb443fd25ecae8362c1e98205fa5cd322e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/30] xf86-video-ati: rebuild against xorg

---
 srcpkgs/xf86-video-ati/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From b265b18522038a802438b830415ed017c5fa8592 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/30] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 46ce5d35bb1a6523dc37bc91144fcc584c625fc8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/30] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From b3bccecc5a257d6e38ff96504059f900184fc830 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/30] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 8e019b2742aac6e13fa163ddb2a6f819db687977 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/30] xf86-video-fbturbo-sunxi: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-fbturbo-sunxi/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
index 3da5f84a572c..4e9f63e01774 100644
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ b/srcpkgs/xf86-video-fbturbo-sunxi/template
@@ -1,20 +1,19 @@
 # Template file for 'xf86-video-fbturbo-sunxi'
 pkgname=xf86-video-fbturbo-sunxi
 version=0.4.0
-revision=5
+revision=6
+archs="armv7l"
 wrksrc="${pkgname%-sunxi}-${version}"
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-server-devel"
 makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
 depends="virtual?xserver-abi-video-24_1 sunxi-mali"
 short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT, GPL-2.0-or-later"
 homepage="http://github.com/ssvb/xf86-video-fbturbo"
 distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
 checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
 conflicts="xf86-video-fbturbo>=0"
 
 LDFLAGS="-Wl,-z,lazy"

From 89b03bc083a3192979965c252c46f566e0f6bb78 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 27/30] xf86-video-fbturbo: rebuild against xorg

---
 srcpkgs/xf86-video-fbturbo/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
index acfbff8c05d3..a65263eb897c 100644
--- a/srcpkgs/xf86-video-fbturbo/template
+++ b/srcpkgs/xf86-video-fbturbo/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbturbo'
 pkgname=xf86-video-fbturbo
 version=0.4.0
-revision=17
+revision=18
 build_style=gnu-configure
 short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
 maintainer="Orphaned <orphan@voidlinux.org>"

From 78968c8f619989fa74cf2d60ac603bc135748c6c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 28/30] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 68f12c5279612d538ce50228515d2cf8f692ab98 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 29/30] xf86-video-mach64: rebuild against xorg

---
 srcpkgs/xf86-video-mach64/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From dd6503390b0d21de0b3b869423c066eea304391e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 30/30] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (12 preceding siblings ...)
  2021-12-27 21:37 ` dkwo
@ 2021-12-27 21:38 ` dkwo
  2021-12-28  4:48 ` [PR PATCH] [Updated] " dkwo
                   ` (39 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-27 21:38 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 241 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1001770533

Comment:
Revbumped all, added a couple of patches stolen from arch/alpine.
It seems to work fine on my system.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (13 preceding siblings ...)
  2021-12-27 21:38 ` dkwo
@ 2021-12-28  4:48 ` dkwo
  2021-12-28 12:22 ` dkwo
                   ` (38 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-28  4:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 50695 bytes --]

From e3d033d67f540c7e788fe8f69d9844541c435ebc Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/30] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 3348e70e6dec7f4b60057073af91c63d6e894066 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/30] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index e1a175684656..66e09d7d760c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 0e2cbbac915cb94a42712641c9590f347b8d16d1 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/30] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From df8c3c401bff16276e7593dd4958430c574335cc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/30] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 4b789b321d6d1104a0f733c48c08538935c8227d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/30] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 61d9a4122a075fbfc76972545c41a9fa9900dfec Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/30] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 4fe22423e9a4fd1682cc36064a679bf78a5e1b03 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/30] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 2a60b72a736a6eca998690a92439d059a12a5de1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/30] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 6a80f90bf432e8d4b30aabceb2a90e276f0a8428 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/30] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 1d5d92e9b5e2fb6839370ecd5ffba78ebc71dbf7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/30] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 0368a27f283873d25c3efe773dccb54d9f3b939f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/30] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From a6bf098ac5855e1c7cb8ec3fbfadc16b0a1db72b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/30] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From b785e49752f1812d56c3474de8a3198fad667c54 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/30] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From 21b6ce54863a8d752e3141516c0e0647e8eacc73 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/30] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 63eb3702526bb4546daf4c079415d152124c8aac Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/30] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 1aa1cce242480c2fcfa3e6318a0ca11d0e1665a4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/30] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From f7c0dae842ff1eedd455814e46a7d3c695dda703 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/30] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 55a7f5de54339ae6e8902afda463746245618252 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/30] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 57aa7f680c6ce9ba3349e1833130ae10668cbb3b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/30] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From d5aaec7b96b64a5d3811bc4667baffcae10a21d3 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/30] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 51117831a3fee88da0902896bde02f471bd7b863 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/30] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 632294bb443fd25ecae8362c1e98205fa5cd322e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/30] xf86-video-ati: rebuild against xorg

---
 srcpkgs/xf86-video-ati/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From b265b18522038a802438b830415ed017c5fa8592 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/30] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 46ce5d35bb1a6523dc37bc91144fcc584c625fc8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/30] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From b3bccecc5a257d6e38ff96504059f900184fc830 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/30] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 8e019b2742aac6e13fa163ddb2a6f819db687977 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/30] xf86-video-fbturbo-sunxi: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-fbturbo-sunxi/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
index 3da5f84a572c..4e9f63e01774 100644
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ b/srcpkgs/xf86-video-fbturbo-sunxi/template
@@ -1,20 +1,19 @@
 # Template file for 'xf86-video-fbturbo-sunxi'
 pkgname=xf86-video-fbturbo-sunxi
 version=0.4.0
-revision=5
+revision=6
+archs="armv7l"
 wrksrc="${pkgname%-sunxi}-${version}"
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-server-devel"
 makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
 depends="virtual?xserver-abi-video-24_1 sunxi-mali"
 short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT, GPL-2.0-or-later"
 homepage="http://github.com/ssvb/xf86-video-fbturbo"
 distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
 checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
 conflicts="xf86-video-fbturbo>=0"
 
 LDFLAGS="-Wl,-z,lazy"

From 89b03bc083a3192979965c252c46f566e0f6bb78 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 27/30] xf86-video-fbturbo: rebuild against xorg

---
 srcpkgs/xf86-video-fbturbo/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
index acfbff8c05d3..a65263eb897c 100644
--- a/srcpkgs/xf86-video-fbturbo/template
+++ b/srcpkgs/xf86-video-fbturbo/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbturbo'
 pkgname=xf86-video-fbturbo
 version=0.4.0
-revision=17
+revision=18
 build_style=gnu-configure
 short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
 maintainer="Orphaned <orphan@voidlinux.org>"

From 78968c8f619989fa74cf2d60ac603bc135748c6c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 28/30] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From a7a3472d7c69e92f5012bf0209e78a7612327250 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 29/30] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From e2ca64045453b93f6a0a5f2f9a3c3bbe67c1d024 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 30/30] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (14 preceding siblings ...)
  2021-12-28  4:48 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-28 12:22 ` dkwo
  2021-12-28 14:06 ` dkwo
                   ` (37 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-28 12:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 73071 bytes --]

From 30f87469cc4f54ac097c4e6b84f1ea96ed9cd756 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/30] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 7816df095df8d2996580330f70412d5c80891c98 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/30] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index e1a175684656..66e09d7d760c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 422e50a5d332714df58e1500c2ed16a5597d872e Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/30] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From b19b257ba10e645607ffd87c2cce911f44b00768 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/30] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From b9e298cd1bcdcbd334c8237bd94e9cda34797a1f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/30] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 1993bd3012e49492ac1ad9d065615170c32e367c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/30] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 578d5420bc38eb93ee2231f4df0c1538a1b4a9b6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/30] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 99a1f26e480749ce8c8f3aed5543c2178d7acc04 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/30] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 83362a6a6daf8a66254bece4faf9e344dda36d77 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/30] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 8656d95fcce8dbd832e89cb5439fecb4391b9832 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/30] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From b3cb53ee425a51458cfebf0818de37978bcb9cdc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/30] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From 447e72844a493694003f4f0507818638ba9c1e23 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/30] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 58272bb534febc08cf8db234ad02e6826ab15d5a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/30] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From e72223e6be7b53df9d067efe62a3e62840d73eef Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/30] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 8624075909e5f29b86c50d60c131a276731cf48a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/30] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 9ab7c25715f240e013a8670f6dea9e377971dc3f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/30] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 2c0347c2c414e70bc13fc967d8d1fbbf7b903a4d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/30] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 5b47dc1e36a18d1aab15cd4adcc1d8d3768ec076 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/30] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From ff023b0663756d9b372c5d9c9433b7c6c450b9fe Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/30] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 3d5d601ef50b5d907154652928a88117a06e6224 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/30] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From c9f20eefdf2b627bbd7dccbd2c1e12016daaa55b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/30] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From a1d0391d984a595ee4d59dad062fd37adcb14c0e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/30] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 917f0b83b57d076682944a0bf4664d1317f688c8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/30] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 0fc6bd4c733e0c13d9f9dda15d0613b9069bd8a5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/30] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 615d4fcd881eafea6029a28c44fc9104fdf5f63c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/30] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From cd9d414dd3001682b5230844f153617b2bb9af51 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/30] xf86-video-fbturbo-sunxi: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-fbturbo-sunxi/template | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
index 3da5f84a572c..4e9f63e01774 100644
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ b/srcpkgs/xf86-video-fbturbo-sunxi/template
@@ -1,20 +1,19 @@
 # Template file for 'xf86-video-fbturbo-sunxi'
 pkgname=xf86-video-fbturbo-sunxi
 version=0.4.0
-revision=5
+revision=6
+archs="armv7l"
 wrksrc="${pkgname%-sunxi}-${version}"
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-server-devel"
 makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
 depends="virtual?xserver-abi-video-24_1 sunxi-mali"
 short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT, GPL-2.0-or-later"
 homepage="http://github.com/ssvb/xf86-video-fbturbo"
 distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
 checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
 conflicts="xf86-video-fbturbo>=0"
 
 LDFLAGS="-Wl,-z,lazy"

From 31975f9f136e33c9be190f3dfdb052e0c50bded4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 27/30] xf86-video-fbturbo: rebuild against xorg

---
 srcpkgs/xf86-video-fbturbo/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
index acfbff8c05d3..a65263eb897c 100644
--- a/srcpkgs/xf86-video-fbturbo/template
+++ b/srcpkgs/xf86-video-fbturbo/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbturbo'
 pkgname=xf86-video-fbturbo
 version=0.4.0
-revision=17
+revision=18
 build_style=gnu-configure
 short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
 maintainer="Orphaned <orphan@voidlinux.org>"

From 76f178ca160b5583469f3c395ba1848825647155 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 28/30] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From bd4b0f6d44e72f8416422b630ab7674a44b468d7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 29/30] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 46c54d24155875cbcdddc8e9f1b1a4316cc71a2f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 30/30] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (15 preceding siblings ...)
  2021-12-28 12:22 ` dkwo
@ 2021-12-28 14:06 ` dkwo
  2021-12-28 14:07 ` [PR PATCH] [Updated] " dkwo
                   ` (36 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-28 14:06 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 478 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1002122208

Comment:
Patches were taken from upstream: either pull requests, or already merged into master.
Only exception is `xf86-video-fbturbo*`, which has not seen changes since 2015 and unsurprinsingly fails to build with recent xorg.
There's an issue on its github https://github.com/ssvb/xf86-video-fbturbo/issues/66 I'm not sure what to do with this.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (16 preceding siblings ...)
  2021-12-28 14:06 ` dkwo
@ 2021-12-28 14:07 ` dkwo
  2021-12-28 14:09 ` dkwo
                   ` (35 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-28 14:07 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 70830 bytes --]

From 30f87469cc4f54ac097c4e6b84f1ea96ed9cd756 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/28] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 7816df095df8d2996580330f70412d5c80891c98 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/28] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index e1a175684656..66e09d7d760c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 422e50a5d332714df58e1500c2ed16a5597d872e Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/28] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From b19b257ba10e645607ffd87c2cce911f44b00768 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/28] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From b9e298cd1bcdcbd334c8237bd94e9cda34797a1f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/28] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 1993bd3012e49492ac1ad9d065615170c32e367c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/28] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 578d5420bc38eb93ee2231f4df0c1538a1b4a9b6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/28] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 99a1f26e480749ce8c8f3aed5543c2178d7acc04 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/28] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 83362a6a6daf8a66254bece4faf9e344dda36d77 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/28] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 8656d95fcce8dbd832e89cb5439fecb4391b9832 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/28] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From b3cb53ee425a51458cfebf0818de37978bcb9cdc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/28] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From 447e72844a493694003f4f0507818638ba9c1e23 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/28] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 58272bb534febc08cf8db234ad02e6826ab15d5a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/28] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From e72223e6be7b53df9d067efe62a3e62840d73eef Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/28] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 8624075909e5f29b86c50d60c131a276731cf48a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/28] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 9ab7c25715f240e013a8670f6dea9e377971dc3f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/28] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 2c0347c2c414e70bc13fc967d8d1fbbf7b903a4d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/28] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 5b47dc1e36a18d1aab15cd4adcc1d8d3768ec076 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/28] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From ff023b0663756d9b372c5d9c9433b7c6c450b9fe Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/28] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 3d5d601ef50b5d907154652928a88117a06e6224 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/28] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From c9f20eefdf2b627bbd7dccbd2c1e12016daaa55b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/28] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From a1d0391d984a595ee4d59dad062fd37adcb14c0e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/28] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 917f0b83b57d076682944a0bf4664d1317f688c8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/28] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 0fc6bd4c733e0c13d9f9dda15d0613b9069bd8a5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/28] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 615d4fcd881eafea6029a28c44fc9104fdf5f63c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/28] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From aa0c8d7ac625bd0dac7d5e969024604e98361b6c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/28] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From de25ccdb768f3f1483a22cbf3b6c9a23176d3e09 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 27/28] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 4930c37b41ef07c041805a4cc90215f17b018de8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 28/28] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (17 preceding siblings ...)
  2021-12-28 14:07 ` [PR PATCH] [Updated] " dkwo
@ 2021-12-28 14:09 ` dkwo
  2022-01-02  8:31 ` dkwo
                   ` (34 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2021-12-28 14:09 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 283 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1002123468

Comment:
Also, in some cases I took only patches that allow to build, but judging from the commits' titles more patches may be needed for using the pkgs.

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (18 preceding siblings ...)
  2021-12-28 14:09 ` dkwo
@ 2022-01-02  8:31 ` dkwo
  2022-01-02 18:32 ` [PR PATCH] [Updated] " dkwo
                   ` (33 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-02  8:31 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 395 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1003680788

Comment:
The package `xf86-video-fbturbo*` not only is obsolete, but it also seems not very usefull/not working in present condition,
see e.g. https://new.reddit.com/r/voidlinux/comments/rtkdhd/display_server_on_rpi4_using_aarch64/
@Piraty Shall I just remove it?

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (19 preceding siblings ...)
  2022-01-02  8:31 ` dkwo
@ 2022-01-02 18:32 ` dkwo
  2022-01-02 18:34 ` dkwo
                   ` (32 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-02 18:32 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 76350 bytes --]

From f13fbd4d862cd7fd9ef69839ce44cbc693516569 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/29] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From b0e32e493e8cff5e8270f30bf836cfe80bba3b50 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/29] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 2c7ae83ce7fcd0e128c85ce1e437537d8b490cb2 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/29] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 3dbe0e723b2e0f6d6b0a6ea671c2fda39a06e3e6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/29] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From bf3ebe65aafac54ad933072361d5958460b9186d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/29] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From e8d698074714f8f379e77b9ed81184bf57ac2ee4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/29] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 273353eaf5dd744597270473853846e606e8ad44 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/29] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From a2ed47a9d2c6a550b5537cafd7508ceefc0bb813 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/29] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 24ef1403b70f2d5a46fa05770d16f241ceea2418 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/29] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 907415decc95dddb071c5b0f61df3996b2cd3082 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/29] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 8395e4ef5ea6a352d167e2c0a4f8dd2587b42ea9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/29] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From ecbeef517a0513654dd2db521dcf24a6300dbf09 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/29] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 1917e967dec66413ebbad37336b3169d73103758 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/29] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From cb2227cf26d87c3265ef89799f8af4ec367c87c2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/29] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 20dbe883ea899610428d2d03dd4d991a59ce193a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/29] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 11ece87d351041e127043b3bbacbba47cb9e7586 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/29] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 16fc190add30abe9f20dfda3856789da6d512327 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/29] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 8bed9e7153765f8b0358880c958e03a1eaa4d931 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/29] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 9edee3e24e466df73f5220dbc146e87b6947a765 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/29] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 218096fcb50573cd3d9f6164aad1a0755aeb9a83 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/29] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 29f69a8df05a9e00e09013d7e47dbf7454b9962e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/29] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 3727efd7ccc76ee8cd2aed30b7ea7dece5e20fc9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/29] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From ed9b03450563f42af5ab780bc6fb59a570b7f7e4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/29] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 9c58806d9b4edf5376bbb5e9e1bea13a371c1051 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/29] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 55e3fe761c54484e07c7c03d300af5a17e43b3ae Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/29] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From e89e768032946b5453b76834fe3ba431f307b8a0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/29] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From f59bd2b536c067530da5764f66463f7be1b67520 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 27/29] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 99258dd4850cc1e9159ad2836c690c5ddc9cc3de Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 28/29] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From f752e71eba12ba23baee59b00436d8e640b0137d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:31:38 +0100
Subject: [PATCH 29/29] remove obsolete packages xf86-video-fbturbo-sunxi and
 xf86-video-fbturbo

---
 srcpkgs/removed-packages/template             | 16 +++++++++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 -------------
 srcpkgs/xf86-video-fbturbo/template           | 23 ---------------
 5 files changed, 15 insertions(+), 93 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 2b16ae44131f..b4ba5ac3bcd9 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=55
+revision=56
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -368,3 +368,17 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (20 preceding siblings ...)
  2022-01-02 18:32 ` [PR PATCH] [Updated] " dkwo
@ 2022-01-02 18:34 ` dkwo
  2022-01-02 18:48 ` dkwo
                   ` (31 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-02 18:34 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 76301 bytes --]

From f13fbd4d862cd7fd9ef69839ce44cbc693516569 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/29] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From b0e32e493e8cff5e8270f30bf836cfe80bba3b50 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/29] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 2c7ae83ce7fcd0e128c85ce1e437537d8b490cb2 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/29] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 3dbe0e723b2e0f6d6b0a6ea671c2fda39a06e3e6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/29] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From bf3ebe65aafac54ad933072361d5958460b9186d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/29] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From e8d698074714f8f379e77b9ed81184bf57ac2ee4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/29] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 273353eaf5dd744597270473853846e606e8ad44 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/29] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From a2ed47a9d2c6a550b5537cafd7508ceefc0bb813 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/29] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 24ef1403b70f2d5a46fa05770d16f241ceea2418 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/29] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 907415decc95dddb071c5b0f61df3996b2cd3082 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/29] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 8395e4ef5ea6a352d167e2c0a4f8dd2587b42ea9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/29] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From ecbeef517a0513654dd2db521dcf24a6300dbf09 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/29] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 1917e967dec66413ebbad37336b3169d73103758 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/29] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From cb2227cf26d87c3265ef89799f8af4ec367c87c2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/29] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 20dbe883ea899610428d2d03dd4d991a59ce193a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/29] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 11ece87d351041e127043b3bbacbba47cb9e7586 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/29] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 16fc190add30abe9f20dfda3856789da6d512327 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/29] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 8bed9e7153765f8b0358880c958e03a1eaa4d931 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/29] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 9edee3e24e466df73f5220dbc146e87b6947a765 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/29] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 218096fcb50573cd3d9f6164aad1a0755aeb9a83 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/29] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 29f69a8df05a9e00e09013d7e47dbf7454b9962e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/29] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 3727efd7ccc76ee8cd2aed30b7ea7dece5e20fc9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/29] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From ed9b03450563f42af5ab780bc6fb59a570b7f7e4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/29] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 9c58806d9b4edf5376bbb5e9e1bea13a371c1051 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/29] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 55e3fe761c54484e07c7c03d300af5a17e43b3ae Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/29] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From e89e768032946b5453b76834fe3ba431f307b8a0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/29] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From f59bd2b536c067530da5764f66463f7be1b67520 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 27/29] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 99258dd4850cc1e9159ad2836c690c5ddc9cc3de Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 28/29] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 792ce400ad5f689456adc8aedc82249d66674093 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:31:38 +0100
Subject: [PATCH 29/29] remove obsolete packages

---
 srcpkgs/removed-packages/template             | 16 +++++++++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 -------------
 srcpkgs/xf86-video-fbturbo/template           | 23 ---------------
 5 files changed, 15 insertions(+), 93 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 2b16ae44131f..b4ba5ac3bcd9 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=55
+revision=56
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -368,3 +368,17 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (21 preceding siblings ...)
  2022-01-02 18:34 ` dkwo
@ 2022-01-02 18:48 ` dkwo
  2022-01-04  9:55 ` dkwo
                   ` (30 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-02 18:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 77146 bytes --]

From f13fbd4d862cd7fd9ef69839ce44cbc693516569 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/30] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From b0e32e493e8cff5e8270f30bf836cfe80bba3b50 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/30] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 2c7ae83ce7fcd0e128c85ce1e437537d8b490cb2 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/30] xorg-server: update to 21.1.2

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a8196e0c82af 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.2
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=c20bf46a9fe8e74bf4e75430637e58d49a02d806609dc161462bceb1ef7e8db0
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 3dbe0e723b2e0f6d6b0a6ea671c2fda39a06e3e6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/30] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From bf3ebe65aafac54ad933072361d5958460b9186d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/30] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From e8d698074714f8f379e77b9ed81184bf57ac2ee4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/30] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 273353eaf5dd744597270473853846e606e8ad44 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/30] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From a2ed47a9d2c6a550b5537cafd7508ceefc0bb813 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/30] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 24ef1403b70f2d5a46fa05770d16f241ceea2418 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/30] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 907415decc95dddb071c5b0f61df3996b2cd3082 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/30] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 8395e4ef5ea6a352d167e2c0a4f8dd2587b42ea9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/30] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From ecbeef517a0513654dd2db521dcf24a6300dbf09 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/30] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 1917e967dec66413ebbad37336b3169d73103758 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/30] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From cb2227cf26d87c3265ef89799f8af4ec367c87c2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/30] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 20dbe883ea899610428d2d03dd4d991a59ce193a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/30] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 11ece87d351041e127043b3bbacbba47cb9e7586 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/30] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 16fc190add30abe9f20dfda3856789da6d512327 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/30] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 8bed9e7153765f8b0358880c958e03a1eaa4d931 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/30] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 9edee3e24e466df73f5220dbc146e87b6947a765 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/30] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 218096fcb50573cd3d9f6164aad1a0755aeb9a83 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/30] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 29f69a8df05a9e00e09013d7e47dbf7454b9962e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/30] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 3727efd7ccc76ee8cd2aed30b7ea7dece5e20fc9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/30] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From ed9b03450563f42af5ab780bc6fb59a570b7f7e4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/30] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 9c58806d9b4edf5376bbb5e9e1bea13a371c1051 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/30] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 55e3fe761c54484e07c7c03d300af5a17e43b3ae Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/30] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From e89e768032946b5453b76834fe3ba431f307b8a0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/30] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From f59bd2b536c067530da5764f66463f7be1b67520 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 27/30] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 99258dd4850cc1e9159ad2836c690c5ddc9cc3de Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 28/30] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From bce5c556a1dff68183f2252b124a12629b7fb0cf Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 29/30] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 12 +++++++++-
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 11 insertions(+), 44 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 2b16ae44131f..e93796044cd9 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=55
+revision=56
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -368,3 +368,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 6ca72b5e0b5bb830dd3a93b42ee3168a3000187f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 30/30] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index e93796044cd9..5275b1f568cc 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=56
+revision=57
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -378,3 +378,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (22 preceding siblings ...)
  2022-01-02 18:48 ` dkwo
@ 2022-01-04  9:55 ` dkwo
  2022-01-04 17:40 ` dkwo
                   ` (29 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-04  9:55 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 76899 bytes --]

From d8f16d57ec8c5f3050922c1f95100133896108ea Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/30] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From fd0008f0a66f5d1067d96e1790679c2628a0c7fa Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/30] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From ef167373afd240048d24988bd8312adc064731c3 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/30] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 28 ++++--------
 7 files changed, 8 insertions(+), 155 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..1fca7d282c18 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,7 +24,7 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
  xserver-abi-video-24_1 xf86-video-modesetting-1_1"
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From b250c30292de9df9e0b8f6b7a6303ba7482e8faa Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/30] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 2eb345873a352f5d90784a31a45115f3b3e8a751 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/30] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From d2fd95f433953b5e3708f7a7a176d96310b2c393 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/30] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From a031e853a6dff4157550e0114201d6c6d37171eb Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/30] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From ed7704499aeafdca2f480c75690a41f4b0821162 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/30] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 3dd8b49514aa4d05921596529995caf383375c21 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/30] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From fff1c80e3924a68a49bc6ded8389bbe4c8696576 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 10/30] xf86-input-mtrack: rebuild against xorg

---
 srcpkgs/xf86-input-mtrack/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-mtrack/template b/srcpkgs/xf86-input-mtrack/template
index 0f78142030d3..e04040307f42 100644
--- a/srcpkgs/xf86-input-mtrack/template
+++ b/srcpkgs/xf86-input-mtrack/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-mtrack'
 pkgname=xf86-input-mtrack
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config xorg-util-macros"
 makedepends="xorg-server-devel mtdev-devel"

From 283f0dc53c104d9f8e9daa30508d8251b94ef9fb Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 11/30] xf86-input-synaptics: rebuild against xorg

---
 srcpkgs/xf86-input-synaptics/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-synaptics/template b/srcpkgs/xf86-input-synaptics/template
index 1c9f2be0a939..d39dcdc98aeb 100644
--- a/srcpkgs/xf86-input-synaptics/template
+++ b/srcpkgs/xf86-input-synaptics/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-synaptics'
 pkgname=xf86-input-synaptics
 version=1.9.1
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="libX11-devel libXtst-devel libevdev-devel

From c96e70baa363085c7259f307999bb69a6d42a12f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 12/30] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 4d309a77b33425202458380cbf359581dd951101 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 13/30] xf86-input-wacom: rebuild against xorg

---
 srcpkgs/xf86-input-wacom/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-input-wacom/template b/srcpkgs/xf86-input-wacom/template
index 2dafa7ed001b..f65f8f8858fd 100644
--- a/srcpkgs/xf86-input-wacom/template
+++ b/srcpkgs/xf86-input-wacom/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-input-wacom'
 pkgname=xf86-input-wacom
 version=0.40.0
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--without-systemd-unit-dir"
 hostmakedepends="pkg-config"

From 7ffb1b2e0dfb45eea797bd64c4b76642972d0d89 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 14/30] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From bf5705bd98c6b4acf41040b9b32aecd525358284 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 15/30] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From e118cc116c5d999d55a98a0e395b07d1137bb990 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 16/30] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 1af32f61c2aa4ebfcc651ebafdbfa58e8c9778d1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/30] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 6ace738ba1452ce784e59018781fc0839213dd8c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 18/30] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From cc4942c2a519b2cb8e38ba1f5eb8fb91c120318b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 19/30] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 44fe8f882ea1e51003368be6135a936343b262b3 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 20/30] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From cc71d090e317e001503e83875561abca0af0b6e6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/30] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 8f2c5a3f37769adf47621a62803ff498bba5c794 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 22/30] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 371496bdbd4501de99c25203b3e19a3acc5c27ae Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 23/30] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From b8189a29031ea39e4bb0b785cea075858bcec1c0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 24/30] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From f6dc04b368097bea28dcd0b3f8021bb915f3b25c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 25/30] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 2b948f01765cd68778bdc1556cca6c1cf0a19d04 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 26/30] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 1b6e3c41382fd9079f11a46a4c529a24a0950744 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 27/30] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From a8d6982bf44643f910862759d453e04f51afeb02 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 28/30] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 200875aca8720a3f36c2bb27761510855639481d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 29/30] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 4bab6419b983..afc4a2875d35 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -369,3 +369,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 2fc2fac0a19b2864ebb927968cdd92faf74ffa78 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 30/30] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index afc4a2875d35..48f6a8c3ff6f 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=56
+revision=57
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -379,3 +379,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (23 preceding siblings ...)
  2022-01-04  9:55 ` dkwo
@ 2022-01-04 17:40 ` dkwo
  2022-01-04 18:24 ` [PR REVIEW] " abenson
                   ` (28 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-04 17:40 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 220 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1005032534

Comment:
Updated to a new xorg version and rebased onto master.
This is ready for review.

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

* Re: [PR REVIEW] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (24 preceding siblings ...)
  2022-01-04 17:40 ` dkwo
@ 2022-01-04 18:24 ` abenson
  2022-01-04 18:25 ` abenson
                   ` (27 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 18:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 272 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#discussion_r778296634

Comment:
I believe `input` and `video` need to be bumped to 25_1.  Not sure about `extension`.  Also not entirely sure about `input`. 

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (25 preceding siblings ...)
  2022-01-04 18:24 ` [PR REVIEW] " abenson
@ 2022-01-04 18:25 ` abenson
  2022-01-04 18:36 ` abenson
                   ` (26 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 18:25 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 226 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1005064004

Comment:
`nvidia` and `nvidia390` are likely blockers until they're updated for the ABI bump.

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (26 preceding siblings ...)
  2022-01-04 18:25 ` abenson
@ 2022-01-04 18:36 ` abenson
  2022-01-04 18:39 ` [PR REVIEW] " abenson
                   ` (25 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 18:36 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 281 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1005064004

Comment:
~~`nvidia` and `nvidia390` are likely blockers until they're updated for the ABI bump.~~

It looks like they should, I'm double checking.

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

* Re: [PR REVIEW] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (27 preceding siblings ...)
  2022-01-04 18:36 ` abenson
@ 2022-01-04 18:39 ` abenson
  2022-01-04 18:39 ` abenson
                   ` (24 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 473 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#discussion_r778296634

Comment:
I `video` need to be bumped to 25_1.  The rebuild for the `xf86-input-*` and others can be dropped, it's just `video` that changed.


     #define ABI_VIDEODRV_VERSION    SET_ABI_VERSION(25, 2)

[Current ABI Versions](https://github.com/freedesktop/xorg-xserver/blob/xorg-server-21.1.3/hw/xfree86/common/xf86Module.h#L76)

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

* Re: [PR REVIEW] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (28 preceding siblings ...)
  2022-01-04 18:39 ` [PR REVIEW] " abenson
@ 2022-01-04 18:39 ` abenson
  2022-01-04 19:13 ` abenson
                   ` (23 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 18:39 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#discussion_r778296634

Comment:
`xserver-abi-video` need to be bumped to 25_1.  The rebuild for the `xf86-input-*` and others can be dropped, it's just `video` that changed.


     #define ABI_VIDEODRV_VERSION    SET_ABI_VERSION(25, 2)

[Current ABI Versions](https://github.com/freedesktop/xorg-xserver/blob/xorg-server-21.1.3/hw/xfree86/common/xf86Module.h#L76)

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (29 preceding siblings ...)
  2022-01-04 18:39 ` abenson
@ 2022-01-04 19:13 ` abenson
  2022-01-05  8:56 ` [PR PATCH] [Updated] " dkwo
                   ` (22 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-04 19:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 179 bytes --]

New comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1005098135

Comment:
`nvidia`  and `nvidia390` are fine.  

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (30 preceding siblings ...)
  2022-01-04 19:13 ` abenson
@ 2022-01-05  8:56 ` dkwo
  2022-01-05  8:57 ` dkwo
                   ` (21 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-05  8:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 74840 bytes --]

From 432b8924d3c10d0ff8f5d131ba663ee5231989ee Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 2804720ccaac455b63c3fb45cc6c6771be2b48cd Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From c3bf59b7c47027ac2ce8f29b274b39daf96045f2 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 32 +++++---------
 7 files changed, 10 insertions(+), 157 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..e14b0a21791a 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
-provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+provides="xserver-abi-extension-10_0 xserver-abi-input-24_4
+ xserver-abi-video-25_2 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 46240f59807a93322894ea0016c919efa3a1f94c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 03a56bb9103186ec13122bf122da412c3e2c9f23 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From a5ddbd923d6e31ea15bd27a71db34c0811050d12 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 87e5af4a596ea081011e17c7ce3510a03ed08621 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 40c7d73165d74070993e950cdb3259aff228cfa9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 3ab8cd812429b9345b24166a2811032ec572cbb0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 6bb14c4204cfc400c0380bb4c0d2612fbed47b04 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From ff1175b232f91a1b1eee675a7eba9a97f9924898 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 942c2e29cf05ab3babc8b578d91af3cb2ddac4f1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 1fb135bc2c50918df9e5a477dedcafd1e231d5bd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From ab2d0a558072665c4dfa4ea4765e652553f9c931 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 26dcdc420da24562519fd166945050e07fde44c8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From a298d4b39b81565573dc38ac1502651253f256a0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 05d3c35d4db4847156f266556d48c1a0130ea6e6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 437fd4909c46fc8098321b27de405ef10d564c7c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 8196196cfe374bb7d9e7cc01408c62d1515e1889 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From e84cdd82dfeeaa1ddb28a38a17bcf4fa550e24c1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From dc4df062cc7facf084abb7e05f4e38a032557d69 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From fc2223c0dbcbf3456f605cb8c934b7202611439a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From d6f04648b5cc8c695531d9711d084d966ee91b21 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From cb7d5dd5612955710b1eb676c36b8f13bacf29f1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From d6a8de7180a051292e89512353f449af3b771747 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From b77a797213fd6f6f22aef9c076921ce2fa4d2d89 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 4bab6419b983..afc4a2875d35 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -369,3 +369,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 0bbc1198d69522d2fb55feebfee1d19c402c15b7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index afc4a2875d35..48f6a8c3ff6f 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=56
+revision=57
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -379,3 +379,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (31 preceding siblings ...)
  2022-01-05  8:56 ` [PR PATCH] [Updated] " dkwo
@ 2022-01-05  8:57 ` dkwo
  2022-01-05  9:48 ` [PR REVIEW] " dkwo
                   ` (20 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-05  8:57 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 74777 bytes --]

From 432b8924d3c10d0ff8f5d131ba663ee5231989ee Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 2804720ccaac455b63c3fb45cc6c6771be2b48cd Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 999d3ad714b8..5e5c3cb9aeda 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 63ce00fb62ad15386ea416665aec7a3eb50fb63d Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 30 ++++---------
 7 files changed, 9 insertions(+), 156 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From c429c12beb1caa6196b6744e56b492695e4c2187 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 418c61891dc828257ae731faecdee3ea3fd9e59a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 6fbb3c2096236f9ca05e1451d7dcef93c8e7e37c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 0590bb43e69ae8cf8d4921375b5da041db56ed27 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 1a4679400dded3c26ce92f5c6ac9203f719b5015 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From dabe58f664b8deb4dc41865f460e6babe9de08df Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From f015047c7409518c2b587dc63fe9564a330fff9e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 09f0765dbefeb906a387d206e6748e107f76619f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From ffbdb21543ac15dcf4884d7fc538e926bb83cda2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 759c07721f93dc5a0100a26351f4d6a0263d590e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 48c5271564aab52397d02160b287dda40ced4492 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From cbf9b8605c1c4c5f2cd55800435e2422b2fc2e67 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From a0a976ee7f3d005085202cf7c54b5da2da362069 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 1fdaa1c75f9eeb02ccdb274719469854c244ccf4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 9b5c1faa5cece334b7d12426948fc8c898fc6753 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 04f9c546018d5e674eae4e2ae93be61ae6531258 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 153c70b365e1ae83603c37a4b5fcd06f786a0cd4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 980438e1b4d09ba3d9b98bd02fce8458e18850b6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 322800524f58165f65afe6d9fe881b23d9416a60 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 8edffd6621811e84508afee6c30781ba940169ce Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 0b14724271a30b963c01dd0745ad11e50c4e796c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 916faae20e2fdc47c0d76e0e1058e46781227526 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 26dd386eafa221e800e593b15a72956cf6aea835 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 4bab6419b983..afc4a2875d35 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -369,3 +369,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 02e4b66b180d58134ae25c6fad2802d23cf99540 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index afc4a2875d35..48f6a8c3ff6f 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=56
+revision=57
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -379,3 +379,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR REVIEW] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (32 preceding siblings ...)
  2022-01-05  8:57 ` dkwo
@ 2022-01-05  9:48 ` dkwo
  2022-01-05 14:53 ` abenson
                   ` (19 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-05  9:48 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 348 bytes --]

New review comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#discussion_r778680999

Comment:
Done. I assumed only the first digit is relevant, i.e. 25_1 is correct, and not 25_2, please correct me if wrong.
I kept some input* packages, as I previously fixed some lint for them, hope this is fine.

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

* Re: [PR REVIEW] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (33 preceding siblings ...)
  2022-01-05  9:48 ` [PR REVIEW] " dkwo
@ 2022-01-05 14:53 ` abenson
  2022-01-12 11:32 ` [PR PATCH] [Updated] " dkwo
                   ` (18 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: abenson @ 2022-01-05 14:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 297 bytes --]

New review comment by abenson on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#discussion_r778882816

Comment:
Yes, the 25 is the import part.  The latter is just a revision and only because xbps expects/requires one.

lint fixes and updates are fine to keep.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (34 preceding siblings ...)
  2022-01-05 14:53 ` abenson
@ 2022-01-12 11:32 ` dkwo
  2022-01-12 11:33 ` dkwo
                   ` (17 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-12 11:32 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 74777 bytes --]

From e86ab988cff3b7b733c33056e18d7ac7284184e3 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 7f857b5d2645b5e43416aa76ec95e538eff8db86 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index f5e92014becc..a9893d54c607 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4022,6 +4022,7 @@ libpari-gmp-tls.so.7 pari-2.13.2_1
 libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 1a7ffaa81c9c8c6d9e8977bf98ec7428b16463a3 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 30 ++++---------
 7 files changed, 9 insertions(+), 156 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 6358544197ab74b1ca06962a50cf1e7bcace0d35 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 3065c6fc45c0467f08aa4fd61b9d3eb37927f956 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 85edfe0e92a5c9c94552067ab4fe9473af657399 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From cae77f7719b712bab38241334e6f9f55b7ca5ef5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 5da797b34021bc16497c6ec43de8d7946aac8267 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 4dcd95fd5ba8d72a96375aedacd5235bd4b179be Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 723ea3821fe4ec669585efd9f850b4801bf0dc9d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From bf4f14df30991aa2406b0fcb1c1472f8a2610fb5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 3976fa7cc256bc99ae0a176a217dd03329922626 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 54ad938532226fd5bdd3d550f2d724b6839fb810 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From c314651f723cb5ba2bc3ec674660ebccc0088b9a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 7518cb6784892778d027dff845a0101f8b0d1d90 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 65701df5f32c2bc97ced3d1c837ffe36b6e8c263 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 867e9522fbbf05a4c39e039718a51cadc8b163c4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From c6eddc36e6ff76b7cd239e2968aa70373c5ee11d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From e99f7669365ae5f1c65a64345754915a1f7fdfc8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 744174b358defcbffd5df1f46a534087a6f07236 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From ff7ce3dfa003412c721cf1b2a7fac3ad27eb91b6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 1b9d55138265be95e161e2c20852149c9393bbaa Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 01483cc7d9a1e4ba29053a3ff231672206403061 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 28c3668a913cc4bb72b09aeedc15f402294781f4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From a4bd023b7be90b2b7d4431f5bac4a334a1a6ada2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From ece067ec1111e18d24f05da57c923ab2d221c97c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index c14aeb0167f7..b6d1f6cf6db8 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -378,3 +378,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 808e095bfd87617dac1a936c225149130bdec293 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index b6d1f6cf6db8..fe7bd4952656 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=58
+revision=59
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -388,3 +388,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (35 preceding siblings ...)
  2022-01-12 11:32 ` [PR PATCH] [Updated] " dkwo
@ 2022-01-12 11:33 ` dkwo
  2022-01-22 17:51 ` [PR PATCH] [Updated] " dkwo
                   ` (16 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-12 11:33 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 202 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1010948688

Comment:
Rebase again on master.
Anything else that should be improved?

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (36 preceding siblings ...)
  2022-01-12 11:33 ` dkwo
@ 2022-01-22 17:51 ` dkwo
  2022-02-03  9:54 ` dkwo
                   ` (15 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-01-22 17:51 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 74767 bytes --]

From eb3618b28aa15b2ac250fcf4780c20e15abbcd1a Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From c71c517376766bd83a3756b603664c4d3116e16b Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 6fe46eaaeb05..11a026d6d274 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4025,6 +4025,7 @@ libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgap.so.0 gap-4.11.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 20f64dc2f0fb0ea9df0a1002262bf67f303231f7 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 30 ++++---------
 7 files changed, 9 insertions(+), 156 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From ab0369947f0691046bc284cb367c1e3e35c6436c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 575f4aa1c602bced4d304a2ab58807fe19b87593 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 733c7d142adc59739bdafc6a40a78ece33b6c2d5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 7c3e0fd48370a2639bc384b0d24b5759ed074575 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 718fdf95756083a792dabea5a485ccf5584e08a7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 14647cfa9b0f1508cb29f52ae3a10d757216cb4b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 54fb76b9c870962367c3b843e75e0e1d910f84bc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From f15b1b71bd439c9e94ac4a00ef5db49ef6081184 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From a9c944865c9a1abbdb3f3625904cf9bdd4347c6d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From eaf627bd91279441041389b26548af953053ff71 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 634ae0980ff156337b00d99372204a8a34f861e9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 182e310b6799be937967a514c4d964da230b1d08 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From a80676741bf200f1553fbf782a3323c7471b9382 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 02030d337b4a095213890ae7af8ca96ce2587e99 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 2f7061efdee329bac592c425b5f78bbee4fb62fd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 96e56f4cbc783f0d7a75d16ef6c020d378001cff Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From ddec2ffb9fad92f7903e59e4de79609ca234c751 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 567359b00728881b259c8d706732ec9a32e582ba Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 0ae6982f7c6dd8bb1dfb6a33829279b06bcd3bfc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 673a8317c64a40631729e8924b20133ec58e96a8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From c68d9f645c0107f56b6824ef9d9f2d8bad15254d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From c763bea8ce88508f07ad40217092801aeb79edcb Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 056aec69386341fbf53ff3a67047d2ef1e5df189 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index c14aeb0167f7..b6d1f6cf6db8 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -378,3 +378,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 398e2db79b6e45722932c9c9ec17385579e5529e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index b6d1f6cf6db8..fe7bd4952656 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=58
+revision=59
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -388,3 +388,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (37 preceding siblings ...)
  2022-01-22 17:51 ` [PR PATCH] [Updated] " dkwo
@ 2022-02-03  9:54 ` dkwo
  2022-02-05 10:08 ` slotThe
                   ` (14 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-03  9:54 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 74767 bytes --]

From 6fa99859731c520ac302e21d1887351eaba49e8b Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 81390b021f1d35d4dc3b9927873add228a248db5 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 13ced25060b0..4f5d501d157c 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4026,6 +4026,7 @@ libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgap.so.0 gap-4.11.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 44ae26a4c90f480202a357fbb468e601a44620dc Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 srcpkgs/xorg-server/template                  | 30 ++++---------
 7 files changed, 9 insertions(+), 156 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index e48d679b0360..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
+version=21.1.3
 revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 6a3121788f32269eae1b2ad26991e0eab8092794 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From ffe7adbf81ceb8a53beae6f11b4cf658bd142fc6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 6ec539d4050b..6fbb6ea2d575 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 1c8e9289707d26179ec237e725e14abf1aea7eee Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 415e402fe9279b8771a2596c08fbe355e757e2c1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 09c7188e4c6505102f80c089fa8396da53020214 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From f1ced13c346a4a3bfb8c89067c8a2d4822180093 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From d2f7a57090e7d029a0e94a73cae2a18db291ccce Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From d232dc28aa69e4babd462450f2d41e2045dd0319 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From c74b5faca52dd1c1ae51929238f56e1cf1f7cb6e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From b45034fc3691a5c39892e94d1c5ba5c836f54837 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 60600bd96ff6e9222ff9aa016f080ec67069345f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From eb79b71ae87d97435917e61f184272a11c495f2f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 61a97f5c177f13746edf8a557a42cae2ee3579bd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 06ef0935c1e68a6a82075334b226b2249d990345 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 16424ac7d4a0ed2d5545cd7840e89ba0aa6581de Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 9114a4ac74253fcf8cff82fbbbc6f0c0eb546502 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 833e5e7dc0c038f220b3760adf61908a38f262c6 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 679fee046eff727c204389a9a7f36d53a5a81bbb Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 663b33691b3d90626b1a9172e014789700418dc9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From fa5abfdac87da8b44d53d8cc358698f4954fa9e8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From a1f9b9ede5caa562c7b0949f9dc8767cd63956fe Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 13a02ff505417a9fdf563f4366319e122ae5f2e8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 3bba135d6d69ff99425f123ac47e58bb415bcb29 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 50a0a2c34756..9501d4abcd1c 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -383,3 +383,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 85fb9f35881d4eca2efd40d784a75ed010495c15 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 9501d4abcd1c..00187ccdadd7 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=59
+revision=60
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -393,3 +393,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (38 preceding siblings ...)
  2022-02-03  9:54 ` dkwo
@ 2022-02-05 10:08 ` slotThe
  2022-02-05 13:11 ` dkwo
                   ` (13 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: slotThe @ 2022-02-05 10:08 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 200 bytes --]

New comment by slotThe on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030593700

Comment:
@leahneukirchen @abenson anything still holding this back?

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (39 preceding siblings ...)
  2022-02-05 10:08 ` slotThe
@ 2022-02-05 13:11 ` dkwo
  2022-02-05 15:45 ` leahneukirchen
                   ` (12 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-05 13:11 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 302 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030622449

Comment:
Shall I perhaps also include upstream commit https://gitlab.freedesktop.org/xorg/xserver/-/commit/22d5818851967408bb7c903cb345b7ca8766094c
as proposed in #35414 ?

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (40 preceding siblings ...)
  2022-02-05 13:11 ` dkwo
@ 2022-02-05 15:45 ` leahneukirchen
  2022-02-05 15:56 ` leahneukirchen
                   ` (11 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: leahneukirchen @ 2022-02-05 15:45 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 257 bytes --]

New comment by leahneukirchen on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030647517

Comment:
Yes, I'll backport this for 1.20 now, but if 21.1 has been tested by a few people we can merge this now too.

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (41 preceding siblings ...)
  2022-02-05 15:45 ` leahneukirchen
@ 2022-02-05 15:56 ` leahneukirchen
  2022-02-05 16:02 ` [PR PATCH] [Updated] " dkwo
                   ` (10 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: leahneukirchen @ 2022-02-05 15:56 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 172 bytes --]

New comment by leahneukirchen on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030649294

Comment:
paper already did it :)

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (42 preceding siblings ...)
  2022-02-05 15:56 ` leahneukirchen
@ 2022-02-05 16:02 ` dkwo
  2022-02-05 16:03 ` dkwo
                   ` (9 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-05 16:02 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 76433 bytes --]

From d177c529bc88d29ab0041711eec2e51090f8f788 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 91557d271cd5199f63ac2a645df5a9f2178d7a68 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 4c8ceab393f7..b55510e0b058 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4027,6 +4027,7 @@ libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgap.so.0 gap-4.11.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 041095b43641f07636fcc3c30f9e5fa2f6c4fb1d Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 .../patches/upstream-present.patch            | 42 ++++++++++++++++++
 srcpkgs/xorg-server/template                  | 32 +++++---------
 8 files changed, 52 insertions(+), 157 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
 create mode 100644 srcpkgs/xorg-server/patches/upstream-present.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/patches/upstream-present.patch b/srcpkgs/xorg-server/patches/upstream-present.patch
new file mode 100644
index 000000000000..ca02e648db37
--- /dev/null
+++ b/srcpkgs/xorg-server/patches/upstream-present.patch
@@ -0,0 +1,42 @@
+From 22d5818851967408bb7c903cb345b7ca8766094c Mon Sep 17 00:00:00 2001
+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>
+---
+ present/present_scmd.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/present/present_scmd.c b/present/present_scmd.c
+index da836ea6b..239055bc1 100644
+--- 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/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index 38b40bfae005..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
-revision=2
+version=21.1.3
+revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 31cb9f6918126ec7590b9ca0c2fce705965cc9a8 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 180621fa1c7c572ba3e0370dc761dff90b94d32e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 618d3eb3aee1..6260c11f6674 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 620d1de42b676075ee75e05c1de7c05f3468bc86 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 88f1b3e3dd8c7849b71df40aa42f6a7f1566970c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From c8fa6018a92e991cf238fe2e51a5be42ae0cd2f9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 6ce7d4cf61bde6274a7e20880b7e929ede2bb622 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From ec8e7139913d6ecbd78815b41f16be63e9f8dd32 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From cf4b5198cc144dddd34da206b2db5f49c8eb2cec Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From 4b6fe63d0062dc5c2f77dab88d3487965233859d Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From f33872a12f328f51aeab49a4453700623a4b7d68 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 3b417821a5968c66830d98c3bdf6d441598584dc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 8312cc693193710872d1ec993ff054f7c9145d34 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 62740aff0ba4bc78405404718fc065c7d9cdca54 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From 5dee69c8f679bcd053a12c2473b495db1cb6c386 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From dd55259d9bce50bd7b120348cb9cbf51b4456fc2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 7c18c99e65d6bb1795b5f20e8757c4136743019e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From 4d3d0eb0fd3d42f9c24f69f1d01c445ab550da4f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From af9811ae8e181d91959b34fa983ee334842004c1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From a1734fe62f83b0cb07a43c174c77629b89e190b7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From 8871258ac16b58a7f711986f357c888737e798d2 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 34d8a6f0e78afea0c36161402d87ca1b7a264684 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 0743da73368033b143583caa6c29f53f3240f24a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 6f624374666b572cac365d024052d8d89982e613 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 5dbd28a0d070..00c4ae0af83a 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -386,3 +386,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From de8322316abe5a3dc05f4874c5008241a1756d5e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 00c4ae0af83a..23528615666e 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=59
+revision=60
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -396,3 +396,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (43 preceding siblings ...)
  2022-02-05 16:02 ` [PR PATCH] [Updated] " dkwo
@ 2022-02-05 16:03 ` dkwo
  2022-02-05 16:20 ` [PR PATCH] [Updated] " dkwo
                   ` (8 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-05 16:03 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 278 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030650437

Comment:
I've been using this PR for several weeks now, with dwm: no issues.
I added the upstream patch and rebased on master.
Ready to merge imo.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (44 preceding siblings ...)
  2022-02-05 16:03 ` dkwo
@ 2022-02-05 16:20 ` dkwo
  2022-02-05 16:21 ` dkwo
                   ` (7 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-05 16:20 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 76863 bytes --]

From d177c529bc88d29ab0041711eec2e51090f8f788 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 91557d271cd5199f63ac2a645df5a9f2178d7a68 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 4c8ceab393f7..b55510e0b058 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4027,6 +4027,7 @@ libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgap.so.0 gap-4.11.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From a7cd85f3b48c8084804a7b88f4b7e28e818a3de5 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 ...sent-Check-for-NULL-to-prevent-crash.patch | 15 +++----
 srcpkgs/xorg-server/template                  | 32 +++++---------
 8 files changed, 17 insertions(+), 165 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch b/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
index 894ad0eb1d47..ca02e648db37 100644
--- a/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
+++ b/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
@@ -1,24 +1,23 @@
-From 94b4a3d45451d29e9539ea234ce8b5e9ed58546c Mon Sep 17 00:00:00 2001
+From 22d5818851967408bb7c903cb345b7ca8766094c Mon Sep 17 00:00:00 2001
 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 xserver] present: Check for NULL to prevent crash
+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>
+Signed-off-by: Błażej Szczygieł <spaz16@wp.pl>
 Tested-by: Aaron Plattner <aplattner@nvidia.com>
-(cherry picked from commit 22d5818851967408bb7c903cb345b7ca8766094c)
 ---
  present/present_scmd.c | 6 ++++++
  1 file changed, 6 insertions(+)
 
 diff --git a/present/present_scmd.c b/present/present_scmd.c
-index 3c68e690b..11391adbb 100644
+index da836ea6b..239055bc1 100644
 --- a/present/present_scmd.c
 +++ b/present/present_scmd.c
-@@ -168,6 +168,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window)
+@@ -158,6 +158,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window)
      if (!screen_priv->info)
          return NULL;
  
@@ -28,7 +27,7 @@ index 3c68e690b..11391adbb 100644
      return (*screen_priv->info->get_crtc)(window);
  }
  
-@@ -206,6 +209,9 @@ present_flush(WindowPtr window)
+@@ -196,6 +199,9 @@ present_flush(WindowPtr window)
      if (!screen_priv->info)
          return;
  
@@ -39,5 +38,5 @@ index 3c68e690b..11391adbb 100644
  }
  
 -- 
-2.34.1
+GitLab
 
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index 38b40bfae005..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
-revision=2
+version=21.1.3
+revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From 2e92a36046c1aa33f6f50fb8d84581f77264c38e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 008d7efa00b7561978337a280ef491a04dd58de1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 618d3eb3aee1..6260c11f6674 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From 73488b369c01f8250819e309e66c139fb3ae73ed Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From 65acdf243f8845ecb0858b32ffad04079dc11fae Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 00138f1136837fb918e88bfd0d35c2157902a3cd Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From bea8fbd5e37306084677274da5e8b98ded8ee819 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From b0bd13712fd8cddfb800155026f15874e98de875 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 139c22083cd9354401895f549cd5abfb24608daa Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..5bf8d029789f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"

From aec4c6e543b468678a5a7901550be2d7012ed40f Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..161ab90beb15 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From f58b2bcd4c567797de88bb24decb50957a1071c4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   2 +-
 2 files changed, 101 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..32e933d88e30 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"

From 63cb38830eb4913db722deb07b68b8f7db2b8321 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..efc7dacd4581 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"

From 06811b870889bbb4f6ead4780b5ffe368f532da9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..1571ddc1acb2 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From e063daa665fea82e0bb082371d4dc9084a808005 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..53f83d34dd72 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"

From e28a51ee740365a37db0395a67a937d47f8343b4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..ae10393a9e9a 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"

From 4d85eddee1fcccc54b001a18b2ef5bff2debb577 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..dc3ed6292eaa 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel

From 1fcbf6666f71265b242411c4051080232f953388 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   2 +-
 6 files changed, 526 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..0d4e35cdfc8f 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel

From ffd225d76f592e70f5fee5a124929f5eae673695 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From dc15560b4f3f003300dd55aef3e91233912f8276 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..c123da327ac2 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 41c58d527ce397ebc078d272c4517bdd1f475a8a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..6ffa3fcfafa5 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"

From aaf5e546443e2d7aee9d3d5f782975a23b8e36b5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..53e847593e87 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"

From 2d6e654f30228068cdd11561578fa8d53d64a2ce Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 85aeac9ec7e6e5ff658fd4f1664222b8adebaf9e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  2 +-
 2 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..e8af10f784ef 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"

From 257e9b236e83f2bc5cb1c14209f7730b24dc7f43 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 5dbd28a0d070..00c4ae0af83a 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -386,3 +386,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From fcc4762c1cd735c6c87d7ae011c87a2b25518c50 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 00c4ae0af83a..23528615666e 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=59
+revision=60
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -396,3 +396,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (45 preceding siblings ...)
  2022-02-05 16:20 ` [PR PATCH] [Updated] " dkwo
@ 2022-02-05 16:21 ` dkwo
  2022-02-07  7:24 ` slotThe
                   ` (6 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-05 16:21 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 222 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1030653226

Comment:
Sorry, I was dumb: patch has been already added in void repo, no need to re-add it!

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (46 preceding siblings ...)
  2022-02-05 16:21 ` dkwo
@ 2022-02-07  7:24 ` slotThe
  2022-02-07  7:24 ` slotThe
                   ` (5 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: slotThe @ 2022-02-07  7:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1252 bytes --]

New comment by slotThe on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1031150685

Comment:
@dkwo I successfully build this with `update-bulk`, but `xorg-server` doesn't want to install:

    xf86-video-amdgpu-21.0.0_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-ati-19.1.0_5 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-dummy-0.3.8_5 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-fbdev-0.5.0_2 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-intel-2.99.917.20210115_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-nouveau-1.0.17_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-vesa-2.5.0_2 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-vmware-13.3.0_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')

(rebuilding the respective packages—or all the packages, for that matter—didn't seem to help)

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (47 preceding siblings ...)
  2022-02-07  7:24 ` slotThe
@ 2022-02-07  7:24 ` slotThe
  2022-02-07  8:49 ` dkwo
                   ` (4 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: slotThe @ 2022-02-07  7:24 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1255 bytes --]

New comment by slotThe on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1031150685

Comment:
@dkwo I've successfully build this with `update-bulk`, but `xorg-server` doesn't want to install:

    xf86-video-amdgpu-21.0.0_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-ati-19.1.0_5 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-dummy-0.3.8_5 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-fbdev-0.5.0_2 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-intel-2.99.917.20210115_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-nouveau-1.0.17_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-vesa-2.5.0_2 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')
    xf86-video-vmware-13.3.0_3 broken, needs 'xserver-abi-video-24_1' virtual pkg (got `xserver-abi-video-25_1')

(rebuilding the respective packages—or all the packages, for that matter—didn't seem to help)

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (48 preceding siblings ...)
  2022-02-07  7:24 ` slotThe
@ 2022-02-07  8:49 ` dkwo
  2022-02-07  9:13 ` [PR PATCH] [Updated] " dkwo
                   ` (3 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-07  8:49 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 258 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1031213239

Comment:
That's because they have a line
`depends="virtual?xserver-abi-video-24_1 mesa-dri"`
which needs 25.
Let me fix that.

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

* Re: [PR PATCH] [Updated] xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (49 preceding siblings ...)
  2022-02-07  8:49 ` dkwo
@ 2022-02-07  9:13 ` dkwo
  2022-02-07  9:13 ` dkwo
                   ` (2 subsequent siblings)
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-07  9:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 483 bytes --]

There is an updated pull request by dkwo against master on the void-packages repository

https://github.com/dkwo/void-packages xorg-server21
https://github.com/void-linux/void-packages/pull/34593

xorg: update stuff
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


A patch file from https://github.com/void-linux/void-packages/pull/34593.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-xorg-server21-34593.patch --]
[-- Type: text/x-diff, Size: 79572 bytes --]

From bf9ea14a8ac8affa701844d796ec9f2977fb376b Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:14:55 +0200
Subject: [PATCH 01/27] xorgproto: update to 2021.5.

Adopted.
---
 srcpkgs/xorgproto/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/xorgproto/template b/srcpkgs/xorgproto/template
index 2014581a3825..e5a9b43ba341 100644
--- a/srcpkgs/xorgproto/template
+++ b/srcpkgs/xorgproto/template
@@ -1,16 +1,16 @@
 # Template file for 'xorgproto'
 pkgname=xorgproto
-version=2021.4
+version=2021.5
 revision=1
 build_style=gnu-configure
 configure_args="--enable-legacy"
 hostmakedepends="xorg-util-macros"
 short_desc="Combined X.Org X11 Protocol headers"
-maintainer="Orphaned <orphan@voidlinux.org>"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/proto/xorgproto-${version}.tar.gz"
-checksum=9de0babd3d8cb16b0c1c47b8389a52f3e1326bb0bc9a9ab34a9500778448a2bd
+checksum=be6ddd6590881452fdfa170c1c9ff87209a98d36155332cbf2ccbc431add86ff
 replaces="bigreqsproto>=0 compositeproto>=0 damageproto>=0 dmxproto>=0 dri2proto>=0
  dri3proto>=0 fixesproto>=0 fontsproto>=0 glproto>=0 inputproto>=0 kbproto>=0 presentproto>=0
  printproto>=0 randrproto>=0 recordproto>=0 renderproto>=0 resourceproto>=0 scrnsaverproto>=0

From 9526b20f31c7ddaf2848c6657825a4012673d72e Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:23:11 +0200
Subject: [PATCH 02/27] New package: libxcvt-0.1.1

---
 common/shlibs            |  1 +
 srcpkgs/libxcvt-devel    |  1 +
 srcpkgs/libxcvt/template | 26 ++++++++++++++++++++++++++
 3 files changed, 28 insertions(+)
 create mode 120000 srcpkgs/libxcvt-devel
 create mode 100644 srcpkgs/libxcvt/template

diff --git a/common/shlibs b/common/shlibs
index 763fb105e610..39137dbe048f 100644
--- a/common/shlibs
+++ b/common/shlibs
@@ -4027,6 +4027,7 @@ libtree-sitter.so.0 tree-sitter-0.19.0_1
 libplanarity.so.0 planarity-3.0.1.1_1
 libgap.so.0 gap-4.11.1_1
 libgtkdatabox.so.1 gtkdatabox3-1.0.0_1
+libxcvt.so.0 libxcvt-0.1.1_1
 libgf2x.so.3 gf2x-1.3.0_1
 libntl.so.44 ntl-11.5.1_1
 libflint.so.16 flintlib-2.8.0_1
diff --git a/srcpkgs/libxcvt-devel b/srcpkgs/libxcvt-devel
new file mode 120000
index 000000000000..d9ec4fc36191
--- /dev/null
+++ b/srcpkgs/libxcvt-devel
@@ -0,0 +1 @@
+libxcvt
\ No newline at end of file
diff --git a/srcpkgs/libxcvt/template b/srcpkgs/libxcvt/template
new file mode 100644
index 000000000000..6c0f0e5d0384
--- /dev/null
+++ b/srcpkgs/libxcvt/template
@@ -0,0 +1,26 @@
+# Template file for 'libxcvt'
+pkgname=libxcvt
+version=0.1.1
+revision=1
+wrksrc="${pkgname}-${pkgname}-${version}"
+build_style=meson
+short_desc="VESA CVT standard timing modelines generator"
+maintainer="Leah Neukirchen <leah@vuxu.org>"
+license="MIT"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxcvt/"
+distfiles="https://gitlab.freedesktop.org/xorg/lib/libxcvt/-/archive/libxcvt-${version}/libxcvt-libxcvt-${version}.tar.gz"
+checksum=2dc651a0944d1f0b95747a095e0ea16f870f12168d09d5200dac518d02273224
+
+post_install() {
+	vlicense COPYING
+}
+
+libxcvt-devel_package() {
+	short_desc+=" - development files"
+	depends="${sourcepkg}>=${version}_${revision}"
+	pkg_install() {
+		vmove usr/include
+		vmove usr/lib/*.so
+		vmove usr/lib/pkgconfig
+	}
+}

From 2c09be64805e2bc0aa8c35ba6eb9e23e99608466 Mon Sep 17 00:00:00 2001
From: Leah Neukirchen <leah@vuxu.org>
Date: Fri, 29 Oct 2021 15:28:39 +0200
Subject: [PATCH 03/27] xorg-server: update to 21.1.3

---
 srcpkgs/xorg-server-xdmx                      |  1 -
 .../patches/fix-musl-input_event.patch        | 43 -------------------
 ...t-on-probing-non-pci-platform-device.patch | 31 -------------
 .../fix-serverconfigdir-location.patch        | 11 -----
 .../patches/meson-fontrootdir.patch           | 26 -----------
 .../meson-install-xorg-wrap-script.patch      | 23 ----------
 ...sent-Check-for-NULL-to-prevent-crash.patch | 15 +++----
 srcpkgs/xorg-server/template                  | 32 +++++---------
 8 files changed, 17 insertions(+), 165 deletions(-)
 delete mode 120000 srcpkgs/xorg-server-xdmx
 delete mode 100644 srcpkgs/xorg-server/patches/fix-musl-input_event.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
 delete mode 100644 srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-fontrootdir.patch
 delete mode 100644 srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch

diff --git a/srcpkgs/xorg-server-xdmx b/srcpkgs/xorg-server-xdmx
deleted file mode 120000
index 0e680f217e7c..000000000000
--- a/srcpkgs/xorg-server-xdmx
+++ /dev/null
@@ -1 +0,0 @@
-xorg-server
\ No newline at end of file
diff --git a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch b/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
deleted file mode 100644
index 04e7c1332495..000000000000
--- a/srcpkgs/xorg-server/patches/fix-musl-input_event.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Source: @pullmoll
-Upstream: no
-Reason: Gracefully handle transition to 64 bit time with musl-1.2.1
-
---- a/hw/dmx/input/usb-keyboard.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/input/usb-keyboard.c	2020-12-01 20:28:02.489695853 +0100
-@@ -278,8 +278,8 @@
- 
-     gettimeofday(&tv, NULL);
-     for (i = 0; i < 5; i++) {
--        event.time.tv_sec = tv.tv_sec;
--        event.time.tv_usec = tv.tv_usec;
-+        event.input_event_sec = tv.tv_sec;
-+        event.input_event_usec = tv.tv_usec;
-         event.type = EV_LED;
-         if (i == 0)
-             led = 1;            /* LED_CAPSL == 0x01 */
---- a/hw/dmx/examples/ev.c	2020-12-01 17:32:25.000000000 +0100
-+++ b/hw/dmx/examples/ev.c	2020-12-01 20:31:24.585605950 +0100
-@@ -114,8 +114,8 @@
-         if ((fd = open(name, O_RDWR, 0)) >= 0) {
-             printf("%s: open, fd = %d\n", name, fd);
-             for (i = 0; i < LED_MAX; i++) {
--                event.time.tv_sec = time(0);
--                event.time.tv_usec = 0;
-+                event.input_event_sec = time(0);
-+                event.input_event_usec = 0;
-                 event.type = EV_LED;
-                 event.code = i;
-                 event.value = 0;
-@@ -123,9 +123,10 @@
-             }
- 
-             while ((rc = read(fd, &event, sizeof(event))) > 0) {
-+		struct timeval t = {event.input_event_sec, event.input_event_usec};
-                 printf("%-24.24s.%06lu type 0x%04x; code 0x%04x;"
-                        " value 0x%08x; ",
--                       ctime(&event.time.tv_sec),
--                       event.time.tv_usec, event.type, event.code, event.value);
-+                       ctime(&t.tv_sec),
-+                       t.tv_usec, event.type, event.code, event.value);
-                 switch (event.type) {
-                 case EV_KEY:
diff --git a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch b/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
deleted file mode 100644
index 167e7781cf09..000000000000
--- a/srcpkgs/xorg-server/patches/fix-segfault-on-probing-non-pci-platform-device.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From e50c85f4ebf559a3bac4817b41074c43d4691779 Mon Sep 17 00:00:00 2001
-From: Eric Anholt <eric@anholt.net>
-Date: Fri, 26 Oct 2018 17:47:30 -0700
-Subject: [PATCH] Fix segfault on probing a non-PCI platform device on a system
- with PCI.
-
-Some Broadcom set-top-box boards have PCI busses, but the GPU is still
-probed through DT.  We would dereference a null busid here in that
-case.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- hw/xfree86/common/xf86platformBus.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git hw/xfree86/common/xf86platformBus.c hw/xfree86/common/xf86platformBus.c
-index cef47da03d..dadbac6c8f 100644
---- a/hw/xfree86/common/xf86platformBus.c
-+++ b/hw/xfree86/common/xf86platformBus.c
-@@ -289,7 +289,7 @@ xf86platformProbe(void)
-     for (i = 0; i < xf86_num_platform_devices; i++) {
-         char *busid = xf86_platform_odev_attributes(i)->busid;
- 
--        if (pci && (strncmp(busid, "pci:", 4) == 0)) {
-+        if (pci && busid && (strncmp(busid, "pci:", 4) == 0)) {
-             platform_find_pci_info(&xf86_platform_devices[i], busid);
-         }
- 
--- 
-GitLab
-
diff --git a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch b/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
deleted file mode 100644
index 707150956a0b..000000000000
--- a/srcpkgs/xorg-server/patches/fix-serverconfigdir-location.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -507,7 +507,7 @@ glx_inc = include_directories('glx')
- 
- top_srcdir_inc = include_directories('.')
- 
--serverconfigdir = join_paths(get_option('libdir'), 'xorg')
-+serverconfigdir = join_paths(get_option('prefix'), get_option('libdir'), 'xorg')
- 
- manpage_config = configuration_data()
- manpage_config.set('vendorversion', '"xorg-server @0@" "X Version 11"'.format(meson.project_version()))
diff --git a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch b/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
deleted file mode 100644
index 8f86d6cf428d..000000000000
--- a/srcpkgs/xorg-server/patches/meson-fontrootdir.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/meson.build
-+++ b/meson.build
-@@ -122,8 +122,11 @@
- 
- dfp = get_option('default_font_path')
- if dfp == ''
--    fontutil_dep = dependency('fontutil')
--    fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+    fontrootdir = get_option('font_root_dir')
-+	if fontrootdir == ''
-+		fontutil_dep = dependency('fontutil')
-+		fontrootdir = fontutil_dep.get_pkgconfig_variable('fontrootdir')
-+	endif
-     default_font_path = ','.join([
-         join_paths(fontrootdir, 'misc'),
-         join_paths(fontrootdir, 'TTF'),
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -24,6 +24,7 @@
- option('module_dir', type: 'string', value: 'xorg/modules',
-        description: 'X.Org modules directory (absolute or relative to the directory specified by the libdir option)')
- option('default_font_path', type: 'string')
-+option('font_root_dir', type: 'string')
- 
- option('glx', type: 'boolean', value: true)
- option('xdmcp', type: 'boolean', value: true)
diff --git a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch b/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
deleted file mode 100644
index deb0fcb844cd..000000000000
--- a/srcpkgs/xorg-server/patches/meson-install-xorg-wrap-script.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/hw/xfree86/meson.build
-+++ b/hw/xfree86/meson.build
-@@ -145,12 +145,15 @@
-         install_dir: get_option('libexecdir'),
-         # install_mode: ['r-sr-xr-x', 0, 0],
-     )
--    configure_file(
--        input: 'Xorg.sh.in',
--        output: 'Xorg',
--        configuration: conf_data,
-+    install_data(configure_file(
-+			input: 'Xorg.sh.in',
-+			output: 'Xorg.sh',
-+			configuration: conf_data,
-+    	),
-+		rename: 'Xorg',
-+		install_mode: 'rwxr-xr-x',
-         install_dir: join_paths(get_option('prefix'), get_option('bindir')),
--    )
-+	)
- endif
-
- executable('cvt',
diff --git a/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch b/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
index 894ad0eb1d47..ca02e648db37 100644
--- a/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
+++ b/srcpkgs/xorg-server/patches/present-Check-for-NULL-to-prevent-crash.patch
@@ -1,24 +1,23 @@
-From 94b4a3d45451d29e9539ea234ce8b5e9ed58546c Mon Sep 17 00:00:00 2001
+From 22d5818851967408bb7c903cb345b7ca8766094c Mon Sep 17 00:00:00 2001
 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 xserver] present: Check for NULL to prevent crash
+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>
+Signed-off-by: Błażej Szczygieł <spaz16@wp.pl>
 Tested-by: Aaron Plattner <aplattner@nvidia.com>
-(cherry picked from commit 22d5818851967408bb7c903cb345b7ca8766094c)
 ---
  present/present_scmd.c | 6 ++++++
  1 file changed, 6 insertions(+)
 
 diff --git a/present/present_scmd.c b/present/present_scmd.c
-index 3c68e690b..11391adbb 100644
+index da836ea6b..239055bc1 100644
 --- a/present/present_scmd.c
 +++ b/present/present_scmd.c
-@@ -168,6 +168,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window)
+@@ -158,6 +158,9 @@ present_scmd_get_crtc(present_screen_priv_ptr screen_priv, WindowPtr window)
      if (!screen_priv->info)
          return NULL;
  
@@ -28,7 +27,7 @@ index 3c68e690b..11391adbb 100644
      return (*screen_priv->info->get_crtc)(window);
  }
  
-@@ -206,6 +209,9 @@ present_flush(WindowPtr window)
+@@ -196,6 +199,9 @@ present_flush(WindowPtr window)
      if (!screen_priv->info)
          return;
  
@@ -39,5 +38,5 @@ index 3c68e690b..11391adbb 100644
  }
  
 -- 
-2.34.1
+GitLab
 
diff --git a/srcpkgs/xorg-server/template b/srcpkgs/xorg-server/template
index 38b40bfae005..a1cf78c0bc5c 100644
--- a/srcpkgs/xorg-server/template
+++ b/srcpkgs/xorg-server/template
@@ -1,22 +1,21 @@
 # Template file for 'xorg-server'
 pkgname=xorg-server
-version=1.20.14
-revision=2
+version=21.1.3
+revision=1
 build_style=meson
 configure_args="-Dipv6=true -Dxorg=true -Dxnest=true -Dxephyr=true
  -Dxvfb=true -Dhal=false -Dudev=true -Dxkb_dir=/usr/share/X11/xkb
- -Dxkb_output_dir=/var/lib/xkb -Dfont_root_dir=/usr/share/fonts/X11
- -Ddmx=true -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
+ -Dxkb_output_dir=/var/lib/xkb -Ddefault_font_path=/usr/share/fonts/X11
+ -Dlinux_acpi=true -Dlinux_apm=false -Dsuid_wrapper=true
  -Dxcsecurity=true -Dsystemd_logind=$(vopt_if elogind true false)
- -Dos_vendor=Void -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true
- -Dxwayland=false"
+ -Dglamor=true -Ddri2=true -Ddri3=true -Dglx=true"
 hostmakedepends="pkg-config xkbcomp flex"
 makedepends="MesaLib-devel libXaw-devel libXfont-devel libXfont2-devel
  libXrender-devel libXres-devel libXtst-devel libXv-devel libXxf86dga-devel
  libdmx-devel libepoxy-devel openssl-devel libtirpc-devel libxkbfile-devel
  libxkbui-devel libxshmfence-devel pixman-devel xcb-util-image-devel
  xcb-util-keysyms-devel xcb-util-renderutil-devel xcb-util-wm-devel xkbcomp
- nettle-devel $(vopt_if elogind 'dbus-devel')"
+ nettle-devel libxcvt-devel $(vopt_if elogind 'dbus-devel')"
 # See hw/xfree86/common/xf86Module.h. Only care for the major version.
 depends="xkeyboard-config $(vopt_if elogind 'elogind') xorg-server-common"
 checkdepends="xkeyboard-config"
@@ -25,10 +24,10 @@ maintainer="Leah Neukirchen <leah@vuxu.org>"
 license="MIT, BSD-3-Clause"
 homepage="https://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/xserver/${pkgname}-${version}.tar.xz"
-checksum=5cc5b70b9be89443e2594b93656c60bd5e82cd7f01deb4ce4faf81dcf546a16b
+checksum=61d6aad5b6b47a116b960bd7f0cba4ee7e6da95d6bb0b127bde75d7d1acdebe5
 lib32disabled=yes
 provides="xserver-abi-extension-10_1 xserver-abi-input-24_1
- xserver-abi-video-24_1 xf86-video-modesetting-1_1"
+ xserver-abi-video-25_1 xf86-video-modesetting-1_1"
 replaces="xf86-video-modesetting>=0 glamor-egl>=0"
 conf_files="/etc/X11/Xwrapper.config"
 
@@ -37,8 +36,8 @@ desc_option_elogind="Rootless Xorg support with elogind"
 
 # disable VBE on non-x86 systems
 case "$XBPS_TARGET_MACHINE" in
-	x86_64*|i686*) configure_args+=" -Dint10=x86emu -Dvbe=true" ;;
-	*) configure_args+=" -Dint10=false -Dvbe=false" ;;
+	x86_64*|i686*) configure_args+=" -Dint10=x86emu" ;;
+	*) configure_args+=" -Dint10=false" ;;
 esac
 
 # gcc10 needs to be hinted when symbols have multiple definitions
@@ -64,17 +63,6 @@ post_install() {
 	chmod 4755 ${DESTDIR}/usr/libexec/Xorg.wrap
 
 	find "${DESTDIR}"/usr/share/man -type f -iname '*[1-5].gz' -exec gunzip '{}' \;
-
-	# Readd old symlink
-	ln -s Xorg ${DESTDIR}/usr/bin/X
-}
-
-xorg-server-xdmx_package() {
-	short_desc="Distributed multihead X server and utilities"
-	pkg_install() {
-		vmove usr/bin/*dmx*
-		vmove usr/share/man/man1/*dmx*
-	}
 }
 
 xorg-server-xnest_package() {

From e40d739437c1446fb20b770e3739d11bfa749d20 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Fri, 17 Dec 2021 18:36:34 +0100
Subject: [PATCH 04/27] libX11: revbump for protocols

---
 srcpkgs/libX11/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/libX11/template b/srcpkgs/libX11/template
index 260b42da9770..83d21c86ad17 100644
--- a/srcpkgs/libX11/template
+++ b/srcpkgs/libX11/template
@@ -1,7 +1,7 @@
 # Template file for 'libX11'
 pkgname=libX11
 version=1.7.3.1
-revision=1
+revision=2
 build_style=gnu-configure
 configure_args="--enable-ipv6 --enable-xlocaledir --without-xmlto
  --enable-static --enable-malloc0returnsnull"

From 21cc62ba2ec46669dab9bd55e871e07093eb630b Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:17:10 +0100
Subject: [PATCH 05/27] xf86-input-libinput: update to 1.2.0

---
 srcpkgs/xf86-input-libinput/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-libinput/template b/srcpkgs/xf86-input-libinput/template
index 618d3eb3aee1..6260c11f6674 100644
--- a/srcpkgs/xf86-input-libinput/template
+++ b/srcpkgs/xf86-input-libinput/template
@@ -1,6 +1,6 @@
 # Template file for 'xf86-input-libinput'
 pkgname=xf86-input-libinput
-version=1.1.0
+version=1.2.0
 revision=1
 build_style=gnu-configure
 hostmakedepends="pkg-config"
@@ -13,7 +13,7 @@ homepage="https://xorg.freedesktop.org/"
 # no official changelog
 #changelog="https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/commits/master/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
-checksum=e11d2a41419124a6e9b148f1df181bf7819fc7398c8ee9a1b6390b0742c68d16
+checksum=f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6
 lib32disabled=yes
 
 post_install() {

From fdb9d53d3bb515c188ae924df97df77984fe250e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Thu, 23 Dec 2021 19:19:16 +0100
Subject: [PATCH 06/27] libXi: update to 1.8

---
 srcpkgs/libXi/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/libXi/template b/srcpkgs/libXi/template
index b9c21d38f27b..d1781a394bd3 100644
--- a/srcpkgs/libXi/template
+++ b/srcpkgs/libXi/template
@@ -1,6 +1,6 @@
 # Template file for 'libXi'
 pkgname=libXi
-version=1.7.10
+version=1.8
 revision=1
 build_style=gnu-configure
 configure_args="--enable-malloc0returnsnull"
@@ -9,9 +9,9 @@ makedepends="xorgproto libXfixes-devel libXext-devel"
 short_desc="X Input extension library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"
-homepage="${XORG_SITE}"
+homepage="https://gitlab.freedesktop.org/xorg/lib/libxi"
 distfiles="${XORG_SITE}/lib/$pkgname-$version.tar.bz2"
-checksum=36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061
+checksum=2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00
 
 post_install() {
 	vlicense COPYING

From b16cb4af3728cea5fbe872a60e4daf1e1f9d2aa0 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sat, 25 Dec 2021 09:11:29 +0100
Subject: [PATCH 07/27] libXfont2: update to 2.0.5

---
 srcpkgs/libXfont2/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/libXfont2/template b/srcpkgs/libXfont2/template
index 8164b2b239b5..b93f0b17b865 100644
--- a/srcpkgs/libXfont2/template
+++ b/srcpkgs/libXfont2/template
@@ -1,16 +1,16 @@
 # Template file for 'libXfont2'
 pkgname=libXfont2
-version=2.0.4
+version=2.0.5
 revision=1
+build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xtrans freetype-devel libfontenc-devel"
-build_style=gnu-configure
 short_desc="X font 2 Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/lib/${pkgname}-${version}.tar.bz2"
-checksum=6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6
+checksum=aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e
 
 post_install() {
 	vlicense COPYING

From 06979502409d88611788f8dd1448a933911e0b5a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:51 +0100
Subject: [PATCH 08/27] xf86-input-evdev: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-evdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-input-evdev/template b/srcpkgs/xf86-input-evdev/template
index d2d22723169d..71be2676f3b7 100644
--- a/srcpkgs/xf86-input-evdev/template
+++ b/srcpkgs/xf86-input-evdev/template
@@ -1,8 +1,7 @@
 # Template file for 'xf86-input-evdev'
 pkgname=xf86-input-evdev
 version=2.10.6
-revision=1
-lib32disabled=yes
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel mtdev-devel libevdev-devel"
@@ -13,6 +12,7 @@ license="MIT"
 homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/$pkgname-$version.tar.bz2"
 checksum=8726073e81861bc7b2321e76272cbdbd33c7e1a121535a9827977265b9033ec0
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 30e6c7b7e9750b6ee6b0d40c93d2bf8a03c40948 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:52 +0100
Subject: [PATCH 09/27] xf86-input-joystick: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-joystick/template | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/srcpkgs/xf86-input-joystick/template b/srcpkgs/xf86-input-joystick/template
index 4880dfada4df..ac5f66d63120 100644
--- a/srcpkgs/xf86-input-joystick/template
+++ b/srcpkgs/xf86-input-joystick/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-input-joystick'.
+# Template file for 'xf86-input-joystick'
 pkgname=xf86-input-joystick
 version=1.6.3
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Joystick Input driver for Xorg"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org/"
 license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=9e7669ecf0f23b8e5dc39d5397cf28296f692aa4c0e4255f5e02816612c18eab
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From fd52723d144f626d4f81af1ee82d08127ea48913 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:45:53 +0100
Subject: [PATCH 10/27] xf86-input-vmmouse: rebuild against xorg and fix lint

---
 srcpkgs/xf86-input-vmmouse/template | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-input-vmmouse/template b/srcpkgs/xf86-input-vmmouse/template
index 411bf4bfad81..5b3cfd435bf5 100644
--- a/srcpkgs/xf86-input-vmmouse/template
+++ b/srcpkgs/xf86-input-vmmouse/template
@@ -1,20 +1,19 @@
-# Template build file for 'xf86-input-vmmouse'.
+# Template file for 'xf86-input-vmmouse'
 pkgname=xf86-input-vmmouse
 version=13.1.0
-revision=3
-lib32disabled=yes
+revision=4
+archs="i686* x86_64*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-input-24_1"
 short_desc="Xorg VMware virtual mouse input driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://xorg.freedesktop.org"
 license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=0af558957ac1be1b2863712c2475de8f4d7f14921fd01ded2e2fde4921b19319
-
-archs="i686* x86_64*"
+lib32disabled=yes
 
 post_install() {
 	vlicense COPYING

From 081bc6a4167157d9d1b1df387f74ff06bf2c81d7 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 11/27] xf86-video-mga: rebuild against xorg

---
 srcpkgs/xf86-video-mga/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-mga/template b/srcpkgs/xf86-video-mga/template
index 39edac52798d..d93c595aac4f 100644
--- a/srcpkgs/xf86-video-mga/template
+++ b/srcpkgs/xf86-video-mga/template
@@ -1,11 +1,11 @@
 # Template file for 'xf86-video-mga'
 pkgname=xf86-video-mga
 version=2.0.0
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg Matrox Graphics Adapter video driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From 8bda9990ccbcfa5ec9c74a52dc8efaf5cf4bd472 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 12/27] xf86-video-openchrome: rebuild against xorg and fix
 lint

---
 srcpkgs/xf86-video-openchrome/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-video-openchrome/template b/srcpkgs/xf86-video-openchrome/template
index ec99ee3d0662..0744af20a998 100644
--- a/srcpkgs/xf86-video-openchrome/template
+++ b/srcpkgs/xf86-video-openchrome/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-openchrome'.
+# Template file for 'xf86-video-openchrome'
 pkgname=xf86-video-openchrome
 version=0.6.0
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel libXvMC-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg driver for VIA IGPs"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Duncaen <duncaen@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=da2975c6379358de52c1257710c67eb59139a7f0a1cd28d00cc64cc3e1c02f75
+lib32disabled=yes
 
 CFLAGS="-I$XBPS_CROSS_BASE/usr/include/xorg -fcommon"
 LDFLAGS="-Wl,-z,lazy"

From 40515229ea840987454443641afb6557ef281cb9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:06 +0100
Subject: [PATCH 13/27] xf86-video-qxl: rebuild against xorg and add patch

---
 srcpkgs/xf86-video-qxl/patches/buildfix.patch | 100 ++++++++++++++++++
 srcpkgs/xf86-video-qxl/template               |   4 +-
 2 files changed, 102 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/xf86-video-qxl/patches/buildfix.patch

diff --git a/srcpkgs/xf86-video-qxl/patches/buildfix.patch b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
new file mode 100644
index 000000000000..e9e87f14085b
--- /dev/null
+++ b/srcpkgs/xf86-video-qxl/patches/buildfix.patch
@@ -0,0 +1,100 @@
+From 4b083ede3c4a827a84295ff223e34ee3c2e581b2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
+ <zboszor@gmail.com>
+Date: Sat, 28 Aug 2021 15:38:40 +0200
+Subject: [PATCH] Fix a build  error with Xorg master
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use xf86ReturnOptValBool() in get_bool_option() instead of
+options[option_index].value.bool to fix a compiler error with
+current Xorg xserver master branch.
+
+Also use xf86GetOptValInteger() in get_int_option() and
+xf86GetOptValString() in get_str_option() for consistency.
+
+The change causes a slight performance drop during option parsing
+because the passed-in index_value is no longer used as an index
+into the options array.
+
+Instead, it's used as a token now for the standard option getter
+functions which works since the index_value to the get_*_option()
+functions are identical to the value of options[n].token in the
+passed-in OptionInfoRec array.
+
+Also rename "int option_index" to "int token" for clarity in all
+three functions.
+
+Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
+---
+ src/qxl_option_helpers.c | 13 +++++++------
+ src/qxl_option_helpers.h |  6 +++---
+ 2 files changed, 10 insertions(+), 9 deletions(-)
+
+diff --git a/src/qxl_option_helpers.c b/src/qxl_option_helpers.c
+index 2aba677..7707b7c 100644
+--- a/src/qxl_option_helpers.c
++++ b/src/qxl_option_helpers.c
+@@ -10,31 +10,32 @@
+ 
+ #include "qxl_option_helpers.h"
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name)
+ {
++    int value;
+     if (env_name && getenv(env_name)) {
+         return atoi(getenv(env_name));
+     }
+-    return options[option_index].value.num;
++    return xf86GetOptValInteger(options, token, &value) ? value : 0;
+ }
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name)
+ {
+     if (getenv(env_name)) {
+         return getenv(env_name);
+     }
+-    return options[option_index].value.str;
++    return xf86GetOptValString(options, token);
+ }
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name)
+ {
+     const char* value = getenv(env_name);
+ 
+     if (!value) {
+-        return options[option_index].value.bool;
++        return xf86ReturnOptValBool(options, token, FALSE);
+     }
+     if (strcmp(value, "0") == 0 ||
+         strcasecmp(value, "off") == 0 ||
+diff --git a/src/qxl_option_helpers.h b/src/qxl_option_helpers.h
+index 7c54c72..66d0a17 100644
+--- a/src/qxl_option_helpers.h
++++ b/src/qxl_option_helpers.h
+@@ -4,13 +4,13 @@
+ #include <xf86Crtc.h>
+ #include <xf86Opt.h>
+ 
+-int get_int_option(OptionInfoPtr options, int option_index,
++int get_int_option(OptionInfoPtr options, int token,
+                    const char *env_name);
+ 
+-const char *get_str_option(OptionInfoPtr options, int option_index,
++const char *get_str_option(OptionInfoPtr options, int token,
+                            const char *env_name);
+ 
+-int get_bool_option(OptionInfoPtr options, int option_index,
++int get_bool_option(OptionInfoPtr options, int token,
+                      const char *env_name);
+ 
+ #endif // OPTION_HELPERS_H
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-qxl/template b/srcpkgs/xf86-video-qxl/template
index 2a56bcc2cb88..27f34302efaf 100644
--- a/srcpkgs/xf86-video-qxl/template
+++ b/srcpkgs/xf86-video-qxl/template
@@ -1,11 +1,11 @@
 # Template file for 'xf86-video-qxl'
 pkgname=xf86-video-qxl
 version=0.1.5
-revision=2
+revision=3
 build_style=gnu-configure
 hostmakedepends="automake m4 xorg-util-macros libtool pkg-config"
 makedepends="xorg-server-devel spice-protocol xorgproto"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg QXL video driver"
 maintainer="Andrew Benson <abenson+void@gmail.com>"
 license="MIT"

From 74d400275d04945e69afb75894c0920dbcb225fc Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 14/27] xf86-video-r128: rebuild against xorg

---
 srcpkgs/xf86-video-r128/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-r128/template b/srcpkgs/xf86-video-r128/template
index 4dbe1529aa5c..b8ad814991eb 100644
--- a/srcpkgs/xf86-video-r128/template
+++ b/srcpkgs/xf86-video-r128/template
@@ -1,11 +1,11 @@
 # Template file for 'xf86-video-r128'
 pkgname=xf86-video-r128
 version=6.12.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg ATI Rage 128 video driver"
 maintainer="q66 <daniel@octaforge.org>"
 license="MIT"

From 259fd76741059d91c2e2c0359aab0870d101b8c9 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 15/27] xf86-video-sisusb: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-sisusb/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-video-sisusb/template b/srcpkgs/xf86-video-sisusb/template
index 2fa9efb4a1ff..b2be15477a73 100644
--- a/srcpkgs/xf86-video-sisusb/template
+++ b/srcpkgs/xf86-video-sisusb/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-sisusb'.
+# Template file for 'xf86-video-sisusb'
 pkgname=xf86-video-sisusb
 version=0.9.7
-revision=2
-lib32disabled=yes
+revision=3
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg SiS USB video driver"
-homepage="http://xorg.freedesktop.org/"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org/"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=f4400416b920cd1136d60d36b99d33f245cdeaf2ad6c1340936c7c0987761424
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From ac53fb15edcfc6293c5c3a76404143507556c76a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 16/27] xf86-video-vesa: rebuild against xorg

---
 srcpkgs/xf86-video-vesa/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-vesa/template b/srcpkgs/xf86-video-vesa/template
index e557522b41a1..b4ccc4ba4b9b 100644
--- a/srcpkgs/xf86-video-vesa/template
+++ b/srcpkgs/xf86-video-vesa/template
@@ -1,12 +1,12 @@
 # Template file for 'xf86-video-vesa'
 pkgname=xf86-video-vesa
 version=2.5.0
-revision=1
+revision=2
 archs="x86_64* i686*"
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg VESA video driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From 8c0f2f491319d249c7a93c0f1d28461b0ffde95c Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:07 +0100
Subject: [PATCH 17/27] xf86-video-vmware: rebuild against xorg

---
 srcpkgs/xf86-video-vmware/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-vmware/template b/srcpkgs/xf86-video-vmware/template
index 1da7f33d8ef1..e7e8e2947256 100644
--- a/srcpkgs/xf86-video-vmware/template
+++ b/srcpkgs/xf86-video-vmware/template
@@ -1,13 +1,13 @@
 # Template file for 'xf86-video-vmware'
 pkgname=xf86-video-vmware
 version=13.3.0
-revision=2
+revision=3
 archs="i686* x86_64*"
 build_style=gnu-configure
 configure_args="--enable-vmwarectrl-client"
 hostmakedepends="pkg-config"
 makedepends="libdrm-devel MesaLib-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1 mesa-dri"
+depends="virtual?xserver-abi-video-25_1 mesa-dri"
 short_desc="Modular Xorg VMware virtual video driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From 7191e7ef178dc810951a52929f7fd9d25e6e57b5 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 18/27] xf86-video-amdgpu: rebuild against xorg

---
 srcpkgs/xf86-video-amdgpu/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-amdgpu/template b/srcpkgs/xf86-video-amdgpu/template
index 8c3d0d56f820..6ca8bc71b554 100644
--- a/srcpkgs/xf86-video-amdgpu/template
+++ b/srcpkgs/xf86-video-amdgpu/template
@@ -1,12 +1,12 @@
 # Template file for 'xf86-video-amdgpu'
 pkgname=xf86-video-amdgpu
 version=21.0.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel libdrm-devel
  pixman-devel MesaLib-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 mesa-dri"
+depends="virtual?xserver-abi-video-25_1 mesa-dri"
 short_desc="Xorg AMD Radeon RXXX video driver (amdgpu kernel module)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From 6c879f4f9af5837827ffada1c1f99920bb5b59c4 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 19/27] xf86-video-ati: rebuild against xorg and add patches
 from upstream master

---
 ...84ed49564907a148ae99b03200e0be350060.patch |  63 +++
 ...006e4129e8015b822f9e1d2f1e613e252cda.patch |  27 ++
 ...ab03ca20e683be4c40ccc879e201b538f7e5.patch |  34 ++
 ...e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch | 368 ++++++++++++++++++
 ...035f4ffcff2a9296d1e907a5193f8e8845a3.patch |  33 ++
 srcpkgs/xf86-video-ati/template               |   4 +-
 6 files changed, 527 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
 create mode 100644 srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch

diff --git a/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
new file mode 100644
index 000000000000..7dd1ddea5b13
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/3c7c84ed49564907a148ae99b03200e0be350060.patch
@@ -0,0 +1,63 @@
+From 3c7c84ed49564907a148ae99b03200e0be350060 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:42:10 +0100
+Subject: [PATCH] Guard local variable priv only used with glamor
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Fixes compile errors with glamor disabled:
+
+../../src/radeon_present.c: In function ‘radeon_present_check_flip’:
+../../src/radeon_present.c:281:21: error: invalid use of undefined type ‘struct radeon_pixmap’
+  281 |     if (priv && priv->fb_failed)
+      |                     ^~
+../../src/radeon_present.c:288:19: error: invalid use of undefined type ‘struct radeon_pixmap’
+  288 |  if (priv && !priv->fb_failed) {
+      |                   ^~
+../../src/radeon_present.c:292:10: error: invalid use of undefined type ‘struct radeon_pixmap’
+  292 |      priv->fb_failed = TRUE;
+      |          ^~
+---
+ src/radeon_present.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/src/radeon_present.c b/src/radeon_present.c
+index 494655c9..d010aa19 100644
+--- a/src/radeon_present.c
++++ b/src/radeon_present.c
+@@ -254,7 +254,9 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+     xf86CrtcPtr xf86_crtc = crtc->devPrivate;
+     ScreenPtr screen = window->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86_crtc->scrn;
++#ifdef USE_GLAMOR
+     struct radeon_pixmap *priv = radeon_get_pixmap_private(pixmap);
++#endif
+     xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(scrn);
+     RADEONInfoPtr info = RADEONPTR(scrn);
+     PixmapPtr screen_pixmap = screen->GetScreenPixmap(screen);
+@@ -278,10 +280,13 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 	return FALSE;
+ #endif
+ 
++#ifdef USE_GLAMOR
+     if (priv && priv->fb_failed)
+ 	return FALSE;
++#endif
+ 
+     if (!radeon_pixmap_get_fb(pixmap)) {
++#ifdef USE_GLAMOR
+ 	if (!priv)
+ 	    priv = radeon_get_pixmap_private(pixmap);
+ 
+@@ -291,6 +296,7 @@ radeon_present_check_flip(RRCrtcPtr crtc, WindowPtr window, PixmapPtr pixmap,
+ 		       "normal if using PRIME render offloading)\n");
+ 	    priv->fb_failed = TRUE;
+ 	}
++#endif
+ 
+ 	return FALSE;
+     }
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
new file mode 100644
index 000000000000..7d0f32e11e7d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/5eba006e4129e8015b822f9e1d2f1e613e252cda.patch
@@ -0,0 +1,27 @@
+From 5eba006e4129e8015b822f9e1d2f1e613e252cda Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Tue, 2 Feb 2021 12:45:54 +0100
+Subject: [PATCH] Only include dri.h with older versions of xserver
+
+Not needed anymore with current versions.
+---
+ src/drmmode_display.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 3099a729..a58f24dd 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -45,7 +45,9 @@
+ #include "radeon_glamor.h"
+ #include "radeon_reg.h"
+ 
++#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,19,99,1,0)
+ #include <dri.h>
++#endif
+ 
+ #include "drmmode_display.h"
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
new file mode 100644
index 000000000000..e5a1e361939d
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/77d9ab03ca20e683be4c40ccc879e201b538f7e5.patch
@@ -0,0 +1,34 @@
+From 77d9ab03ca20e683be4c40ccc879e201b538f7e5 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
+Date: Fri, 26 Mar 2021 17:37:53 +0100
+Subject: [PATCH] Guard local variable info only used with glamor
+
+Fixes compiler warning with glamor disabled:
+
+radeon_dri2.c: In function 'radeon_dri2_exchange_buffers':
+radeon_dri2.c:732:19: error: unused variable 'info' [-Werror=unused-variable]
+     RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
+                   ^~~~
+---
+ src/radeon_dri2.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c
+index 66a223d8..17983779 100644
+--- a/src/radeon_dri2.c
++++ b/src/radeon_dri2.c
+@@ -728,8 +728,9 @@ radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPt
+ {
+     struct dri2_buffer_priv *front_priv = front->driverPrivate;
+     struct dri2_buffer_priv *back_priv = back->driverPrivate;
+-    ScreenPtr screen = draw->pScreen;
+-    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(screen));
++#ifdef USE_GLAMOR
++    RADEONInfoPtr info = RADEONPTR(xf86ScreenToScrn(draw->pScreen));
++#endif
+     RegionRec region;
+     int tmp;
+ 
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
new file mode 100644
index 000000000000..68bf0420c392
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680.patch
@@ -0,0 +1,368 @@
+From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:11:28 +1000
+Subject: [PATCH] ati: cleanup terminology to use primary/secondary
+
+The X server changed some API/ABIs here.
+
+Based on amdgpu patch by Michel
+---
+ man/radeon.man        |  2 +-
+ src/compat-api.h      |  6 ++++
+ src/drmmode_display.c |  4 +--
+ src/evergreen_state.h |  2 +-
+ src/r600_state.h      |  2 +-
+ src/radeon.h          | 10 +++---
+ src/radeon_exa.c      |  2 +-
+ src/radeon_glamor.c   |  2 +-
+ src/radeon_kms.c      | 74 +++++++++++++++++++++----------------------
+ 9 files changed, 55 insertions(+), 49 deletions(-)
+
+diff --git a/man/radeon.man b/man/radeon.man
+index dcebf537..247dcdb7 100644
+--- a/man/radeon.man
++++ b/man/radeon.man
+@@ -290,7 +290,7 @@ on. If this option is set, the default value of the property is 'on' or 'off'
+ accordingly. If this option isn't set, the default value of the property is
+ .B auto,
+ which means that TearFree is on for rotated outputs, outputs with RandR
+-transforms applied and for RandR 1.4 slave outputs, otherwise off.
++transforms applied and for RandR 1.4 secondary outputs, otherwise off.
+ .TP
+ .BI "Option \*qAccelMethod\*q \*q" "string" \*q
+ Chooses between available acceleration architectures.  Valid values are
+diff --git a/src/compat-api.h b/src/compat-api.h
+index f4e7524f..def6d3e4 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -34,4 +34,10 @@
+ #define BLOCKHANDLER_ARGS pScreen, pTimeout, pReadmask
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define current_primary current_master
++#define primary_pixmap master_pixmap
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/drmmode_display.c b/src/drmmode_display.c
+index 72f96a0c..3099a729 100644
+--- a/src/drmmode_display.c
++++ b/src/drmmode_display.c
+@@ -720,7 +720,7 @@ drmmode_crtc_prime_scanout_update(xf86CrtcPtr crtc, DisplayModePtr mode,
+ 		xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list,
+ 					 ent) {
+ 			if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-				dirty->slave_dst =
++				dirty->secondary_dst =
+ 					drmmode_crtc->scanout[scanout_id].pixmap;
+ 				break;
+ 			}
+@@ -1356,7 +1356,7 @@ drmmode_set_scanout_pixmap(xf86CrtcPtr crtc, PixmapPtr ppix)
+ 
+ 	xorg_list_for_each_entry(dirty, &screen->pixmap_dirty_list, ent) {
+ 		if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+-			PixmapStopDirtyTracking(dirty->src, dirty->slave_dst);
++			PixmapStopDirtyTracking(dirty->src, dirty->secondary_dst);
+ 			break;
+ 		}
+ 	}
+diff --git a/src/evergreen_state.h b/src/evergreen_state.h
+index 7e54e1c7..34ba87b6 100644
+--- a/src/evergreen_state.h
++++ b/src/evergreen_state.h
+@@ -350,7 +350,7 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ 
+ #endif
+diff --git a/src/r600_state.h b/src/r600_state.h
+index 34345996..567c3ca2 100644
+--- a/src/r600_state.h
++++ b/src/r600_state.h
+@@ -321,6 +321,6 @@ extern void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height,
+ 				    int *new_pitch);
+ extern void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv);
+ extern Bool RADEONEXAPixmapIsOffscreen(PixmapPtr pPix);
+-extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **handle_p);
++extern Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr secondary, void **handle_p);
+ extern Bool RADEONEXASetSharedPixmapBacking(PixmapPtr ppix, void *handle);
+ #endif
+diff --git a/src/radeon.h b/src/radeon.h
+index e4a2ba66..68d7756a 100644
+--- a/src/radeon.h
++++ b/src/radeon.h
+@@ -182,18 +182,18 @@ typedef enum {
+ 
+ 
+ static inline ScreenPtr
+-radeon_master_screen(ScreenPtr screen)
++radeon_primary_screen(ScreenPtr screen)
+ {
+-    if (screen->current_master)
+-	return screen->current_master;
++    if (screen->current_primary)
++	return screen->current_primary;
+ 
+     return screen;
+ }
+ 
+ static inline ScreenPtr
+-radeon_dirty_master(PixmapDirtyUpdatePtr dirty)
++radeon_dirty_primary(PixmapDirtyUpdatePtr dirty)
+ {
+-    return radeon_master_screen(dirty->slave_dst->drawable.pScreen);
++    return radeon_primary_screen(dirty->secondary_dst->drawable.pScreen);
+ }
+ 
+ static inline DrawablePtr
+diff --git a/src/radeon_exa.c b/src/radeon_exa.c
+index 268155ed..320ff992 100644
+--- a/src/radeon_exa.c
++++ b/src/radeon_exa.c
+@@ -282,7 +282,7 @@ void RADEONEXADestroyPixmap(ScreenPtr pScreen, void *driverPriv)
+     free(driverPriv);
+ }
+ 
+-Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr slave, void **fd_handle)
++Bool RADEONEXASharePixmapBacking(PixmapPtr ppix, ScreenPtr seconndary, void **fd_handle)
+ {
+     struct radeon_exa_pixmap_priv *driver_priv = exaGetPixmapDriverPrivate(ppix);
+ 
+diff --git a/src/radeon_glamor.c b/src/radeon_glamor.c
+index f1098381..ccf99941 100644
+--- a/src/radeon_glamor.c
++++ b/src/radeon_glamor.c
+@@ -366,7 +366,7 @@ radeon_glamor_set_pixmap_bo(DrawablePtr drawable, PixmapPtr pixmap)
+ 
+ 
+ static Bool
+-radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr slave,
++radeon_glamor_share_pixmap_backing(PixmapPtr pixmap, ScreenPtr secondary,
+ 				   void **handle_p)
+ {
+ 	ScreenPtr screen = pixmap->drawable.pScreen;
+diff --git a/src/radeon_kms.c b/src/radeon_kms.c
+index b3db7c41..62962d61 100644
+--- a/src/radeon_kms.c
++++ b/src/radeon_kms.c
+@@ -559,8 +559,8 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 	if (dirty->rotation != RR_Rotate_0) {
+ 		dstregion = transform_region(damageregion,
+ 					     &dirty->f_inverse,
+-					     dirty->slave_dst->drawable.width,
+-					     dirty->slave_dst->drawable.height);
++					     dirty->secondary_dst->drawable.width,
++					     dirty->secondary_dst->drawable.height);
+ 	} else
+ #endif
+ 	{
+@@ -568,7 +568,7 @@ dirty_region(PixmapDirtyUpdatePtr dirty)
+ 
+ 	    dstregion = RegionDuplicate(damageregion);
+ 	    RegionTranslate(dstregion, -dirty->x, -dirty->y);
+-	    PixmapRegionInit(&pixregion, dirty->slave_dst);
++	    PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 	    RegionIntersect(dstregion, dstregion, &pixregion);
+ 	    RegionUninit(&pixregion);
+ 	}
+@@ -585,8 +585,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ 	if (RegionNil(region))
+ 		goto out;
+ 
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionAppend(&dirty->slave_dst->drawable, region);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionAppend(&dirty->secondary_dst->drawable, region);
+ 
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+@@ -595,8 +595,8 @@ redisplay_dirty(PixmapDirtyUpdatePtr dirty, RegionPtr region)
+ #endif
+ 
+ 	radeon_cs_flush_indirect(src_scrn);
+-	if (dirty->slave_dst->master_pixmap)
+-	    DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	if (dirty->secondary_dst->primary_pixmap)
++	    DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 
+ out:
+ 	DamageEmpty(dirty->damage);
+@@ -613,12 +613,12 @@ radeon_prime_scanout_update_abort(xf86CrtcPtr crtc, void *event_data)
+ void
+ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+     PixmapDirtyUpdatePtr ent;
+     RegionPtr region;
+ 
+-    xorg_list_for_each_entry(ent, &master_screen->pixmap_dirty_list, ent) {
+-	if (!radeon_dirty_src_equals(dirty, ent->slave_dst))
++    xorg_list_for_each_entry(ent, &primary_screen->pixmap_dirty_list, ent) {
++	if (!radeon_dirty_src_equals(dirty, ent->secondary_dst))
+ 	    continue;
+ 
+ 	region = dirty_region(ent);
+@@ -631,45 +631,45 @@ radeon_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ #if HAS_SYNC_SHARED_PIXMAP
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    return !!master_screen->SyncSharedPixmap;
++    return !!primary_screen->SyncSharedPixmap;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr slave_screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr secondary_screen = dirty->secondary_dst->drawable.pScreen;
+ 
+-    return !!slave_screen->SyncSharedPixmap;
++    return !!secondary_screen->SyncSharedPixmap;
+ }
+ 
+ static void
+ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr master_screen = radeon_dirty_master(dirty);
++    ScreenPtr primary_screen = radeon_dirty_primary(dirty);
+ 
+-    master_screen->SyncSharedPixmap(dirty);
++    primary_screen->SyncSharedPixmap(dirty);
+ }
+ 
+ #else /* !HAS_SYNC_SHARED_PIXMAP */
+ 
+ static Bool
+-master_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++primary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr master_scrn = xf86ScreenToScrn(radeon_dirty_master(dirty));
++    ScrnInfoPtr primary_scrn = xf86ScreenToScrn(radeon_dirty_primary(dirty));
+ 
+-    return master_scrn->driverName == scrn->driverName;
++    return primary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static Bool
+-slave_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
++secondary_has_sync_shared_pixmap(ScrnInfoPtr scrn, PixmapDirtyUpdatePtr dirty)
+ {
+-    ScrnInfoPtr slave_scrn = xf86ScreenToScrn(dirty->slave_dst->drawable.pScreen);
++    ScrnInfoPtr secondary_scrn = xf86ScreenToScrn(dirty->secondary_dst->drawable.pScreen);
+ 
+-    return slave_scrn->driverName == scrn->driverName;
++    return secondary_scrn->driverName == scrn->driverName;
+ }
+ 
+ static void
+@@ -684,12 +684,12 @@ call_sync_shared_pixmap(PixmapDirtyUpdatePtr dirty)
+ static xf86CrtcPtr
+ radeon_prime_dirty_to_crtc(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    /* Find the CRTC which is scanning out from this slave pixmap */
++    /* Find the CRTC which is scanning out from this secondary pixmap */
+     for (c = 0; c < xf86_config->num_crtc; c++) {
+ 	xf86CrtcPtr xf86_crtc = xf86_config->crtc[c];
+ 	drmmode_crtc_private_ptr drmmode_crtc = xf86_crtc->driver_private;
+@@ -714,7 +714,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 	if (radeon_dirty_src_equals(dirty, drmmode_crtc->prime_scanout_pixmap)) {
+ 	    RegionPtr region;
+ 
+-	    if (master_has_sync_shared_pixmap(scrn, dirty))
++	    if (primary_has_sync_shared_pixmap(scrn, dirty))
+ 		call_sync_shared_pixmap(dirty);
+ 
+ 	    region = dirty_region(dirty);
+@@ -727,7 +727,7 @@ radeon_prime_scanout_do_update(xf86CrtcPtr crtc, unsigned scanout_id)
+ 		radeon_cs_flush_indirect(scrn);
+ 		RegionCopy(&drmmode_crtc->scanout_last_region, region);
+ 		RegionTranslate(region, -crtc->x, -crtc->y);
+-		dirty->slave_dst = drmmode_crtc->scanout[scanout_id].pixmap;
++		dirty->secondary_dst = drmmode_crtc->scanout[scanout_id].pixmap;
+ 	    }
+ 
+ 	    redisplay_dirty(dirty, region);
+@@ -754,7 +754,7 @@ radeon_prime_scanout_update_handler(xf86CrtcPtr crtc, uint32_t frame, uint64_t u
+ static void
+ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ {
+-    ScreenPtr screen = dirty->slave_dst->drawable.pScreen;
++    ScreenPtr screen = dirty->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr xf86_crtc = radeon_prime_dirty_to_crtc(dirty);
+@@ -818,7 +818,7 @@ radeon_prime_scanout_update(PixmapDirtyUpdatePtr dirty)
+ static void
+ radeon_prime_scanout_flip(PixmapDirtyUpdatePtr ent)
+ {
+-    ScreenPtr screen = ent->slave_dst->drawable.pScreen;
++    ScreenPtr screen = ent->secondary_dst->drawable.pScreen;
+     ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+     RADEONEntPtr pRADEONEnt = RADEONEntPriv(scrn);
+     xf86CrtcPtr crtc = radeon_prime_dirty_to_crtc(ent);
+@@ -893,11 +893,11 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 		if (screen->isGPU) {
+ 			PixmapDirtyUpdatePtr region_ent = ent;
+ 
+-			if (master_has_sync_shared_pixmap(scrn, ent)) {
+-				ScreenPtr master_screen = radeon_dirty_master(ent);
++			if (primary_has_sync_shared_pixmap(scrn, ent)) {
++				ScreenPtr primary_screen = radeon_dirty_primary(ent);
+ 
+-				xorg_list_for_each_entry(region_ent, &master_screen->pixmap_dirty_list, ent) {
+-					if (radeon_dirty_src_equals(ent, region_ent->slave_dst))
++				xorg_list_for_each_entry(region_ent, &primary_screen->pixmap_dirty_list, ent) {
++					if (radeon_dirty_src_equals(ent, region_ent->secondary_dst))
+ 						break;
+ 				}
+ 			}
+@@ -921,7 +921,7 @@ radeon_dirty_update(ScrnInfoPtr scrn)
+ 
+ 			RegionDestroy(region);
+ 		} else {
+-			if (slave_has_sync_shared_pixmap(scrn, ent))
++			if (secondary_has_sync_shared_pixmap(scrn, ent))
+ 				continue;
+ 
+ 			region = dirty_region(ent);
+@@ -1216,7 +1216,7 @@ static void RADEONBlockHandler_KMS(BLOCKHANDLER_ARGS_DECL)
+     (*pScreen->BlockHandler) (BLOCKHANDLER_ARGS);
+     pScreen->BlockHandler = RADEONBlockHandler_KMS;
+ 
+-    if (!xf86ScreenToScrn(radeon_master_screen(pScreen))->vtSema)
++    if (!xf86ScreenToScrn(radeon_primary_screen(pScreen))->vtSema)
+ 	return;
+ 
+     if (!pScreen->isGPU)
+@@ -2584,7 +2584,7 @@ CARD32 cleanup_black_fb(OsTimerPtr timer, CARD32 now, pointer data)
+     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+     int c;
+ 
+-    if (xf86ScreenToScrn(radeon_master_screen(screen))->vtSema)
++    if (xf86ScreenToScrn(radeon_primary_screen(screen))->vtSema)
+ 	return 0;
+ 
+     /* Unreference the all-black FB created by RADEONLeaveVT_KMS. After
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
new file mode 100644
index 000000000000..125fcc283457
--- /dev/null
+++ b/srcpkgs/xf86-video-ati/patches/f223035f4ffcff2a9296d1e907a5193f8e8845a3.patch
@@ -0,0 +1,33 @@
+From f223035f4ffcff2a9296d1e907a5193f8e8845a3 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 4 Feb 2020 16:38:06 -0500
+Subject: [PATCH] Fix link failure with gcc 10
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Without the 'extern' this looks like a definition not just a
+declaration, in every file that includes the header. gcc 10 is stricter
+about this kind of multiple definition.
+
+Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
+---
+ src/drmmode_display.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/drmmode_display.h b/src/drmmode_display.h
+index 96eaef0a..8cd8a0a6 100644
+--- a/src/drmmode_display.h
++++ b/src/drmmode_display.h
+@@ -262,7 +262,7 @@ Bool drmmode_wait_vblank(xf86CrtcPtr crtc, drmVBlankSeqType type,
+ 			 uint64_t *ust, uint32_t *result_seq);
+ 
+ 
+-miPointerSpriteFuncRec drmmode_sprite_funcs;
++extern miPointerSpriteFuncRec drmmode_sprite_funcs;
+ 
+ 
+ #endif
+-- 
+GitLab
+
diff --git a/srcpkgs/xf86-video-ati/template b/srcpkgs/xf86-video-ati/template
index fe251dff4b37..7d3e86a3d0f6 100644
--- a/srcpkgs/xf86-video-ati/template
+++ b/srcpkgs/xf86-video-ati/template
@@ -1,12 +1,12 @@
 # Template file for 'xf86-video-ati'
 pkgname=xf86-video-ati
 version=19.1.0
-revision=3
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorgproto eudev-libudev-devel libpciaccess-devel
  libdrm-devel pixman-devel MesaLib-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1 mesa-dri"
+depends="virtual?xserver-abi-video-25_1 mesa-dri"
 short_desc="Xorg ATI Radeon video driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From 08ed344fab3b32972890800340ca3e2b11cc5000 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 20/27] xf86-video-cirrus: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-cirrus/template | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/xf86-video-cirrus/template b/srcpkgs/xf86-video-cirrus/template
index f4f7c3a2f0a1..e3c00a97216a 100644
--- a/srcpkgs/xf86-video-cirrus/template
+++ b/srcpkgs/xf86-video-cirrus/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-cirrus'.
+# Template file for 'xf86-video-cirrus'
 pkgname=xf86-video-cirrus
 version=1.5.3
-revision=7
-lib32disabled=yes
+revision=8
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
 depends="virtual?xserver-abi-video-24_1"
 short_desc="Xorg Cirrus Logic video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=edc87b20a55259126b5239b5c1ef913419eab7ded0ed12ae9ae989460d7351ab
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 CFLAGS="-fcommon -Wno-pointer-arith -Wno-discarded-qualifiers -Wno-unused-label"

From 87256e12d74cb664b4ac7a34cb6dd4df166ed7c1 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:08 +0100
Subject: [PATCH 21/27] xf86-video-dummy: rebuild against xorg and fix lint

---
 srcpkgs/xf86-video-dummy/template | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/xf86-video-dummy/template b/srcpkgs/xf86-video-dummy/template
index 4b9c208251b9..61c1ebda9c97 100644
--- a/srcpkgs/xf86-video-dummy/template
+++ b/srcpkgs/xf86-video-dummy/template
@@ -1,18 +1,18 @@
-# Template build file for 'xf86-video-dummy'.
+# Template file for 'xf86-video-dummy'
 pkgname=xf86-video-dummy
 version=0.3.8
-revision=3
-lib32disabled=yes
+revision=4
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg dummy video driver"
-homepage="http://xorg.freedesktop.org"
-license="MIT"
 maintainer="Orphaned <orphan@voidlinux.org>"
+license="MIT"
+homepage="http://xorg.freedesktop.org"
 distfiles="${XORG_SITE}/driver/${pkgname}-${version}.tar.bz2"
 checksum=3712bb869307233491e4c570732d6073c0dc3d99adfdb9977396a3fdf84e95b9
+lib32disabled=yes
 
 LDFLAGS="-Wl,-z,lazy"
 

From 843ad1f40242f65e8365c9de7406fc53a49f8a30 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 22/27] xf86-video-fbdev: rebuild against xorg

---
 srcpkgs/xf86-video-fbdev/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-fbdev/template b/srcpkgs/xf86-video-fbdev/template
index eafde10f3eab..2cafc56b3813 100644
--- a/srcpkgs/xf86-video-fbdev/template
+++ b/srcpkgs/xf86-video-fbdev/template
@@ -1,11 +1,11 @@
 # Template file for 'xf86-video-fbdev'
 pkgname=xf86-video-fbdev
 version=0.5.0
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
+depends="virtual?xserver-abi-video-25_1"
 short_desc="Xorg framebuffer video driver"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="MIT"

From fd04041f065a9acd214cfe5dfb795d4f4eca720e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:09 +0100
Subject: [PATCH 23/27] xf86-video-intel: rebuild against xorg

---
 srcpkgs/xf86-video-intel/template | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/srcpkgs/xf86-video-intel/template b/srcpkgs/xf86-video-intel/template
index 2b589d009897..3e8aca894ef7 100644
--- a/srcpkgs/xf86-video-intel/template
+++ b/srcpkgs/xf86-video-intel/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-intel'
 pkgname=xf86-video-intel
 version=2.99.917.20210115
-revision=1
+revision=2
 _commit=31486f40f8e8f8923ca0799aea84b58799754564
 archs="i686* x86_64*"
 wrksrc="xf86-video-intel-master-${_commit}"
@@ -10,7 +10,7 @@ configure_args="--with-default-dri=3"
 hostmakedepends="git automake libtool pkg-config xorg-util-macros"
 makedepends="libXScrnSaver-devel libXcursor-devel libXinerama-devel
  libXrandr-devel libXvMC-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1 mesa-dri"
+depends="virtual?xserver-abi-video-25_1 mesa-dri"
 short_desc="Xorg DDX Intel video driver"
 maintainer="Benjamin Slade <slade@lambda-y.net>"
 license="MIT"

From 2b9a22ee74bfbd552fb19d279ae03da6e8d84e50 Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 17:47:10 +0100
Subject: [PATCH 24/27] xf86-video-mach64: rebuild against xorg and add patch

---
 .../patches/0005-Fix-build-with-xorg-21.patch | 78 +++++++++++++++++++
 srcpkgs/xf86-video-mach64/template            |  2 +-
 2 files changed, 79 insertions(+), 1 deletion(-)
 create mode 100644 srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch

diff --git a/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
new file mode 100644
index 000000000000..d511d2b13154
--- /dev/null
+++ b/srcpkgs/xf86-video-mach64/patches/0005-Fix-build-with-xorg-21.patch
@@ -0,0 +1,78 @@
+From 04b7261734aeee7160dc4454440d20c19ef2d6dc Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Thu, 18 Nov 2021 13:18:25 +0000
+Subject: [PATCH] Rename bool to boolean for OptionInfoRec.
+
+* src/aticonfig.c: Change uses of .value.bool to .value.boolean
+---
+ src/aticonfig.c | 38 +++++++++++++++++++-------------------
+ 1 file changed, 19 insertions(+), 19 deletions(-)
+
+diff --git a/src/aticonfig.c b/src/aticonfig.c
+index 621e79e..8ea0c6e 100644
+--- a/src/aticonfig.c
++++ b/src/aticonfig.c
+@@ -311,42 +311,42 @@ ATIProcessOptions
+ 
+     (void)memcpy(PublicOption, ATIPublicOptions, ATIPublicOptionSize);
+ 
+-#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.bool
+-#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.bool
+-#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.bool
+-#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.bool
+-#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.bool
+-#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.bool
+-#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.bool
+-#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.bool
+-#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.bool
++#   define ProbeSparse   PublicOption[ATI_OPTION_PROBE_SPARSE].value.boolean
++#   define Accel         PublicOption[ATI_OPTION_ACCEL].value.boolean
++#   define BIOSDisplay   PrivateOption[ATI_OPTION_BIOS_DISPLAY].value.boolean
++#   define Blend         PrivateOption[ATI_OPTION_BLEND].value.boolean
++#   define CRTDisplay    PublicOption[ATI_OPTION_CRT_DISPLAY].value.boolean
++#   define CRTScreen     PrivateOption[ATI_OPTION_CRT_SCREEN].value.boolean
++#   define CSync         PublicOption[ATI_OPTION_CSYNC].value.boolean
++#   define Devel         PrivateOption[ATI_OPTION_DEVEL].value.boolean
++#   define HWCursor      PublicOption[ATI_OPTION_HWCURSOR].value.boolean
+ 
+ #ifdef XF86DRI_DEVEL
+ 
+-#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.bool
++#   define IsPCI       PublicOption[ATI_OPTION_IS_PCI].value.boolean
+ #   define DMAMode     PublicOption[ATI_OPTION_DMA_MODE].value.str
+ #   define AGPMode     PublicOption[ATI_OPTION_AGP_MODE].value.num
+ #   define AGPSize     PublicOption[ATI_OPTION_AGP_SIZE].value.num
+-#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.bool
++#   define LocalTex    PublicOption[ATI_OPTION_LOCAL_TEXTURES].value.boolean
+ #   define BufferSize  PublicOption[ATI_OPTION_BUFFER_SIZE].value.num
+ 
+ #endif /* XF86DRI_DEVEL */
+ 
+ #ifdef TV_OUT
+ 
+-#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.bool
++#   define TvOut        PublicOption[ATI_OPTION_TV_OUT].value.boolean
+ #   define TvStd        PublicOption[ATI_OPTION_TV_STD].value.str
+ 
+ #endif /* TV_OUT */
+ 
+-#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.bool
+-#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.bool
+-#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.bool
+-#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.bool
+-#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.bool
++#   define CacheMMIO     PublicOption[ATI_OPTION_MMIO_CACHE].value.boolean
++#   define TestCacheMMIO PublicOption[ATI_OPTION_TEST_MMIO_CACHE].value.boolean
++#   define PanelDisplay  PublicOption[ATI_OPTION_PANEL_DISPLAY].value.boolean
++#   define ShadowFB      PublicOption[ATI_OPTION_SHADOW_FB].value.boolean
++#   define SWCursor      PublicOption[ATI_OPTION_SWCURSOR].value.boolean
+ #   define AccelMethod   PublicOption[ATI_OPTION_ACCELMETHOD].value.str
+-#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.bool
+-#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.bool
++#   define RenderAccel   PublicOption[ATI_OPTION_RENDER_ACCEL].value.boolean
++#   define LCDSync       PrivateOption[ATI_OPTION_LCDSYNC].value.boolean
+ 
+ #   define ReferenceClock \
+         PublicOption[ATI_OPTION_REFERENCE_CLOCK].value.freq.freq
+-- 
+GitLab
diff --git a/srcpkgs/xf86-video-mach64/template b/srcpkgs/xf86-video-mach64/template
index 51fb61f466c1..f2257348f214 100644
--- a/srcpkgs/xf86-video-mach64/template
+++ b/srcpkgs/xf86-video-mach64/template
@@ -1,7 +1,7 @@
 # Template file for 'xf86-video-mach64'
 pkgname=xf86-video-mach64
 version=6.9.6
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="automake libtool pkg-config xorg-util-macros"
 makedepends="xorgproto xorg-server-devel"

From 538535779c735ec39747c0e1446b92fecf8076aa Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Mon, 27 Dec 2021 19:42:34 +0100
Subject: [PATCH 25/27] xf86-video-nouveau: rebuild against xorg and add patch

---
 .../patches/xorg-server-21.1.patch            | 50 +++++++++++++++++++
 srcpkgs/xf86-video-nouveau/template           |  4 +-
 2 files changed, 52 insertions(+), 2 deletions(-)
 create mode 100644 srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch

diff --git a/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
new file mode 100644
index 000000000000..4476f71dfe59
--- /dev/null
+++ b/srcpkgs/xf86-video-nouveau/patches/xorg-server-21.1.patch
@@ -0,0 +1,50 @@
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b1cfde75875c07bfe13524dc6ba2661382..8a1fcf9be1c5d1ceb48a50f2ed533d93ec7ff4c7 100644
+--- a/src/compat-api.h
++++ b/src/compat-api.h
+@@ -102,4 +102,8 @@
+ 
+ #endif
+ 
++#if ABI_VIDEODRV_VERSION < SET_ABI_VERSION(25, 2)
++#define secondary_dst slave_dst
++#endif
++
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 55df6f8f11c9e14b1891e5c841faef10c17f0a35..db3b112a2db70f8e902e54aa3af99e51e7d0c6f7 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -157,7 +157,7 @@ nouveau_exa_destroy_pixmap(ScreenPtr pScreen, void *priv)
+ 
+ #ifdef NOUVEAU_PIXMAP_SHARING
+ static Bool
+-nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr slave, void **handle_p)
++nouveau_exa_share_pixmap_backing(PixmapPtr ppix, ScreenPtr secondary, void **handle_p)
+ {
+ 	struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ 	struct nouveau_pixmap *nvpix = nouveau_pixmap(ppix);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e72a6b65a81119f12f3608295a4547762a866ad7..f9ab4af19361d99d74f580d1ff3f28d49843e8b0 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -559,16 +559,16 @@ redisplay_dirty(ScreenPtr screen, PixmapDirtyUpdatePtr dirty)
+ {
+ 	RegionRec pixregion;
+ 
+-	PixmapRegionInit(&pixregion, dirty->slave_dst);
++	PixmapRegionInit(&pixregion, dirty->secondary_dst);
+ 
+-	DamageRegionAppend(&dirty->slave_dst->drawable, &pixregion);
++	DamageRegionAppend(&dirty->secondary_dst->drawable, &pixregion);
+ #ifdef HAS_DIRTYTRACKING_ROTATION
+ 	PixmapSyncDirtyHelper(dirty);
+ #else
+ 	PixmapSyncDirtyHelper(dirty, &pixregion);
+ #endif
+ 
+-	DamageRegionProcessPending(&dirty->slave_dst->drawable);
++	DamageRegionProcessPending(&dirty->secondary_dst->drawable);
+ 	RegionUninit(&pixregion);
+ }
+
diff --git a/srcpkgs/xf86-video-nouveau/template b/srcpkgs/xf86-video-nouveau/template
index 5eb9af9c6e62..a8d3b913c973 100644
--- a/srcpkgs/xf86-video-nouveau/template
+++ b/srcpkgs/xf86-video-nouveau/template
@@ -1,11 +1,11 @@
 # Template file for 'xf86-video-nouveau'
 pkgname=xf86-video-nouveau
 version=1.0.17
-revision=1
+revision=2
 build_style=gnu-configure
 hostmakedepends="pkg-config"
 makedepends="eudev-libudev-devel libdrm-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1 mesa-dri"
+depends="virtual?xserver-abi-video-25_1 mesa-dri"
 short_desc="Xorg opensource NVIDIA video driver"
 maintainer="DragonGhost7 <darkiridiumghost@gmail.com>"
 license="MIT"

From dc6ff94581adece01e6d5df5dd8413c139bd737e Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:46:01 +0100
Subject: [PATCH 26/27] xf86-video-fbturbo: remove

---
 srcpkgs/removed-packages/template             | 10 ++++++++
 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch | 20 ----------------
 srcpkgs/xf86-video-fbturbo/template           | 23 -------------------
 3 files changed, 10 insertions(+), 43 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 5dbd28a0d070..00c4ae0af83a 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -386,3 +386,13 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+case "$XBPS_TARGET_MACHINE" in
+	armv6l*) ;;
+	armv7l*) ;;
+	aarch64*)
+		replaces+="
+		 xf86-video-fbturbo<=0.4.0
+		"
+		;;
+esac
diff --git a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch b/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
deleted file mode 100644
index 0facdc874546..000000000000
--- a/srcpkgs/xf86-video-fbturbo/patches/gcc8.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
- 	fPtr->CloseScreen = pScreen->CloseScreen;
- 	pScreen->CloseScreen = FBDevCloseScreen;
- 
--#if XV
-+#ifdef XV
- 	fPtr->SunxiVideo_private = NULL;
- 	if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
- 	fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
- 	    fPtr->SunxiDispHardwareCursor_private = NULL;
- 	}
- 
--#if XV
-+#ifdef XV
- 	if (fPtr->SunxiVideo_private) {
- 	    SunxiVideo_Close(pScreen);
- 	    free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo/template b/srcpkgs/xf86-video-fbturbo/template
deleted file mode 100644
index acfbff8c05d3..000000000000
--- a/srcpkgs/xf86-video-fbturbo/template
+++ /dev/null
@@ -1,23 +0,0 @@
-# Template file for 'xf86-video-fbturbo'
-pkgname=xf86-video-fbturbo
-version=0.4.0
-revision=17
-build_style=gnu-configure
-short_desc="Xorg DDX driver for ARM devices (RaspberryPi/Allwinner)"
-maintainer="Orphaned <orphan@voidlinux.org>"
-license="MIT, GPL-2.0-or-later"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv6l* armv7l* aarch64*"
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel xorg-server-devel"
-depends="virtual?xserver-abi-video-24_1"
-
-LDFLAGS="-Wl,-z,lazy"
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

From 5eff92bc4be35784ab54266c8a0c2a35477da96a Mon Sep 17 00:00:00 2001
From: dkwo <nicolopiazzalunga@gmail.com>
Date: Sun, 2 Jan 2022 19:47:35 +0100
Subject: [PATCH 27/27] xf86-video-fbturbo-sunxi: remove

---
 srcpkgs/removed-packages/template             |  6 +++-
 .../patches/fix-compilation.patch             | 20 -------------
 srcpkgs/xf86-video-fbturbo-sunxi/template     | 29 -------------------
 3 files changed, 5 insertions(+), 50 deletions(-)
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
 delete mode 100644 srcpkgs/xf86-video-fbturbo-sunxi/template

diff --git a/srcpkgs/removed-packages/template b/srcpkgs/removed-packages/template
index 00c4ae0af83a..23528615666e 100644
--- a/srcpkgs/removed-packages/template
+++ b/srcpkgs/removed-packages/template
@@ -1,7 +1,7 @@
 # Template file for 'removed-packages'
 pkgname=removed-packages
 version=0.1
-revision=59
+revision=60
 build_style=meta
 short_desc="Uninstalls packages removed from repository"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
@@ -396,3 +396,7 @@ case "$XBPS_TARGET_MACHINE" in
 		"
 		;;
 esac
+
+if [ "$XBPS_TARGET_MACHINE" = "armv7l" ]; then
+	replaces+=" xf86-video-fbturbo-sunxi<=0.4.0"
+fi
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch b/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
deleted file mode 100644
index 5fad5cbcb135..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/patches/fix-compilation.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/fbdev.c
-+++ b/src/fbdev.c
-@@ -1037,7 +1037,7 @@
-        fPtr->CloseScreen = pScreen->CloseScreen;
-        pScreen->CloseScreen = FBDevCloseScreen;
-
--#if XV
-+#ifdef XV
-        fPtr->SunxiVideo_private = NULL;
-        if (xf86ReturnOptValBool(fPtr->Options, OPTION_XV_OVERLAY, TRUE) &&
-        fPtr->sunxi_disp_private) {
-@@ -1126,7 +1126,7 @@
-            fPtr->SunxiDispHardwareCursor_private = NULL;
-        }
-
--#if XV
-+#ifdef XV
-        if (fPtr->SunxiVideo_private) {
-            SunxiVideo_Close(pScreen);
-            free(fPtr->SunxiVideo_private);
diff --git a/srcpkgs/xf86-video-fbturbo-sunxi/template b/srcpkgs/xf86-video-fbturbo-sunxi/template
deleted file mode 100644
index 3da5f84a572c..000000000000
--- a/srcpkgs/xf86-video-fbturbo-sunxi/template
+++ /dev/null
@@ -1,29 +0,0 @@
-# Template file for 'xf86-video-fbturbo-sunxi'
-pkgname=xf86-video-fbturbo-sunxi
-version=0.4.0
-revision=5
-wrksrc="${pkgname%-sunxi}-${version}"
-build_style=gnu-configure
-hostmakedepends="pkg-config xorg-server-devel"
-makedepends="libXrandr-devel libump-git-devel xorg-server-devel xorg-util-macros"
-depends="virtual?xserver-abi-video-24_1 sunxi-mali"
-short_desc="Xorg DDX driver for Allwinner SoC (A10/A13/A20)"
-license="MIT, GPL-2.0-or-later"
-maintainer="Orphaned <orphan@voidlinux.org>"
-homepage="http://github.com/ssvb/xf86-video-fbturbo"
-distfiles="https://github.com/ssvb/xf86-video-fbturbo/archive/${version}.tar.gz"
-checksum=10411686de0a9d8b2cde300b0d68e9f1d22e3611470d357ef3afc337f123ca0f
-
-archs="armv7l"
-conflicts="xf86-video-fbturbo>=0"
-
-LDFLAGS="-Wl,-z,lazy"
-
-pre_configure() {
-	cp /usr/include/xorg/dri2.h src
-}
-
-post_install() {
-	vinstall xorg.conf 644 usr/share/X11/xorg.conf.d 99-fbturbo.conf
-	vlicense COPYING
-}

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (50 preceding siblings ...)
  2022-02-07  9:13 ` [PR PATCH] [Updated] " dkwo
@ 2022-02-07  9:13 ` dkwo
  2022-02-07 12:22 ` slotThe
  2022-02-07 18:53 ` [PR PATCH] [Merged]: " leahneukirchen
  53 siblings, 0 replies; 55+ messages in thread
From: dkwo @ 2022-02-07  9:13 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 167 bytes --]

New comment by dkwo on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1031235012

Comment:
Done. It should be fine now.

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

* Re: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (51 preceding siblings ...)
  2022-02-07  9:13 ` dkwo
@ 2022-02-07 12:22 ` slotThe
  2022-02-07 18:53 ` [PR PATCH] [Merged]: " leahneukirchen
  53 siblings, 0 replies; 55+ messages in thread
From: slotThe @ 2022-02-07 12:22 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 385 bytes --]

New comment by slotThe on void-packages repository

https://github.com/void-linux/void-packages/pull/34593#issuecomment-1031409400

Comment:
Now installs like a charm, thanks!

Can confirm that this works for me (on xmonad).  Further, I was also able to build the Emacs `master` branch with the `--with-xinput2` flag just fine, to make use of new modes that need XInput 2.4 features

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

* Re: [PR PATCH] [Merged]: xorg: update stuff
  2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
                   ` (52 preceding siblings ...)
  2022-02-07 12:22 ` slotThe
@ 2022-02-07 18:53 ` leahneukirchen
  53 siblings, 0 replies; 55+ messages in thread
From: leahneukirchen @ 2022-02-07 18:53 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 327 bytes --]

There's a merged pull request on the void-packages repository

xorg: update stuff
https://github.com/void-linux/void-packages/pull/34593

Description:
- xorgproto: update to 2021.5.
- New package: libxcvt-0.1.1
- xorg-server: update to 21.1.2
- libX11: revbump for protocols

taken from #33812
built and tested on x86_64-musl


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

end of thread, other threads:[~2022-02-07 18:53 UTC | newest]

Thread overview: 55+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-17 18:12 [PR PATCH] xorg: update to 21.1.2 dkwo
2021-12-17 20:12 ` leahneukirchen
2021-12-20 14:49 ` slotThe
2021-12-23 18:13 ` dkwo
2021-12-23 18:19 ` [PR PATCH] [Updated] " dkwo
2021-12-23 18:20 ` dkwo
2021-12-23 20:35 ` dkwo
2021-12-24 11:48 ` [PR PATCH] [Updated] " dkwo
2021-12-24 12:17 ` dkwo
2021-12-25  8:12 ` [PR PATCH] [Updated] " dkwo
2021-12-25  8:38 ` dkwo
2021-12-27  5:17 ` xorg: update stuff abenson
2021-12-27 21:10 ` [PR PATCH] [Updated] " dkwo
2021-12-27 21:37 ` dkwo
2021-12-27 21:38 ` dkwo
2021-12-28  4:48 ` [PR PATCH] [Updated] " dkwo
2021-12-28 12:22 ` dkwo
2021-12-28 14:06 ` dkwo
2021-12-28 14:07 ` [PR PATCH] [Updated] " dkwo
2021-12-28 14:09 ` dkwo
2022-01-02  8:31 ` dkwo
2022-01-02 18:32 ` [PR PATCH] [Updated] " dkwo
2022-01-02 18:34 ` dkwo
2022-01-02 18:48 ` dkwo
2022-01-04  9:55 ` dkwo
2022-01-04 17:40 ` dkwo
2022-01-04 18:24 ` [PR REVIEW] " abenson
2022-01-04 18:25 ` abenson
2022-01-04 18:36 ` abenson
2022-01-04 18:39 ` [PR REVIEW] " abenson
2022-01-04 18:39 ` abenson
2022-01-04 19:13 ` abenson
2022-01-05  8:56 ` [PR PATCH] [Updated] " dkwo
2022-01-05  8:57 ` dkwo
2022-01-05  9:48 ` [PR REVIEW] " dkwo
2022-01-05 14:53 ` abenson
2022-01-12 11:32 ` [PR PATCH] [Updated] " dkwo
2022-01-12 11:33 ` dkwo
2022-01-22 17:51 ` [PR PATCH] [Updated] " dkwo
2022-02-03  9:54 ` dkwo
2022-02-05 10:08 ` slotThe
2022-02-05 13:11 ` dkwo
2022-02-05 15:45 ` leahneukirchen
2022-02-05 15:56 ` leahneukirchen
2022-02-05 16:02 ` [PR PATCH] [Updated] " dkwo
2022-02-05 16:03 ` dkwo
2022-02-05 16:20 ` [PR PATCH] [Updated] " dkwo
2022-02-05 16:21 ` dkwo
2022-02-07  7:24 ` slotThe
2022-02-07  7:24 ` slotThe
2022-02-07  8:49 ` dkwo
2022-02-07  9:13 ` [PR PATCH] [Updated] " dkwo
2022-02-07  9:13 ` dkwo
2022-02-07 12:22 ` slotThe
2022-02-07 18:53 ` [PR PATCH] [Merged]: " leahneukirchen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).