diff options
Diffstat (limited to 'abs/core/libdrm')
-rw-r--r-- | abs/core/libdrm/PKGBUILD | 44 | ||||
-rw-r--r-- | abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff | 39 | ||||
-rw-r--r-- | abs/core/libdrm/no-drmdevice-test.diff | 9 |
3 files changed, 77 insertions, 15 deletions
diff --git a/abs/core/libdrm/PKGBUILD b/abs/core/libdrm/PKGBUILD index 964dc57..59dd0ab 100644 --- a/abs/core/libdrm/PKGBUILD +++ b/abs/core/libdrm/PKGBUILD @@ -2,20 +2,24 @@ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libdrm -pkgver=2.4.81 -pkgrel=1 +pkgver=2.4.90 +pkgrel=3 pkgdesc="Userspace interface to kernel DRM services" -arch=(i686 x86_64) +url="https://dri.freedesktop.org/" +arch=(x86_64) license=('custom') depends=('libpciaccess') -makedepends=('valgrind' 'xorg-util-macros' 'libxslt' 'docbook-xsl') +makedepends=('valgrind' 'libxslt' 'docbook-xsl' 'meson') checkdepends=('cairo') replaces=('libdrm-new' 'libdrm-nouveau') -url="http://dri.freedesktop.org/" source=(https://dri.freedesktop.org/$pkgname/$pkgname-$pkgver.tar.bz2{,.sig} + no-drmdevice-test.diff + fix_mistake_in_initial_hole_size_calculation.diff COPYING) -sha512sums=('5f7a1524acad59890d3f890bed90a660a424e18a88d587ca356223bde4a7446d1c540f97ec11cb10d2e7ed1b4ae86127957634354a1be6d04199295ab24782e5' +sha512sums=('3d32d60c44ffdcb58667d0926e6af8d375332add1f243d8b2d37567aeef4e4b26d786294aeecf46c3dea94fc002fb73756567c457300703acfc21e32ffbd458c' 'SKIP' + 'f1dd5d8c2270c092ccb8e4f92a0da9ab27706dfa22dcedd3fb2414b968ced9333c8bf62baf0219b822e43dce0d804d1dd5cc27d09b0afe8c01967c1784d4a4bb' + '679ba7ef4f29cc4d511d5fbb7b505d8eade4cd3fc16eceaed2d1aa47947ebf31bac113ead5f2a1db8f5626ba290e9e1ffeab28c2abb924d0c85efe816c1201f8' 'b0ca349b882a4326b19f81f22804fabdb6fb7aef31cdc7b16b0a7ae191bfbb50c7daddb2fc4e6c33f1136af06d060a273de36f6f3412ea326f16fa4309fda660') validpgpkeys=('B97BD6A80CAC4981091AE547FE558C72A67013C3') # Maarten Lankhorst <maarten.lankhorst@canonical.com> validpgpkeys+=('215DEE688925CCB965BE5DA97C03D7797B6E1AE2') # Damien Lespiau <damien.lespiau@intel.com> @@ -28,21 +32,31 @@ validpgpkeys+=('3BB639E56F861FA2E86505690FDD682D974CA72A') # Matt Turner <mattst validpgpkeys+=('C20F5C4490D7D64B4C9A09998CD1DF552975297B') # Robert Bragg <robert@sixbynine.org> validpgpkeys+=('CD47C5341A375F33BEF7BAFAFDD15D5ACEF0F2B1') # Marek Olšák <maraeo@gmail.com> validpgpkeys+=('A66D805F7C9329B4C5D82767CCC4F07FAC641EFF') # Daniel Stone <daniels@collabora.com> +validpgpkeys+=('CFD0E654BCBE5DD2D030D222CFCC297C6D0A120B') # Lucas Stach <l.stach@pengutronix.de> -build() { +prepare() { cd $pkgname-$pkgver - ./configure --prefix=/usr --enable-udev - make + + # Fix version + sed -i 's/2\.4\.89/2.4.90/' meson.build + + # Fails in a container; autotools skipped this one already + patch -Np1 -i ../no-drmdevice-test.diff + # FS#57576; fix amdgpu cards + patch -Np1 -i ../fix_mistake_in_initial_hole_size_calculation.diff +} + +build() { + arch-meson $pkgname-$pkgver build -Dudev=true + ninja -C build } check() { - cd $pkgname-$pkgver - make -k check + cd build + meson test } package() { - cd $pkgname-$pkgver - make DESTDIR="$pkgdir" install - install -m755 -d "$pkgdir/usr/share/licenses/$pkgname" - install -m644 ../COPYING "$pkgdir/usr/share/licenses/$pkgname/" + DESTDIR="$pkgdir" ninja -C build install + install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 COPYING } diff --git a/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff b/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff new file mode 100644 index 0000000..8998e45 --- /dev/null +++ b/abs/core/libdrm/fix_mistake_in_initial_hole_size_calculation.diff @@ -0,0 +1,39 @@ +From 33a2851ab9bc3cd8a68bedf4cf0fdc549b0f3596 Mon Sep 17 00:00:00 2001 +From: Andrey Grodzovsky <andrey.grodzovsky@amd.com> +Date: Mon, 19 Feb 2018 02:18:36 -0500 +Subject: amdgpu: Fix mistake in initial hole size calculation. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com> +Acked-by: Christian König <christian.koenig@amd.com> +--- + amdgpu/amdgpu_vamgr.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c +index 722067f..5840042 100644 +--- a/amdgpu/amdgpu_vamgr.c ++++ b/amdgpu/amdgpu_vamgr.c +@@ -57,7 +57,7 @@ drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start, + pthread_mutex_init(&mgr->bo_va_mutex, NULL); + pthread_mutex_lock(&mgr->bo_va_mutex); + n = calloc(1, sizeof(struct amdgpu_bo_va_hole)); +- n->size = mgr->va_max; ++ n->size = mgr->va_max - start; + n->offset = start; + list_add(&n->list, &mgr->va_holes); + pthread_mutex_unlock(&mgr->bo_va_mutex); +@@ -80,6 +80,7 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, + struct amdgpu_bo_va_hole *hole, *n; + uint64_t offset = 0, waste = 0; + ++ + alignment = MAX2(alignment, mgr->va_alignment); + size = ALIGN(size, mgr->va_alignment); + +-- +cgit v1.1 + + diff --git a/abs/core/libdrm/no-drmdevice-test.diff b/abs/core/libdrm/no-drmdevice-test.diff new file mode 100644 index 0000000..f60df04 --- /dev/null +++ b/abs/core/libdrm/no-drmdevice-test.diff @@ -0,0 +1,9 @@ +diff --git i/tests/meson.build w/tests/meson.build +index fdf950b7..a6a2f1f1 100644 +--- i/tests/meson.build ++++ w/tests/meson.build +@@ -83,4 +83,3 @@ drmdevice = executable( + test('random', random, timeout : 240) + test('hash', hash) + test('drmsl', drmsl) +-test('drmdevice', drmdevice) |