libglvnd: update to 1.3.1.

This commit is contained in:
Juan RP 2020-03-05 08:32:15 +01:00
parent 40f5b14ac9
commit 45cabf7812
4 changed files with 2 additions and 94 deletions

View file

@ -1,51 +0,0 @@
From 5ffb8df0ae243f611a0752950443e7a9877e502c Mon Sep 17 00:00:00 2001
From: Kyle Brenneman <kbrenneman@nvidia.com>
Date: Fri, 6 Dec 2019 07:27:54 -0700
Subject: [PATCH] meson: Fix the PPC64 build.
Check for a cpu_family value of 'ppc64', not 'ppc'. 'ppc' is for 32-bit power.
In GLdispatch, fix the file list for the PPC64 entrypoints.
---
meson.build | 4 ++--
src/GLdispatch/vnd-glapi/meson.build | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/meson.build b/meson.build
index 44c7172..602e837 100644
--- meson.build
+++ meson.build
@@ -55,7 +55,7 @@ if not with_asm.disabled()
add_project_arguments('-DUSE_ARMV7_ASM', language : 'c')
elif host_machine.cpu_family() == 'aarch64'
add_project_arguments('-DUSE_AARCH64_ASM', language : 'c')
- elif host_machine.cpu_family() == 'ppc' and host_machine.endian() == 'little'
+ elif host_machine.cpu_family() == 'ppc64' and host_machine.endian() == 'little'
add_project_arguments('-DUSE_PPC64LE_ASM', language : 'c')
elif with_asm.enabled()
error('No ASM available for @0@ (@1@ endian)'.format(host_machine.system(), host_machine.endian()))
@@ -118,7 +118,7 @@ if use_asm
elif host_machine.cpu_family() == 'aarch64'
gl_dispatch_type = 'aarch64_tsd'
elif host_machine.cpu_family() == 'ppc64' and host_machine.endian() == 'little'
- gl_dispatch_type = 'ppc64le_@1@'.format(have_tls ? 'tls' : 'tsd')
+ gl_dispatch_type = 'ppc64le_@0@'.format(have_tls ? 'tls' : 'tsd')
endif
endif
add_project_arguments('-DGLDISPATCH_TYPE_@0@'.format(gl_dispatch_type.to_upper()), language : ['c'])
diff --git a/src/GLdispatch/vnd-glapi/meson.build b/src/GLdispatch/vnd-glapi/meson.build
index ce20178..200d476 100644
--- src/GLdispatch/vnd-glapi/meson.build
+++ src/GLdispatch/vnd-glapi/meson.build
@@ -55,9 +55,9 @@ else
elif gl_dispatch_type == 'aarch64_tsd'
_entry_files += 'entry_aarch64_tsd.c'
elif gl_dispatch_type == 'ppc64le_tls'
- _entry_files += 'entry_aarch64_tls.c'
+ _entry_files += 'entry_ppc64le_tls.c'
elif gl_dispatch_type == 'ppc64le_tsd'
- _entry_files += 'entry_aarch64_tsd.c'
+ _entry_files += 'entry_ppc64le_tsd.c'
else
error('No matching ASM file for @0@'.format(gl_dispatch_type))
endif

View file

@ -1,24 +0,0 @@
While these assembly files are named ppc64le, they're really just assembly
for the modern ELFv2 ABI, which Void uses even on big endian. So enable those
instead of the generic C stuff.
--- meson.build
+++ meson.build
@@ -55,7 +55,7 @@ if not with_asm.disabled()
add_project_arguments('-DUSE_ARMV7_ASM', language : 'c')
elif host_machine.cpu_family() == 'aarch64'
add_project_arguments('-DUSE_AARCH64_ASM', language : 'c')
- elif host_machine.cpu_family() == 'ppc64' and host_machine.endian() == 'little'
+ elif host_machine.cpu_family() == 'ppc64'
add_project_arguments('-DUSE_PPC64LE_ASM', language : 'c')
elif with_asm.enabled()
error('No ASM available for @0@ (@1@ endian)'.format(host_machine.system(), host_machine.endian()))
@@ -117,7 +117,7 @@ if use_asm
gl_dispatch_type = 'armv7_tsd'
elif host_machine.cpu_family() == 'aarch64'
gl_dispatch_type = 'aarch64_tsd'
- elif host_machine.cpu_family() == 'ppc64' and host_machine.endian() == 'little'
+ elif host_machine.cpu_family() == 'ppc64'
gl_dispatch_type = 'ppc64le_@0@'.format(have_tls ? 'tls' : 'tsd')
endif
endif

View file

@ -1,17 +0,0 @@
This change fixes the test suite on big endian ppc64 systems by using correct
word instructions on an `int *` rather than doubleword ones.
--- tests/dummy/patchentrypoints.c
+++ tests/dummy/patchentrypoints.c
@@ -176,9 +176,9 @@ static void patch_ppc64(char *writeEntry, const char *execEntry,
// 1000:
0x7D2903A6, // mtctr 9
0xE96C0020, // ld 11, 9000f-1000b(12)
- 0xE92B0000, // ld 9, 0(11)
+ 0x812B0000, // lwz 9, 0(11)
0x39290001, // addi 9, 9, 1
- 0xF92B0000, // std 9, 0(11)
+ 0x912B0000, // stw 9, 0(11)
0x7D2902A6, // mfctr 9
0x4E800020, // blr
0x60000000, // nop

View file

@ -1,6 +1,6 @@
# Template file for 'libglvnd'
pkgname=libglvnd
version=1.3.0
version=1.3.1
revision=1
wrksrc="libglvnd-v${version}"
build_style=meson
@ -11,7 +11,7 @@ maintainer="Stefano Ragni <st3r4g@protonmail.com>"
license="custom:MIT-alike"
homepage="https://gitlab.freedesktop.org/glvnd/libglvnd"
distfiles="https://gitlab.freedesktop.org/glvnd/libglvnd/-/archive/v${version}/libglvnd-v${version}.tar.gz"
checksum=e336ac2340105c4f21412260e5b1db17a9ce1cef27aa708a63aed293c670c1b4
checksum=b26c931ff79feced0d1ac69332797a08427308fa85541282ee9995680c880b24
provides="libGL-7.11_1 libEGL-7.11_1 libGLES-7.11_1"
replaces="libGL>=0 libEGL>=0 libGLES>=0"