pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/graphics/MesaLib MesaLib: assorted fixes



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b1a5ddc08e5d
branches:  trunk
changeset: 411853:b1a5ddc08e5d
user:      tnn <tnn%pkgsrc.org@localhost>
date:      Fri Feb 21 21:52:24 2020 +0000

description:
MesaLib: assorted fixes

- must use march=i586 on i386 for 64-bit atomic CAS
- call through @plt from position independent code
- put back the stock STUB_ASM_CODE for non-NetBSD

diffstat:

 graphics/MesaLib/Makefile                                    |   6 ++-
 graphics/MesaLib/distinfo                                    |   4 +-
 graphics/MesaLib/patches/patch-src_mapi_entry__x86-64__tls.h |  24 +++++++----
 3 files changed, 21 insertions(+), 13 deletions(-)

diffs (94 lines):

diff -r 1e08226a833c -r b1a5ddc08e5d graphics/MesaLib/Makefile
--- a/graphics/MesaLib/Makefile Fri Feb 21 18:38:22 2020 +0000
+++ b/graphics/MesaLib/Makefile Fri Feb 21 21:52:24 2020 +0000
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.184 2020/02/19 21:03:41 tnn Exp $
+# $NetBSD: Makefile,v 1.185 2020/02/21 21:52:24 tnn Exp $
 
 DISTNAME=      mesa-19.2.7
 PKGNAME=       ${DISTNAME:S/mesa/MesaLib/}
-PKGREVISION=   4
+PKGREVISION=   5
 CATEGORIES=    graphics
 MASTER_SITES=  https://mesa.freedesktop.org/archive/
 EXTRACT_SUFX=  .tar.xz
@@ -124,6 +124,8 @@
 
 .if ${MACHINE_ARCH} == "i386"
 MESON_ARGS+=   -Dglx-read-only-text=true
+CFLAGS+=       -march=i586
+CXXFLAGS+=     -march=i586
 .endif
 
 MESON_ARGS+=   -Dgles1=true
diff -r 1e08226a833c -r b1a5ddc08e5d graphics/MesaLib/distinfo
--- a/graphics/MesaLib/distinfo Fri Feb 21 18:38:22 2020 +0000
+++ b/graphics/MesaLib/distinfo Fri Feb 21 21:52:24 2020 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.148 2020/02/19 21:03:41 tnn Exp $
+$NetBSD: distinfo,v 1.149 2020/02/21 21:52:24 tnn Exp $
 
 SHA1 (mesa-19.2.7.tar.xz) = 9b8ebf66770353a48bd710e12e2727fb33645f44
 RMD160 (mesa-19.2.7.tar.xz) = 5323b623ac22c168b86548cf6d842ce004e346a9
@@ -30,7 +30,7 @@
 SHA1 (patch-src_intel_perf_gen__perf.c) = 526f36d96bd9d72893764da2b9e78cb9b70de92b
 SHA1 (patch-src_intel_tools_aubinator__error__decode.c) = d8f636e3c3e76763a505a1dce23de0b198ad62fa
 SHA1 (patch-src_loader_loader.c) = 303e941f9b8afa6ee8053107af01e2c26e6ff118
-SHA1 (patch-src_mapi_entry__x86-64__tls.h) = 7cb6a31dd17e73dad3c3b9cfdf058da1a2a7ecd3
+SHA1 (patch-src_mapi_entry__x86-64__tls.h) = cbbb95b96414609a9cd05af75c9544f8e6938280
 SHA1 (patch-src_mapi_entry__x86__tls.h) = 11c0f5302d305a77f3a1780d44a2c61f48a66273
 SHA1 (patch-src_mapi_u__current.c) = 4e3ec6e253af3737f77ecd43e56044ba2b81e699
 SHA1 (patch-src_mapi_u__current.h) = 9f4744681381a0959fda2926a436f296c89577f3
diff -r 1e08226a833c -r b1a5ddc08e5d graphics/MesaLib/patches/patch-src_mapi_entry__x86-64__tls.h
--- a/graphics/MesaLib/patches/patch-src_mapi_entry__x86-64__tls.h      Fri Feb 21 18:38:22 2020 +0000
+++ b/graphics/MesaLib/patches/patch-src_mapi_entry__x86-64__tls.h      Fri Feb 21 21:52:24 2020 +0000
@@ -1,4 +1,4 @@
-$NetBSD: patch-src_mapi_entry__x86-64__tls.h,v 1.4 2020/02/19 21:03:41 tnn Exp $
+$NetBSD: patch-src_mapi_entry__x86-64__tls.h,v 1.5 2020/02/21 21:52:24 tnn Exp $
 
 NetBSD only supports zero-initialized initial-exec tls variables in conjuction
 with dlopen(3) at the moment.
@@ -8,7 +8,7 @@
 
 --- src/mapi/entry_x86-64_tls.h.orig   2019-12-04 22:10:14.000000000 +0000
 +++ src/mapi/entry_x86-64_tls.h
-@@ -32,13 +32,13 @@
+@@ -32,21 +32,33 @@
  #endif
  
  __asm__(".text\n"
@@ -24,21 +24,27 @@
     func ":"
  
  #ifndef __ILP32__
-@@ -46,7 +46,12 @@ __asm__(".text\n"
- #define STUB_ASM_CODE(slot)                              \
-    "movq " ENTRY_CURRENT_TABLE "@GOTTPOFF(%rip), %rax\n\t"  \
-    "movq %fs:(%rax), %r11\n\t"                           \
--   "jmp *(8 * " slot ")(%r11)"
+ 
++#if defined(__NetBSD__)
++#define STUB_ASM_CODE(slot)                              \
++   "movq " ENTRY_CURRENT_TABLE "@GOTTPOFF(%rip), %rax\n\t"  \
++   "movq %fs:(%rax), %r11\n\t"                           \
 +   "testq %r11, %r11\n\t"                                \
 +   "je 1f\n\t"                                           \
 +   "jmp *(8 * " slot ")(%r11)\n\t"                       \
 +   "1:\n\t"                                              \
-+   "call " ENTRY_CURRENT_TABLE_GET "\n\t"                \
++   "callq " ENTRY_CURRENT_TABLE_GET "@PLT\n\t"           \
 +   "jmp *(8 * " slot ")(%rax)"
++#else
+ #define STUB_ASM_CODE(slot)                              \
+    "movq " ENTRY_CURRENT_TABLE "@GOTTPOFF(%rip), %rax\n\t"  \
+    "movq %fs:(%rax), %r11\n\t"                           \
+    "jmp *(8 * " slot ")(%r11)"
++#endif
  
  #else
  
-@@ -77,7 +82,7 @@ x86_64_entry_start[] HIDDEN;
+@@ -77,7 +89,7 @@ x86_64_entry_start[] HIDDEN;
  mapi_func
  entry_get_public(int slot)
  {



Home | Main Index | Thread Index | Old Index