diff --git a/packages/x11/xserver/xorg-server/package.mk b/packages/x11/xserver/xorg-server/package.mk index 988d685039..d4ba47bb28 100644 --- a/packages/x11/xserver/xorg-server/package.mk +++ b/packages/x11/xserver/xorg-server/package.mk @@ -3,14 +3,14 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xorg-server" -PKG_VERSION="1.20.11" -PKG_SHA256="914c796e3ffabe1af48071d40ccc85e92117c97a9082ed1df29e4d64e3c34c49" +PKG_VERSION="21.1.1" +PKG_SHA256="915edd49f394283cc587b88a68b5e13e6e2d7f0276edabc9249afb2e22adf634" PKG_LICENSE="OSS" PKG_SITE="http://www.X.org" -PKG_URL="http://xorg.freedesktop.org/archive/individual/xserver/${PKG_NAME}-${PKG_VERSION}.tar.bz2" -PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper" +PKG_URL="https://github.com/freedesktop/xorg-xserver/archive/refs/tags/${PKG_NAME}-${PKG_VERSION}.tar.gz" +PKG_DEPENDS_TARGET="toolchain util-macros font-util xorgproto libpciaccess libX11 libXfont2 libXinerama libxcvt libxshmfence libxkbfile libdrm openssl freetype pixman systemd xorg-launch-helper" PKG_NEED_UNPACK="$(get_pkg_directory xf86-video-nvidia) $(get_pkg_directory xf86-video-nvidia-legacy)" -PKG_LONGDESC="Xorg is a full featured X server running on Intel x86 hardware." +PKG_LONGDESC="X.Org Server is the free and open-source implementation of the X Window System display server." PKG_TOOLCHAIN="autotools" get_graphicdrivers diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch deleted file mode 100644 index 0e0b20df6f..0000000000 --- a/packages/x11/xserver/xorg-server/patches/xorg-server-0001-sdksyms.sh-Make-sdksyms.sh-work-with-gcc5.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 612eb45a2e7a0b35cc3790870e6d0cc42eb50c74 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Wed, 11 Feb 2015 16:26:40 +0100 -Subject: [PATCH] sdksyms.sh: Make sdksyms.sh work with gcc5. - -gcc5's cpp inserts patterns like this: - -extern - __attribute__((visibility("default"))) - int WaitForSomething(int * - ); - -This patch make sdksyms.sh work with this. Note my awk skills are weak, so -there likely is a better way to deal with this. - -Signed-off-by: Hans de Goede ---- - hw/xfree86/sdksyms.sh | 17 +++++++++++++++++ - 1 file changed, 17 insertions(+) - -diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh -index 2305073..99b0cae 100755 ---- a/hw/xfree86/sdksyms.sh -+++ b/hw/xfree86/sdksyms.sh -@@ -350,6 +350,23 @@ BEGIN { - if (sdk) { - n = 3; - -+ # detect the following gcc5 cpp pattern and skip it: -+ # extern -+ # # 320 "../../include/os.h" 3 4 -+ # __attribute__((visibility("default"))) -+ # # 320 "../../include/os.h" -+ # Note in this case the "extern " or "extern void " always has -+ # a trailing space -+ if ($0 ~ "^extern.* $") { -+ getline; -+ getline; -+ getline; -+ getline; -+ n = 1; -+ while ($n == " ") -+ n++; -+ } -+ - # skip attribute, if any - while ($n ~ /^(__attribute__|__global)/ || - # skip modifiers, if any --- -2.1.0 - diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-05_pkg_config.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-05_pkg_config.patch deleted file mode 100644 index d9e8e1f59f..0000000000 --- a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-05_pkg_config.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur xorg-server-1.8.2-old/xorg-server.m4 xorg-server-1.8.2-new/xorg-server.m4 ---- xorg-server-1.8.2-old/xorg-server.m4 2010-07-01 10:35:53.000000000 -0700 -+++ xorg-server-1.8.2-new/xorg-server.m4 2010-07-01 10:36:36.000000000 -0700 -@@ -31,7 +31,8 @@ - AC_DEFUN([XORG_DRIVER_CHECK_EXT],[ - AC_REQUIRE([PKG_PROG_PKG_CONFIG]) - SAVE_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`" -+ m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$]) -+ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`" - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include "xorg-server.h" - #if !defined $1 diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-14-detect_radeon.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-14-detect_radeon.patch deleted file mode 100644 index 203fd76086..0000000000 --- a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-14-detect_radeon.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur xorg-server-1.12.2-old/hw/xfree86/common/xf86pciBus.c xorg-server-1.12.2-new/hw/xfree86/common/xf86pciBus.c ---- xorg-server-1.12.2-old/hw/xfree86/common/xf86pciBus.c 2012-05-17 10:09:03.000000000 -0700 -+++ xorg-server-1.12.2-new/hw/xfree86/common/xf86pciBus.c 2012-05-29 18:55:16.000000000 -0700 -@@ -1107,7 +1107,7 @@ - driverList[0] = "ast"; - break; - case 0x1002: -- driverList[0] = "ati"; -+ driverList[0] = "radeon"; - break; - case 0x102c: - driverList[0] = "chips"; diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-1.18.0-add_prime_support-1.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-1.18.0-add_prime_support-1.patch deleted file mode 100644 index b99389cbf1..0000000000 --- a/packages/x11/xserver/xorg-server/patches/xorg-server-1.18.0-add_prime_support-1.patch +++ /dev/null @@ -1,97 +0,0 @@ -Submitted By: Armin K. -Date: 2012-12-30 -Initial Package Version: 1.13.1 -Upstream Status: Not submitted. -Origin: Upstream mailing list. -Comment: Rediffed for Package Version 1.17.2 by - Fernando de Oliveira -Description: Adds PRIME support to Xorg Server to make GPU offloading work. - -diff -Naur xorg-server-1.17.2.orig/hw/xfree86/common/xf86Init.c xorg-server-1.17.2/hw/xfree86/common/xf86Init.c ---- xorg-server-1.17.2.orig/hw/xfree86/common/xf86Init.c 2015-06-05 12:19:40.000000000 -0300 -+++ xorg-server-1.17.2/hw/xfree86/common/xf86Init.c 2015-06-17 11:35:07.227581436 -0300 -@@ -340,6 +340,16 @@ - return ret; - } - -+extern void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master); -+static void -+xf86AutoConfigOutputDevices(void) -+{ -+ int i; -+ -+ for (i = 0; i < xf86NumGPUScreens; i++) -+ xf86AutoConfigOutputDevice(xf86GPUScreens[i], xf86Screens[0]); -+} -+ - static void - InstallSignalHandlers(void) - { -@@ -929,6 +939,8 @@ - for (i = 0; i < xf86NumGPUScreens; i++) - AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen); - -+ xf86AutoConfigOutputDevices(); -+ - xf86VGAarbiterWrapFunctions(); - if (sigio_blocked) - OsReleaseSIGIO(); -diff -Naur xorg-server-1.17.2.orig/hw/xfree86/common/xf86platformBus.c xorg-server-1.17.2/hw/xfree86/common/xf86platformBus.c ---- xorg-server-1.17.2.orig/hw/xfree86/common/xf86platformBus.c 2015-06-16 12:21:07.000000000 -0300 -+++ xorg-server-1.17.2/hw/xfree86/common/xf86platformBus.c 2015-06-17 11:35:07.227581436 -0300 -@@ -469,6 +469,8 @@ - return foundScreen; - } - -+extern void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master); -+ - int - xf86platformAddDevice(int index) - { -@@ -537,6 +539,7 @@ - } - /* attach unbound to 0 protocol screen */ - AttachUnboundGPU(xf86Screens[0]->pScreen, xf86GPUScreens[i]->pScreen); -+ xf86AutoConfigOutputDevice(xf86GPUScreens[i], xf86Screens[0]); - - RRResourcesChanged(xf86Screens[0]->pScreen); - RRTellChanged(xf86Screens[0]->pScreen); -diff -Naur xorg-server-1.17.2.orig/hw/xfree86/modes/xf86Crtc.c xorg-server-1.17.2/hw/xfree86/modes/xf86Crtc.c ---- xorg-server-1.17.2.orig/hw/xfree86/modes/xf86Crtc.c 2015-06-16 10:55:48.000000000 -0300 -+++ xorg-server-1.17.2/hw/xfree86/modes/xf86Crtc.c 2015-06-17 11:35:07.230581367 -0300 -@@ -3387,3 +3387,35 @@ - crtc->x = crtc->y = 0; - } - } -+ -+ -+void xf86AutoConfigOutputDevice(ScrnInfoPtr pScrn, ScrnInfoPtr master) -+{ -+ RRProviderPtr master_provider; -+ xf86CrtcConfigPtr config = XF86_CRTC_CONFIG_PTR(master); -+ xf86CrtcConfigPtr slave_config = XF86_CRTC_CONFIG_PTR(pScrn); -+ Bool unbound = FALSE; -+ -+ if (!config || !slave_config) -+ return; -+ -+ master_provider = config->randr_provider; -+ -+ if ((master->capabilities & RR_Capability_SinkOffload) && -+ pScrn->capabilities & RR_Capability_SourceOffload) { -+ /* source offload */ -+ -+ DetachUnboundGPU(pScrn->pScreen); -+ unbound = TRUE; -+ AttachOffloadGPU(master->pScreen, pScrn->pScreen); -+ slave_config->randr_provider->offload_sink = master_provider; -+ } -+ if ((master->capabilities & RR_Capability_SourceOutput) && -+ pScrn->capabilities & RR_Capability_SinkOutput) { -+ /* sink offload */ -+ if (!unbound) -+ DetachUnboundGPU(pScrn->pScreen); -+ AttachOutputGPU(master->pScreen, pScrn->pScreen); -+ slave_config->randr_provider->output_source = master_provider; -+ } -+} diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-100.01-detect-radeon.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-100.01-detect-radeon.patch new file mode 100644 index 0000000000..a8bee6c428 --- /dev/null +++ b/packages/x11/xserver/xorg-server/patches/xorg-server-100.01-detect-radeon.patch @@ -0,0 +1,22 @@ +From 7b147dfef7a2ce8247710660d2b95d84100aaad7 Mon Sep 17 00:00:00 2001 +From: SupervisedThinking +Date: Tue, 19 Oct 2021 18:22:38 +0200 +Subject: [PATCH] Detect GPUs as "radeon" instead "ati" + +--- + hw/xfree86/common/xf86pciBus.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c +index aeeed8be66..5c22bd4080 100644 +--- a/hw/xfree86/common/xf86pciBus.c ++++ b/hw/xfree86/common/xf86pciBus.c +@@ -1106,7 +1106,7 @@ xf86VideoPtrToDriverList(struct pci_device *dev, XF86MatchedDrivers *md) + driverList[0] = "ast"; + break; + case 0x1002: +- driverList[0] = "ati"; ++ driverList[0] = "radeon"; + break; + case 0x102c: + driverList[0] = "chips"; diff --git a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-20_extra_modelines_fromxorg.patch b/packages/x11/xserver/xorg-server/patches/xorg-server-100.02-add-fedora-extra-modes-list.patch similarity index 87% rename from packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-20_extra_modelines_fromxorg.patch rename to packages/x11/xserver/xorg-server/patches/xorg-server-100.02-add-fedora-extra-modes-list.patch index 30743b8b05..a44f945d28 100644 --- a/packages/x11/xserver/xorg-server/patches/xorg-server-1.12.4-20_extra_modelines_fromxorg.patch +++ b/packages/x11/xserver/xorg-server/patches/xorg-server-100.02-add-fedora-extra-modes-list.patch @@ -1,12 +1,17 @@ -From: Adam Jackson -Date: Sun, 28 Oct 2007 09:37:52 +0100 -Subject: [PATCH] Fedora extra modes list +From aff7aded0cc546491b29b37b093846921ab7378a Mon Sep 17 00:00:00 2001 +From: SupervisedThinking +Date: Tue, 19 Oct 2021 18:23:20 +0200 +Subject: [PATCH] Fedora extra modes list added by Adam Jackson + --- -Index: xorg-server/hw/xfree86/common/extramodes -=================================================================== ---- xorg-server.orig/hw/xfree86/common/extramodes -+++ xorg-server/hw/xfree86/common/extramodes + hw/xfree86/common/extramodes | 59 ++++++++++++++++++++++++++++++++++++ + 1 file changed, 59 insertions(+) + +diff --git a/hw/xfree86/common/extramodes b/hw/xfree86/common/extramodes +index 006b5cba17..3caa3bf015 100644 +--- a/hw/xfree86/common/extramodes ++++ b/hw/xfree86/common/extramodes @@ -3,16 +3,75 @@ // // $XFree86: xc/programs/Xserver/hw/xfree86/etc/extramodes,v 1.5 2002/06/05 19:43:05 dawes Exp $