diff --git a/packages/x11/app/xkbcomp/package.mk b/packages/x11/app/xkbcomp/package.mk index a0f943a840..c5e2b28596 100644 --- a/packages/x11/app/xkbcomp/package.mk +++ b/packages/x11/app/xkbcomp/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xkbcomp" -PKG_VERSION="1.4.4" -PKG_SHA256="59cce603a607a17722a0a1cf99010f4894e7812beb5d695abbc08474d59af27e" +PKG_VERSION="1.4.5" +PKG_SHA256="6851086c4244b6fd0cc562880d8ff193fb2bbf1e141c73632e10731b31d4b05e" PKG_LICENSE="OSS" PKG_SITE="http://www.X.org" PKG_URL="http://xorg.freedesktop.org/archive/individual/app/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/data/xkeyboard-config/package.mk b/packages/x11/data/xkeyboard-config/package.mk index 7abe99ae4f..46752d53f1 100644 --- a/packages/x11/data/xkeyboard-config/package.mk +++ b/packages/x11/data/xkeyboard-config/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xkeyboard-config" -PKG_VERSION="2.31" -PKG_SHA256="da44181f2c8828789c720decf7d13acb3c3950e2a040af5132f50f04bb6aada3" +PKG_VERSION="2.34" +PKG_SHA256="b321d27686ee7e6610ffe7b56e28d5bbf60625a1f595124cd320c0caa717b8ce" PKG_LICENSE="MIT" PKG_SITE="http://www.X.org" PKG_URL="http://www.x.org/releases/individual/data/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0002-revert-commits-depending-on-unreleased-packages.patch b/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0002-revert-commits-depending-on-unreleased-packages.patch deleted file mode 100644 index 03c61059ac..0000000000 --- a/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0002-revert-commits-depending-on-unreleased-packages.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 5bb6d783f40d8aa61da2095c08a6933bb1ee7bf3 Mon Sep 17 00:00:00 2001 -From: Andreas Boll -Date: Sun, 16 Feb 2020 02:35:03 +0000 -Subject: [PATCH 2/3] Revert "Map evdev keycode KEY_KEYBOARD to XF86Keyboard" - -This reverts commit d0e5e63cf59be444bec0e5b11838a9abce45226d. - -This patch breaks keyboard layouts in XWayland applications when having several -keyboard layouts enabled. - -See also https://bugzilla.redhat.com/show_bug.cgi?id=1587998 - -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921867 -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921940 -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=922020 - -Drop this revert once we have a newer xkbcomp (>> 1.4.2) and bump -dependency on x11-xkb-utils. ---- - keycodes/evdev | 1 - - symbols/inet | 1 - - 2 files changed, 2 deletions(-) - -diff --git a/keycodes/evdev b/keycodes/evdev -index d41799d..e08ea0a 100644 ---- a/keycodes/evdev -+++ b/keycodes/evdev -@@ -285,9 +285,8 @@ default xkb_keycodes "evdev" { - = 255; // #define KEY_RFKILL 247 - - = 372; // #define KEY_FAVORITES 364 - = 380; // #define KEY_FULL_SCREEN 372 -- = 382; // #define KEY_KEYBOARD 374 - = 442; // #define KEY_DOLLAR 434 - = 443; // #define KEY_EURO 435 - = 569; // #define KEY_ROTATE_LOCK_TOGGLE 561 - -diff --git a/symbols/inet b/symbols/inet -index 5ab6feb..72cc45d 100644 ---- a/symbols/inet -+++ b/symbols/inet -@@ -219,9 +219,8 @@ xkb_symbols "evdev" { - key { [ XF86RFKill ] }; // KEY_RFKILL - - key { [ XF86Favorites ] }; - key { [ XF86FullScreen ] }; -- key { [ XF86Keyboard ] }; - key { [ dollar ] }; - key { [ EuroSign ] }; - key { [ XF86RotationLockToggle ] }; - --- -2.7.4 - - -From 9415d810808061cbb38832c4abf636606f3ed2ad Mon Sep 17 00:00:00 2001 -From: Andreas Boll -Date: Sun, 16 Feb 2020 02:35:56 +0000 -Subject: [PATCH 3/3] Revert "Map evdev keycode KEY_FAVORITES to XF86Favorites" - -This reverts commit e6103610a2ddae633e2715c9f1da86e79b5256dd. - -This patch breaks keyboard layouts in XWayland applications when having -several keyboard layouts enabled. - -See also https://bugzilla.redhat.com/show_bug.cgi?id=1587998 - -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921867 -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=921940 -Fixes: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=922020 - -Drop this revert once we have a newer xkbcomp (>> 1.4.2) and bump -dependency on x11-xkb-utils. ---- - keycodes/evdev | 1 - - symbols/inet | 1 - - 2 files changed, 2 deletions(-) - -diff --git a/keycodes/evdev b/keycodes/evdev -index e08ea0a..8ed0fa9 100644 ---- a/keycodes/evdev -+++ b/keycodes/evdev -@@ -284,7 +284,6 @@ default xkb_keycodes "evdev" { - = 254; // #define KEY_WWAN 246 - = 255; // #define KEY_RFKILL 247 - -- = 372; // #define KEY_FAVORITES 364 - = 380; // #define KEY_FULL_SCREEN 372 - = 442; // #define KEY_DOLLAR 434 - -diff --git a/symbols/inet b/symbols/inet -index 72cc45d..2a5ab74 100644 ---- a/symbols/inet -+++ b/symbols/inet -@@ -218,7 +218,6 @@ xkb_symbols "evdev" { - key { [ XF86WWAN ] }; // KEY_WWAN - key { [ XF86RFKill ] }; // KEY_RFKILL - -- key { [ XF86Favorites ] }; - key { [ XF86FullScreen ] }; - key { [ dollar ] }; - --- -2.7.4 - diff --git a/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0003-drop-unsupported-keycode.patch b/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0003-drop-unsupported-keycode.patch deleted file mode 100644 index 2d0ca80754..0000000000 --- a/packages/x11/data/xkeyboard-config/patches/xkeyboard-config-0003-drop-unsupported-keycode.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 9d3629f7a6edce20990ca75d879097abe62bc8a7 Mon Sep 17 00:00:00 2001 -From: MilhouseVH -Date: Sun, 16 Feb 2020 02:51:52 +0000 -Subject: [PATCH] drop unsupported keycodes - -Jun 14 00:55:54 NUC xorg-launch[722]: The XKEYBOARD keymap compiler (xkbcomp) reports: -Jun 14 00:55:54 NUC xorg-launch[722]: > Warning: Unsupported high keycode 569 for name ignored -Jun 14 00:55:54 NUC xorg-launch[722]: > X11 cannot support keycodes above 255. -Jun 14 00:55:54 NUC xorg-launch[722]: > This warning only shows for the first high keycode. -Jun 14 00:55:54 NUC xorg-launch[722]: > Internal error: Could not resolve keysym XF86RotationLockToggle -Jun 14 00:55:54 NUC xorg-launch[722]: Errors from xkbcomp are not fatal to the X server ---- - keycodes/evdev | 3 --- - symbols/inet | 3 --- - 2 files changed, 6 deletions(-) - -diff --git a/keycodes/evdev b/keycodes/evdev -index 8ed0fa9..f7d5c7b 100644 ---- a/keycodes/evdev -+++ b/keycodes/evdev -@@ -284,11 +284,8 @@ default xkb_keycodes "evdev" { - = 254; // #define KEY_WWAN 246 - = 255; // #define KEY_RFKILL 247 - -- = 380; // #define KEY_FULL_SCREEN 372 - = 442; // #define KEY_DOLLAR 434 - = 443; // #define KEY_EURO 435 -- = 569; // #define KEY_ROTATE_LOCK_TOGGLE 561 -- - // Fake keycodes for virtual keys - = 92; - = 203; -diff --git a/symbols/inet b/symbols/inet -index 2a5ab74..0fb78cd 100644 ---- a/symbols/inet -+++ b/symbols/inet -@@ -218,11 +218,8 @@ xkb_symbols "evdev" { - key { [ XF86WWAN ] }; // KEY_WWAN - key { [ XF86RFKill ] }; // KEY_RFKILL - -- key { [ XF86FullScreen ] }; - key { [ dollar ] }; - key { [ EuroSign ] }; -- key { [ XF86RotationLockToggle ] }; -- - key { [ XF86Tools ] }; - key { [ XF86Launch5 ] }; - key { [ XF86Launch6 ] }; --- -2.7.4 - diff --git a/packages/x11/driver/xf86-input-libinput/package.mk b/packages/x11/driver/xf86-input-libinput/package.mk index f5413e0c94..ee24fc971c 100644 --- a/packages/x11/driver/xf86-input-libinput/package.mk +++ b/packages/x11/driver/xf86-input-libinput/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xf86-input-libinput" -PKG_VERSION="1.0.1" -PKG_SHA256="fddec49c115591918475155bf16aaf23017d7f814cee7823a0c11f867aca245b" +PKG_VERSION="1.2.0" +PKG_SHA256="f80da3c514fe1cbf57fa1b1bd6ff97f6b0a1f87466ad89247bac59cd0a5869f6" PKG_LICENSE="MIT" PKG_SITE="http://www.freedesktop.org/wiki/Software/libinput/" PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/driver/xf86-video-amdgpu/package.mk b/packages/x11/driver/xf86-video-amdgpu/package.mk index ba9cdc8e8d..b332c6f67b 100644 --- a/packages/x11/driver/xf86-video-amdgpu/package.mk +++ b/packages/x11/driver/xf86-video-amdgpu/package.mk @@ -7,10 +7,10 @@ PKG_VERSION="21.0.0" PKG_SHA256="607823034defba6152050e5eb1c4df94b38819ef764291abadd81b620bc2ad88" PKG_ARCH="x86_64" PKG_LICENSE="OSS" -PKG_SITE="http://www.x.org/" +PKG_SITE="https://www.x.org/wiki/RadeonFeature/" PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2" PKG_DEPENDS_TARGET="toolchain libdrm xorg-server" -PKG_LONGDESC="AMD Radeon video driver for the Xorg X server." +PKG_LONGDESC="Xorg driver for AMD Radeon GPUs using the amdgpu kernel driver." PKG_TOOLCHAIN="autotools" PKG_CONFIGURE_OPTS_TARGET="--enable-udev \ diff --git a/packages/x11/driver/xf86-video-ati/package.mk b/packages/x11/driver/xf86-video-ati/package.mk index 9631f6dec0..ea8e0839c4 100644 --- a/packages/x11/driver/xf86-video-ati/package.mk +++ b/packages/x11/driver/xf86-video-ati/package.mk @@ -7,13 +7,14 @@ PKG_VERSION="19.1.0" PKG_SHA256="659f5a1629eea5f5334d9b39b18e6807a63aa1efa33c1236d9cc53acbb223c49" PKG_ARCH="x86_64" PKG_LICENSE="OSS" -PKG_SITE="http://www.x.org/" +PKG_SITE="https://www.x.org/wiki/RadeonFeature/" PKG_URL="http://xorg.freedesktop.org/archive/individual/driver/${PKG_NAME}-${PKG_VERSION}.tar.bz2" PKG_DEPENDS_TARGET="toolchain xorg-server" -PKG_LONGDESC="The ati driver supports various ATi, know AMD, video chips." +PKG_LONGDESC="ATI/AMD Radeon video driver for the Xorg X server." PKG_TOOLCHAIN="autotools" -PKG_CONFIGURE_OPTS_TARGET="--enable-glamor --with-xorg-module-dir=${XORG_PATH_MODULES}" +PKG_CONFIGURE_OPTS_TARGET="--enable-glamor \ + --with-xorg-module-dir=${XORG_PATH_MODULES}" post_makeinstall_target() { mkdir -p ${INSTALL}/etc/X11 diff --git a/packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-001-fix-gcc-10.patch b/packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-999.01-fix-gcc-10.patch similarity index 100% rename from packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-001-fix-gcc-10.patch rename to packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-999.01-fix-gcc-10.patch diff --git a/packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-999.02-cleanup-terminology-to-use-primary-secondary.patch b/packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-999.02-cleanup-terminology-to-use-primary-secondary.patch new file mode 100644 index 0000000000..e680b2f5b6 --- /dev/null +++ b/packages/x11/driver/xf86-video-ati/patches/xf86-video-ati-999.02-cleanup-terminology-to-use-primary-secondary.patch @@ -0,0 +1,365 @@ +From 8da3e4561ef82bb78c9a17b8cd8bf139b9cfd680 Mon Sep 17 00:00:00 2001 +From: Dave Airlie +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 diff --git a/packages/x11/driver/xf86-video-intel/package.mk b/packages/x11/driver/xf86-video-intel/package.mk index 9ce115f45d..e1ba8b180b 100644 --- a/packages/x11/driver/xf86-video-intel/package.mk +++ b/packages/x11/driver/xf86-video-intel/package.mk @@ -7,12 +7,11 @@ PKG_VERSION="31486f40f8e8f8923ca0799aea84b58799754564" PKG_SHA256="e47eb678c681d80df138e897ee27c79f9b42e3517d55b1f0684e9a70361c8218" PKG_ARCH="x86_64" PKG_LICENSE="OSS" -PKG_SITE="http://intellinuxgraphics.org/" +PKG_SITE="https://www.x.org/wiki/IntelGraphicsDriver/" PKG_URL="https://gitlab.freedesktop.org/xorg/driver/${PKG_NAME}/-/archive/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2" PKG_DEPENDS_TARGET="toolchain libXcomposite libXxf86vm libXdamage libdrm util-macros systemd xorg-server" -PKG_LONGDESC="The Xorg driver for Intel i810, i815, 830M, 845G, 852GM, 855GM, 865G, 915G, 915GM and 965G." +PKG_LONGDESC="Open-source Xorg graphics driver for Intel graphics." PKG_TOOLCHAIN="autotools" -# xf86-video-intel is broken enough. dont link with LTO PKG_CONFIGURE_OPTS_TARGET="--disable-backlight \ --disable-backlight-helper \ diff --git a/packages/x11/driver/xf86-video-nvidia-legacy/package.mk b/packages/x11/driver/xf86-video-nvidia-legacy/package.mk index 4371f70486..c1ec61732a 100644 --- a/packages/x11/driver/xf86-video-nvidia-legacy/package.mk +++ b/packages/x11/driver/xf86-video-nvidia-legacy/package.mk @@ -7,11 +7,12 @@ PKG_VERSION="340.108" PKG_SHA256="995d44fef587ff5284497a47a95d71adbee0c13020d615e940ac928f180f5b77" PKG_ARCH="x86_64" PKG_LICENSE="nonfree" -PKG_SITE="http://www.nvidia.com/" +PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/" PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run" PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau" PKG_NEED_UNPACK="${LINUX_DEPENDS}" -PKG_LONGDESC="The Xorg driver for NVIDIA video chips supporting Geforce 6 and Geforce 7 devices." +PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 500 Series & older devices." + PKG_TOOLCHAIN="manual" PKG_IS_KERNEL_PKG="yes" diff --git a/packages/x11/driver/xf86-video-nvidia/package.mk b/packages/x11/driver/xf86-video-nvidia/package.mk index 86753df76c..9561c81249 100644 --- a/packages/x11/driver/xf86-video-nvidia/package.mk +++ b/packages/x11/driver/xf86-video-nvidia/package.mk @@ -3,17 +3,17 @@ # Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xf86-video-nvidia" -# Remember to run "python3 packages/x11/driver/xf86-video-nvidia/scripts/make_nvidia_udev.py" and commit changes to -# "packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules" whenever bumping version. -# Host may require installation of python3-lxml and python3-requests packages. +# Remember to run "python3 packages/x11/driver/xf86-video-nvidia/scripts/make_nvidia_udev.py" and commit +# changes to "packages/x11/driver/xf86-video-nvidia/udev.d/96-nvidia.rules" whenever bumping version. +# The build host may require installation of python3-lxml and python3-requests packages. PKG_VERSION="460.91.03" PKG_SHA256="448156cfcef182ed6997c2754c472fd681bf7139b821d2adce1d847220c6c933" PKG_ARCH="x86_64" PKG_LICENSE="nonfree" -PKG_SITE="http://www.nvidia.com/" +PKG_SITE="https://www.nvidia.com/en-us/drivers/unix/" PKG_URL="http://us.download.nvidia.com/XFree86/Linux-x86_64/${PKG_VERSION}/NVIDIA-Linux-x86_64-${PKG_VERSION}-no-compat32.run" PKG_DEPENDS_TARGET="util-macros xorg-server libvdpau libglvnd" -PKG_LONGDESC="The Xorg driver for NVIDIA video chips." +PKG_LONGDESC="The Xorg driver for NVIDIA GPUs supporting the GeForce 600 Series & above." PKG_TOOLCHAIN="manual" PKG_IS_KERNEL_PKG="yes" diff --git a/packages/x11/font/font-util/package.mk b/packages/x11/font/font-util/package.mk index 6d1a2558b6..6a6a07d82f 100644 --- a/packages/x11/font/font-util/package.mk +++ b/packages/x11/font/font-util/package.mk @@ -12,7 +12,8 @@ PKG_DEPENDS_TARGET="toolchain util-macros" PKG_DEPENDS_HOST="util-macros" PKG_LONGDESC="X.org font utilities." -PKG_CONFIGURE_OPTS_TARGET="--with-mapdir=/usr/share/fonts/util" +PKG_CONFIGURE_OPTS_TARGET="--with-fontrootdir=/usr/share/fonts \ + --with-mapdir=/usr/share/fonts/util" post_makeinstall_target() { rm -rf ${INSTALL}/usr/bin diff --git a/packages/x11/lib/libX11/package.mk b/packages/x11/lib/libX11/package.mk index f971ce8d18..d03961af3a 100644 --- a/packages/x11/lib/libX11/package.mk +++ b/packages/x11/lib/libX11/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="libX11" -PKG_VERSION="1.7.0" -PKG_SHA256="36c8f93b6595437c8cfbc9f08618bcb3041cbd303e140a0013f88e4c2977cb54" +PKG_VERSION="1.7.2" +PKG_SHA256="1cfa35e37aaabbe4792e9bb690468efefbfbf6b147d9c69d6f90d13c3092ea6c" PKG_LICENSE="OSS" PKG_SITE="http://www.x.org/" PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/lib/libXfixes/package.mk b/packages/x11/lib/libXfixes/package.mk index 83247f819a..78592b34e6 100644 --- a/packages/x11/lib/libXfixes/package.mk +++ b/packages/x11/lib/libXfixes/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="libXfixes" -PKG_VERSION="5.0.3" -PKG_SHA256="de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6" +PKG_VERSION="6.0.0" +PKG_SHA256="a7c1a24da53e0b46cac5aea79094b4b2257321c621b258729bc3139149245b4c" PKG_LICENSE="OSS" PKG_SITE="http://www.X.org" PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/lib/libXfont2/package.mk b/packages/x11/lib/libXfont2/package.mk index 387513746c..536ebca022 100644 --- a/packages/x11/lib/libXfont2/package.mk +++ b/packages/x11/lib/libXfont2/package.mk @@ -3,16 +3,15 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="libXfont2" -PKG_VERSION="2.0.4" -PKG_SHA256="6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6" +PKG_VERSION="2.0.5" +PKG_SHA256="aa7c6f211cf7215c0ab4819ed893dc98034363d7b930b844bb43603c2e10b53e" PKG_LICENSE="OSS" PKG_SITE="http://www.X.org" PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2" PKG_DEPENDS_TARGET="toolchain util-macros xtrans freetype libfontenc" PKG_LONGDESC="X font Library" -PKG_CONFIGURE_OPTS_TARGET="--enable-static --disable-shared \ - --disable-ipv6 \ +PKG_CONFIGURE_OPTS_TARGET="--disable-ipv6 \ --enable-freetype \ --enable-builtins \ --disable-pcfformat \ diff --git a/packages/x11/lib/libXi/package.mk b/packages/x11/lib/libXi/package.mk index 6122125042..ef39d72861 100644 --- a/packages/x11/lib/libXi/package.mk +++ b/packages/x11/lib/libXi/package.mk @@ -3,8 +3,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="libXi" -PKG_VERSION="1.7.10" -PKG_SHA256="36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061" +PKG_VERSION="1.8" +PKG_SHA256="2ed181446a61c7337576467870bc5336fc9e222a281122d96c4d39a3298bba00" PKG_LICENSE="OSS" PKG_SITE="http://www.x.org/" PKG_URL="http://xorg.freedesktop.org/archive/individual/lib/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/lib/libxcvt/package.mk b/packages/x11/lib/libxcvt/package.mk new file mode 100644 index 0000000000..1f22783375 --- /dev/null +++ b/packages/x11/lib/libxcvt/package.mk @@ -0,0 +1,12 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="libxcvt" +PKG_VERSION="0.1.0" +PKG_SHA256="90a4d4814935109890aa6c8101bf98ffbdc293000772f5db3d206f27d8a61976" +PKG_LICENSE="OSS" +PKG_SITE="https://gitlab.freedesktop.org/xorg/lib/libxcvt" +PKG_URL="https://gitlab.freedesktop.org/xorg/lib/${PKG_NAME}/-/archive/${PKG_NAME}-${PKG_VERSION}/${PKG_NAME}-${PKG_NAME}-${PKG_VERSION}.tar.bz2" +PKG_DEPENDS_TARGET="toolchain" +PKG_LONGDESC="libxcvt is a library providing a standalone version of the X server implementation of the VESA CVT standard timing modelines generator." +PKG_BUILD_FLAGS="+pic" diff --git a/packages/x11/other/fontconfig/package.mk b/packages/x11/other/fontconfig/package.mk index 655f98b0d5..b24f010477 100644 --- a/packages/x11/other/fontconfig/package.mk +++ b/packages/x11/other/fontconfig/package.mk @@ -3,13 +3,14 @@ # Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv) PKG_NAME="fontconfig" -PKG_VERSION="2.13.1" -PKG_SHA256="9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f" +PKG_VERSION="2.13.94" +PKG_SHA256="246d1640a7e54fba697b28e4445f4d9eb63dda1b511d19986249368ee7191882" PKG_LICENSE="OSS" PKG_SITE="http://www.fontconfig.org" PKG_URL="http://www.freedesktop.org/software/fontconfig/release/${PKG_NAME}-${PKG_VERSION}.tar.gz" PKG_DEPENDS_TARGET="toolchain util-linux util-macros freetype libxml2 zlib expat" PKG_LONGDESC="Fontconfig is a library for font customization and configuration." +PKG_TOOLCHAIN="configure" PKG_CONFIGURE_OPTS_TARGET="--with-arch=${TARGET_ARCH} \ --with-cache-dir=/storage/.cache/fontconfig \ diff --git a/packages/x11/proto/xorgproto/package.mk b/packages/x11/proto/xorgproto/package.mk index e84f56a06e..686953477d 100644 --- a/packages/x11/proto/xorgproto/package.mk +++ b/packages/x11/proto/xorgproto/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="xorgproto" -PKG_VERSION="2020.1" -PKG_SHA256="54a153f139035a376c075845dd058049177212da94d7a9707cf9468367b699d2" +PKG_VERSION="2021.5" +PKG_SHA256="aa2f663b8dbd632960b24f7477aa07d901210057f6ab1a1db5158732569ca015" PKG_LICENSE="OSS" PKG_SITE="http://www.X.org" PKG_URL="https://xorg.freedesktop.org/archive/individual/proto/${PKG_NAME}-${PKG_VERSION}.tar.bz2" diff --git a/packages/x11/xserver/xorg-server/package.mk b/packages/x11/xserver/xorg-server/package.mk index 988d685039..8c5c076032 100644 --- a/packages/x11/xserver/xorg-server/package.mk +++ b/packages/x11/xserver/xorg-server/package.mk @@ -3,118 +3,84 @@ # 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_TOOLCHAIN="autotools" +PKG_LONGDESC="X.Org Server is the free and open-source implementation of the X Window System display server." get_graphicdrivers -if [ "${COMPOSITE_SUPPORT}" = "yes" ]; then - PKG_DEPENDS_TARGET+=" libXcomposite" - XORG_COMPOSITE="--enable-composite" -else - XORG_COMPOSITE="--disable-composite" -fi +PKG_MESON_OPTS_TARGET="-Dxorg=true \ + -Dxephyr=false \ + -Dxnest=false \ + -Dxvfb=false \ + -Dxwin=false \ + -Dxquartz=false \ + -Dbuilder_addr=${BUILDER_NAME} \ + -Dlog_dir="/var/log" \ + -Dmodule_dir=${XORG_PATH_MODULES} \ + -Ddefault_font_path="/usr/share/fonts/misc,built-ins" \ + -Dxdmcp=false \ + -Dxdm-auth-1=false \ + -Dsecure-rpc=false \ + -Dipv6=false \ + -Dinput_thread=true \ + -Dxkb_dir=${XORG_PATH_XKB} \ + -Dxkb_output_dir="/var/cache/xkb" \ + -Dvendor_name="LibreELEC" \ + -Dvendor_name_short="LE" \ + -Dvendor_web="https://libreelec.tv/" \ + -Dlisten_tcp=false \ + -Dlisten_unix=true \ + -Dlisten_local=false \ + -Dint10=x86emu \ + -Dpciaccess=true \ + -Dudev=true \ + -Dudev_kms=true \ + -Dhal=false \ + -Dsystemd_logind=false \ + -Dvgahw=true \ + -Ddpms=true \ + -Dxf86bigfont=false \ + -Dscreensaver=false \ + -Dxres=true \ + -Dxace=false \ + -Dxselinux=false \ + -Dxinerama=true \ + -Dxcsecurity=false \ + -Dxv=true \ + -Dxvmc=false \ + -Ddga=true \ + -Dlinux_apm=false \ + -Dlinux_acpi=false \ + -Dmitshm=true \ + -Dsha1="libcrypto" \ + -Ddri2=true \ + -Ddri3=true \ + -Ddrm=true \ + -Dxpbproxy=false \ + -Dlibunwind=false \ + -Ddocs=false \ + -Ddevel-docs=false" if [ ! "${OPENGL}" = "no" ]; then PKG_DEPENDS_TARGET+=" ${OPENGL} libepoxy" - XORG_MESA="--enable-glx --enable-dri --enable-glamor" + PKG_MESON_OPTS_TARGET+=" -Dglx=true \ + -Ddri1=true \ + -Dglamor=true" else - XORG_MESA="--disable-glx --disable-dri --disable-glamor" + PKG_MESON_OPTS_TARGET+=" -Dglx=false \ + -Ddri1=false \ + -Dglamor=false" fi -PKG_CONFIGURE_OPTS_TARGET="--disable-debug \ - --disable-silent-rules \ - --disable-strict-compilation \ - --enable-largefile \ - --enable-visibility \ - --disable-unit-tests \ - --disable-sparkle \ - --disable-xselinux \ - ${XORG_COMPOSITE} \ - --enable-mitshm \ - --enable-xres \ - --enable-record \ - --enable-xv \ - --disable-xvmc \ - --enable-dga \ - --disable-screensaver \ - --disable-xdmcp \ - --disable-xdm-auth-1 \ - ${XORG_MESA} \ - --enable-dri2 \ - --enable-dri3 \ - --enable-present \ - --enable-xinerama \ - --enable-xf86vidmode \ - --disable-xace \ - --disable-xselinux \ - --disable-xcsecurity \ - --enable-dbe \ - --disable-xf86bigfont \ - --enable-dpms \ - --enable-config-udev \ - --enable-config-udev-kms \ - --disable-config-hal \ - --disable-config-wscons \ - --enable-xfree86-utils \ - --enable-vgahw \ - --enable-vbe \ - --enable-int10-module \ - --disable-windowswm \ - --enable-libdrm \ - --enable-clientids \ - --enable-pciaccess \ - --disable-linux-acpi \ - --disable-linux-apm \ - --disable-systemd-logind \ - --enable-xorg \ - --disable-dmx \ - --disable-xvfb \ - --disable-xnest \ - --disable-xquartz \ - --disable-standalone-xpbproxy \ - --disable-xwin \ - --disable-kdrive \ - --disable-xephyr \ - --disable-libunwind \ - --enable-xshmfence \ - --disable-install-setuid \ - --enable-unix-transport \ - --disable-tcp-transport \ - --disable-ipv6 \ - --disable-local-transport \ - --disable-secure-rpc \ - --enable-input-thread \ - --enable-xtrans-send-fds \ - --disable-docs \ - --disable-devel-docs \ - --with-int10=x86emu \ - --with-gnu-ld \ - --with-sha1=libcrypto \ - --without-systemd-daemon \ - --with-os-vendor=LibreELEC.tv \ - --with-module-dir=${XORG_PATH_MODULES} \ - --with-xkb-path=${XORG_PATH_XKB} \ - --with-xkb-output=/var/cache/xkb \ - --with-log-dir=/var/log \ - --with-fontrootdir=/usr/share/fonts \ - --with-default-font-path=/usr/share/fonts/misc,built-ins \ - --with-serverconfig-path=/usr/lib/xserver \ - --without-xmlto \ - --without-fop" - -pre_configure_target() { -# hack to prevent a build error - CFLAGS=$(echo ${CFLAGS} | sed -e "s|-O3|-O2|" -e "s|-Ofast|-O2|") - LDFLAGS=$(echo ${LDFLAGS} | sed -e "s|-O3|-O2|" -e "s|-Ofast|-O2|") -} +if [ "${COMPOSITE_SUPPORT}" = "yes" ]; then + PKG_DEPENDS_TARGET+=" libXcomposite" +fi post_makeinstall_target() { rm -rf ${INSTALL}/var/cache/xkb 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 $