unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#51947] [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds.
@ 2021-11-18 14:04 Josselin Poiret via Guix-patches via
  2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 1/2] gnu: xf86-video-mach64: Patch to build with xorg-server 21.1 Josselin Poiret via Guix-patches via
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2021-11-18 14:04 UTC (permalink / raw)
  To: 51947; +Cc: Josselin Poiret

Hello everyone,

This patchset fixes compilation for both xf86-video drivers that
wouldn't build with xorg-server 21.1 because some variables were
renamed.  The first is home-made while the second is an upstream patch
that hasn't found its way to a release yet.

They both successfully build on my machine, although I can't test
either of them.  Given the nature of the changes, this shouldn't be
too much of an issue.

Happy sprinting,
Josselin

Josselin Poiret (2):
  gnu: xf86-video-mach64: Patch to build with xorg-server 21.1.
  gnu: xf86-video-nouveau: Use upstream patch for xorg-server 21.1.

 .../xf86-video-mach64-bool-to-boolean.patch   | 79 +++++++++++++++++++
 .../xf86-video-nouveau-fixup-ABI.patch        | 64 +++++++++++++++
 gnu/packages/xorg.scm                         |  6 +-
 3 files changed, 147 insertions(+), 2 deletions(-)
 create mode 100644 gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch
 create mode 100644 gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch

-- 
2.33.1





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

