[arch-commits] Commit in nss/trunk (PKGBUILD no-plt.diff)

Jan Steffens heftig at archlinux.org
Thu Jul 20 22:00:33 UTC 2017


    Date: Thursday, July 20, 2017 @ 22:00:32
  Author: heftig
Revision: 300878

fix no-plt on i686

Added:
  nss/trunk/no-plt.diff
Modified:
  nss/trunk/PKGBUILD

-------------+
 PKGBUILD    |    6 ++++--
 no-plt.diff |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 52 insertions(+), 2 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-07-20 21:44:39 UTC (rev 300877)
+++ PKGBUILD	2017-07-20 22:00:32 UTC (rev 300878)
@@ -14,7 +14,7 @@
 makedepends=(perl python2 xmlto docbook-xsl gyp)
 options=(!strip !makeflags staticlibs)
 source=("https://ftp.mozilla.org/pub/security/nss/releases/NSS_${pkgver//./_}_RTM/src/nss-${pkgver}.tar.gz"
-        certdata2pem.py bundle.sh nss.pc.in nss-config.in nss-config.xml enable-libpkix.patch)
+        certdata2pem.py bundle.sh nss.pc.in nss-config.in nss-config.xml enable-libpkix.patch no-plt.diff)
 sha256sums=('e90561256a3271486162c1fbe8d614d118c333d36a4455be2af8688bd420a65d'
             '512b12a2f13129be62c008b4df0153f527dd7d71c2c5183de99dfa2a1c49dd8a'
             '3bfadf722da6773bdabdd25bdf78158648043d1b7e57615574f189a88ca865dd'
@@ -21,7 +21,8 @@
             'f2208c4f70373ff9b60f53d733f8071d4e390c384b776dfc04bf26c306882faf'
             'e44ac5095b4d88f24ec7b2e6a9f1581560bd3ad41a3d198596d67ef22f67adb9'
             '98ace873c63e8e870286bce3ed53249aa2655cc1f53e7049061476e650ab06f1'
-            '0b68c5ffbfeec090e950e5703e6b0519eafcb7eaf4fe2f64c355d0ddf17eed30')
+            '0b68c5ffbfeec090e950e5703e6b0519eafcb7eaf4fe2f64c355d0ddf17eed30'
+            'ea8e1b871c0f1dd29cdea1b1a2e7f47bf4713e2ae7b947ec832dba7dfcc67daa')
 
 prepare() {
   mkdir certs path
@@ -35,6 +36,7 @@
   cd nss-$pkgver
 
   patch -Np1 -i ../enable-libpkix.patch
+  patch -Np2 -i ../no-plt.diff
 
   ln -sr nss/lib/ckfw/builtins/certdata.txt ../certs/
   ln -sr nss/lib/ckfw/builtins/nssckbi.h ../certs/

Added: no-plt.diff
===================================================================
--- no-plt.diff	                        (rev 0)
+++ no-plt.diff	2017-07-20 22:00:32 UTC (rev 300878)
@@ -0,0 +1,48 @@
+diff --git i/security/nss/lib/freebl/mpi/mpi_x86.s w/security/nss/lib/freebl/mpi/mpi_x86.s
+index 8f7e2130c3264754..b3ca1ce5b41b3771 100644
+--- i/security/nss/lib/freebl/mpi/mpi_x86.s
++++ w/security/nss/lib/freebl/mpi/mpi_x86.s
+@@ -22,22 +22,41 @@ is_sse: .long	-1
+ #
+ .ifndef NO_PIC
+ .macro GET   var,reg
+-    movl   \var at GOTOFF(%ebx),\reg
++    call   thunk.ax
++    addl   $_GLOBAL_OFFSET_TABLE_, %eax
++    movl   \var at GOTOFF(%eax),\reg
+ .endm
+ .macro PUT   reg,var
+-    movl   \reg,\var at GOTOFF(%ebx)
++    call   thunk.dx
++    addl   $_GLOBAL_OFFSET_TABLE_, %edx
++    movl   \reg,\var at GOTOFF(%edx)
+ .endm
+ .else
+ .macro GET   var,reg
+     movl   \var,\reg
+ .endm
+ .macro PUT   reg,var
+     movl   \reg,\var
+ .endm
+ .endif
+ 
+ .text
+ 
++.ifndef NO_PIC
++.globl	thunk.ax
++.hidden	thunk.ax
++.type	thunk.ax, @function
++thunk.ax:
++       movl   (%esp),%eax
++       ret
++
++.globl	thunk.dx
++.hidden	thunk.dx
++.type	thunk.dx, @function
++thunk.dx:
++       movl   (%esp),%edx
++       ret
++.endif
+ 
+  #  ebp - 36:	caller's esi
+  #  ebp - 32:	caller's edi



More information about the arch-commits mailing list