From 16693e1e448e818b373994a91a1405a38b88588f2027ad3ba6b826814f721d61 Mon Sep 17 00:00:00 2001 From: OBS User autobuild Date: Tue, 20 Jul 2010 18:17:16 +0000 Subject: [PATCH] Accepting request 43461 from home:hennevogel:TODO Copy from home:hennevogel:TODO/libgcrypt based on submit request 43461 from user a_jaeger OBS-URL: https://build.opensuse.org/request/show/43461 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libgcrypt?expand=0&rev=18 --- libgcrypt-sparcv9.diff | 23 +++++++++++++++++++++++ libgcrypt.changes | 6 ++++++ libgcrypt.spec | 6 ++++-- 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 libgcrypt-sparcv9.diff diff --git a/libgcrypt-sparcv9.diff b/libgcrypt-sparcv9.diff new file mode 100644 index 0000000..3f330f0 --- /dev/null +++ b/libgcrypt-sparcv9.diff @@ -0,0 +1,23 @@ +Avoid link-time error + +../src/.libs/libgcrypt.so: undefined reference to `__udiv_qrnnd' + +by choosing v8-like insns for 32-bit v9 mode too. + +--- + mpi/longlong.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: libgcrypt-1.4.4/mpi/longlong.h +=================================================================== +--- libgcrypt-1.4.4.orig/mpi/longlong.h ++++ libgcrypt-1.4.4/mpi/longlong.h +@@ -1133,7 +1133,7 @@ extern USItype __udiv_qrnnd (); + "rJ" ((USItype)(al)), \ + "rI" ((USItype)(bl)) \ + __CLOBBER_CC) +-#if defined (__sparc_v8__) ++#if defined (__sparc_v8__) || defined(__sparc_v9__) + /* Don't match immediate range because, 1) it is not often useful, + 2) the 'I' flag thinks of the range as a 13 bit signed interval, + while we want to match a 13 bit interval, sign extended to 32 bits, diff --git a/libgcrypt.changes b/libgcrypt.changes index d2be824..36af772 100644 --- a/libgcrypt.changes +++ b/libgcrypt.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Jul 4 19:07:16 UTC 2010 - jengelh@medozas.de + +- add missing definition of udiv_qrnnd for sparcv9:32 +- use %_smp_mflags + ------------------------------------------------------------------- Sat Dec 19 12:58:20 CET 2009 - jengelh@medozas.de diff --git a/libgcrypt.spec b/libgcrypt.spec index c01f578..4718e18 100644 --- a/libgcrypt.spec +++ b/libgcrypt.spec @@ -22,7 +22,7 @@ Name: libgcrypt BuildRequires: libgpg-error-devel Url: http://www.gnu.org/directory/Security/libgcrypt.html Version: 1.4.4 -Release: 2 +Release: 3 Summary: The GNU Crypto Library License: GPLv2+ ; LGPLv2.1+ Group: Development/Libraries/C and C++ @@ -33,6 +33,7 @@ Patch0: %name-ppc64.patch Patch1: libgcrypt-strict-aliasing.patch Patch2: libgcrypt-1.4.4-mpicheck.patch Patch3: libgcrypt-1.4.1-rijndael_no_strict_aliasing.patch +Patch4: libgcrypt-sparcv9.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -120,6 +121,7 @@ Authors: %patch1 %patch2 %patch3 -p1 +%patch4 -p1 %build # define ciphers to build @@ -138,7 +140,7 @@ autoreconf -fi --enable-ciphers="$ENABLE_CIPHER" \ --enable-pubkey-ciphers="$ENABLE_PUBKEY" \ --enable-digests="$ENABLE_DIGEST" -%{__make} %{?jobs:-j%jobs} +%{__make} %{?_smp_mflags} %check # Nice idea. however this uses /dev/random, which hangs