aboutsummaryrefslogtreecommitdiffstats
path: root/community/xf86-video-nouveau
diff options
context:
space:
mode:
Diffstat (limited to 'community/xf86-video-nouveau')
-rw-r--r--community/xf86-video-nouveau/APKBUILD20
-rw-r--r--community/xf86-video-nouveau/xorg-server-21.1.patch50
2 files changed, 66 insertions, 4 deletions
diff --git a/community/xf86-video-nouveau/APKBUILD b/community/xf86-video-nouveau/APKBUILD
index ae39c5f19e2..543b4a09c01 100644
--- a/community/xf86-video-nouveau/APKBUILD
+++ b/community/xf86-video-nouveau/APKBUILD
@@ -2,17 +2,26 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=xf86-video-nouveau
pkgver=1.0.17
-pkgrel=0
+pkgrel=5
pkgdesc="Open-source X.org drivers for nVidia video cards"
url="https://nouveau.freedesktop.org/"
arch="all"
license="MIT"
-depends="mesa-dri-nouveau"
+depends="mesa-dri-gallium"
makedepends="libdrm-dev xorg-server-dev util-macros eudev-dev xorgproto"
subpackages="$pkgname-doc"
-source="https://www.x.org/archive/individual/driver/xf86-video-nouveau-$pkgver.tar.bz2"
+source="https://www.x.org/archive/individual/driver/xf86-video-nouveau-$pkgver.tar.bz2
+ xorg-server-21.1.patch
+ "
+
+prepare() {
+ default_prepare
+ update_config_sub
+}
build() {
+ export CFLAGS="${CFLAGS/-fno-plt}"
+ export CXXFLAGS="${CXXFLAGS/-fno-plt}"
export LDFLAGS="$LDFLAGS -Wl,-z,lazy"
./configure \
--build=$CBUILD \
@@ -32,4 +41,7 @@ package() {
make DESTDIR="$pkgdir" install
}
-sha512sums="adba58ba5298d1a5b3f9f8540f9ef2cb2e10e47bba8e374103ec2e1f92e915f5f4393ed0021168cd649646e12315135a1efcdf77e8fb1648e1295914d87279b2 xf86-video-nouveau-1.0.17.tar.bz2"
+sha512sums="
+adba58ba5298d1a5b3f9f8540f9ef2cb2e10e47bba8e374103ec2e1f92e915f5f4393ed0021168cd649646e12315135a1efcdf77e8fb1648e1295914d87279b2 xf86-video-nouveau-1.0.17.tar.bz2
+6c1bc0a2197a0fdaa3f669ce96ab2bc0167642168da01a86c712e1a77692244ad7b68a5c71d47b62abb6fa9b74f0495226133b7eff4badbd6dda56994bba74c8 xorg-server-21.1.patch
+"
diff --git a/community/xf86-video-nouveau/xorg-server-21.1.patch b/community/xf86-video-nouveau/xorg-server-21.1.patch
new file mode 100644
index 00000000000..03d0b80c2a5
--- /dev/null
+++ b/community/xf86-video-nouveau/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);
+ }
+