k_f 14/07/29 17:24:32 Added: libgcrypt-1.6.1-x32-compat.patch Log: Revbump to add patch to fix segfaults for x32 ABIs. Fixes bug #512762 (Portage version: 2.2.8-r1/cvs/Linux x86_64, RepoMan options: --force, signed Manifest commit with key 0xFC3B17DE05E136A0!)
Revision Changes Path 1.1 dev-libs/libgcrypt/files/libgcrypt-1.6.1-x32-compat.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libgcrypt/files/libgcrypt-1.6.1-x32-compat.patch?rev=1.1&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/libgcrypt/files/libgcrypt-1.6.1-x32-compat.patch?rev=1.1&content-type=text/plain Index: libgcrypt-1.6.1-x32-compat.patch =================================================================== diff -r 9dc4a391dd6d mpi/generic/mpi-asm-defs.h --- a/mpi/generic/mpi-asm-defs.h Tue Jul 29 16:44:47 2014 +0200 +++ b/mpi/generic/mpi-asm-defs.h Tue Jul 29 16:47:43 2014 +0200 @@ -1,7 +1,12 @@ -/* This file defines some basic constants for the MPI machinery. We - * need to define the types on a per-CPU basis, so it is done with - * this file here. */ +/* AMD64 compiled with x32 fails in assembly due to incorrect + * size of long detected. Using compiler information to detect + * this since it is no longer per-architecture + */ +#if defined(__GNUC__) && __GNUC__ >= 3 && defined(__x86_64__) && defined(__ILP32__) +#define BYTES_PER_MPI_LIMB 8 +#else #define BYTES_PER_MPI_LIMB (SIZEOF_UNSIGNED_LONG) +#endif