* [bug#51947] [PATCH core-updates-frozen 1/2] gnu: xf86-video-mach64: Patch to build with xorg-server 21.1.
  2021-11-18 14:04 [bug#51947] [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Josselin Poiret via Guix-patches via
@ 2021-11-18 14:07 ` Josselin Poiret via Guix-patches via
  2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 2/2] gnu: xf86-video-nouveau: Use upstream patch for " Josselin Poiret via Guix-patches via
  2021-11-18 15:54 ` bug#51947: [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Timothy Sample
  2 siblings, 0 replies; 4+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2021-11-18 14:07 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 51947

* gnu/packages/xorg.scm (xf86-video-mach64): Use patch.
* gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch: Add
it.
---
 .../xf86-video-mach64-bool-to-boolean.patch   | 79 +++++++++++++++++++
 gnu/packages/xorg.scm                         |  3 +-
 2 files changed, 81 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch

diff --git a/gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch b/gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch
new file mode 100644
index 0000000000..b85acdd401
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-mach64-bool-to-boolean.patch
@@ -0,0 +1,79 @@
+From ff1a69144735298d1a190fa23b3ae5747e914859 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
+-- 
+2.33.1
+
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 391a4d33d8..2740d34deb 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -3107,7 +3107,8 @@ (define-public xf86-video-mach64
         (sha256
           (base32
            "171wg8r6py1l138s58rlapin3rlpwsg9spmvhc7l68mm3g3hf1vs"))
-        (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"))))
+        (patches (search-patches "xf86-video-mach64-glibc-2.20.patch"
+                                 "xf86-video-mach64-bool-to-boolean.patch"))))
     (build-system gnu-build-system)
     (inputs `(("mesa" ,mesa)
               ("xorgproto" ,xorgproto)
-- 
2.33.1





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

* [bug#51947] [PATCH core-updates-frozen 2/2] gnu: xf86-video-nouveau: Use upstream patch for xorg-server 21.1.
  2021-11-18 14:04 [bug#51947] [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Josselin Poiret via Guix-patches via
  2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 1/2] gnu: xf86-video-mach64: Patch to build with xorg-server 21.1 Josselin Poiret via Guix-patches via
@ 2021-11-18 14:07 ` Josselin Poiret via Guix-patches via
  2021-11-18 15:54 ` bug#51947: [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Timothy Sample
  2 siblings, 0 replies; 4+ messages in thread
From: Josselin Poiret via Guix-patches via @ 2021-11-18 14:07 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 51947

* gnu/packages/xorg.scm (xf86-video-nouveau): Use patch.
* gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch: Add it.
---
 .../xf86-video-nouveau-fixup-ABI.patch        | 64 +++++++++++++++++++
 gnu/packages/xorg.scm                         |  3 +-
 2 files changed, 66 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch

diff --git a/gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch b/gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch
new file mode 100644
index 0000000000..a18e3f8ab9
--- /dev/null
+++ b/gnu/packages/patches/xf86-video-nouveau-fixup-ABI.patch
@@ -0,0 +1,64 @@
+From e80e73ced69b15662103d0fd6837db4ce6c6eb5b Mon Sep 17 00:00:00 2001
+From: Dave Airlie <airlied@redhat.com>
+Date: Mon, 13 Jul 2020 09:20:15 +1000
+Subject: [PATCH] nouveau: fixup driver for new X server ABI
+
+---
+ src/compat-api.h  | 4 ++++
+ src/nouveau_exa.c | 2 +-
+ src/nv_driver.c   | 6 +++---
+ 3 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/src/compat-api.h b/src/compat-api.h
+index fde2f4b..8a1fcf9 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 55df6f8..db3b112 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 e72a6b6..f9ab4af 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);
+ }
+ 
+-- 
+2.33.1
+
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 2740d34deb..8a6e2951f9 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -3240,7 +3240,8 @@ (define-public xf86-video-nouveau
        (uri (string-append "mirror://xorg/individual/driver/xf86-video-nouveau-"
                            version ".tar.bz2"))
        (sha256
-        (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))))
+        (base32 "0sqm1jwjg15sp8v7039y2hsbhph8gpjd2bdzcqqiij2mgbi254s9"))
+       (patches (search-patches "xf86-video-nouveau-fixup-ABI.patch"))))
     (build-system gnu-build-system)
     (inputs `(("xorg-server" ,xorg-server)))
     (native-inputs `(("pkg-config" ,pkg-config)))
-- 
2.33.1





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

* bug#51947: [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds.
  2021-11-18 14:04 [bug#51947] [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Josselin Poiret via Guix-patches via
  2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 1/2] gnu: xf86-video-mach64: Patch to build with xorg-server 21.1 Josselin Poiret via Guix-patches via
  2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 2/2] gnu: xf86-video-nouveau: Use upstream patch for " Josselin Poiret via Guix-patches via
@ 2021-11-18 15:54 ` Timothy Sample
  2 siblings, 0 replies; 4+ messages in thread
From: Timothy Sample @ 2021-11-18 15:54 UTC (permalink / raw)
  To: Josselin Poiret; +Cc: 51947-done

Hi Josselin,

Josselin Poiret via Guix-patches via <guix-patches@gnu.org> writes:

> They both successfully build on my machine, although I can't test
> either of them.  Given the nature of the changes, this shouldn't be
> too much of an issue.

Agreed.

> Josselin Poiret (2):
>   gnu: xf86-video-mach64: Patch to build with xorg-server 21.1.
>   gnu: xf86-video-nouveau: Use upstream patch for xorg-server 21.1.

Pushed as 572641103880ce87b631e00e6212787747f694aa and
674dbeb43639db31c3f3a6e69ee7203296d0b50f.  I made one small change,
which is to list the patches in “gnu/local.mk” under ‘dist_patch_DATA’.
Thanks!


-- Tim




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

end of thread, other threads:[~2021-11-18 15:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-18 14:04 [bug#51947] [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Josselin Poiret via Guix-patches via
2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 1/2] gnu: xf86-video-mach64: Patch to build with xorg-server 21.1 Josselin Poiret via Guix-patches via
2021-11-18 14:07 ` [bug#51947] [PATCH core-updates-frozen 2/2] gnu: xf86-video-nouveau: Use upstream patch for " Josselin Poiret via Guix-patches via
2021-11-18 15:54 ` bug#51947: [PATCH core-updates-frozen 0/2] Fix xf86-video-mach64 and xf86-video-nouveau builds Timothy Sample

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).