Control: tags -1 + pending On Thu, 2013-12-26 22:05:12 +0100, Roland Stigge wrote: > Confirmed that the patch fixes the issue on powerpcspe.
Hello Micah, Aurelien Jarno has found a solution to Debian bug #728254 and Dejan Latinovic pointed me at it. :-) https://bugs.debian.org/728254 My NMU debdiff for libscrypt_1-2.2 is below, at the end of this message. With the changes in the NMU debdiff, libscrypt builds successfully on mips, mipsel and amd64. Regards, Aníbal -- Aníbal Monsalve Salazar <[email protected]> debdiff libscrypt_1-2.1.dsc libscrypt_1-2.2.dsc diff -Nru libscrypt-1/debian/changelog libscrypt-1/debian/changelog --- libscrypt-1/debian/changelog 2013-12-26 00:48:21.000000000 +0000 +++ libscrypt-1/debian/changelog 2014-07-21 06:32:14.000000000 +0100 @@ -1,3 +1,13 @@ +libscrypt (1-2.2) unstable; urgency=medium + + * Non-maintainer upload. + * Fix FTBFS on big endian architecture. + Patch by Aurelien Jarno. + Add big-endian.patch. + Closes: #728254. + + -- Anibal Monsalve Salazar <[email protected]> Mon, 21 Jul 2014 06:32:03 +0100 + libscrypt (1-2.1) unstable; urgency=medium * Non-maintainer upload diff -Nru libscrypt-1/debian/patches/big-endian.patch libscrypt-1/debian/patches/big-endian.patch --- libscrypt-1/debian/patches/big-endian.patch 1970-01-01 01:00:00.000000000 +0100 +++ libscrypt-1/debian/patches/big-endian.patch 2014-07-21 06:26:54.000000000 +0100 @@ -0,0 +1,53 @@ +From: Aurelien Jarno <[email protected]> +Subject: libscrypt: FTBFS on big endian architecture +Date: Wed, 30 Oct 2013 00:09:08 +0100 + +Version: 1-2 +Severity: important +Tags: upstream patch +Justification: fails to build from source + +libscrypt fails to build from source on big endian architectures, due +to testsuite errors: + +| TEST EIGHT: Create an MCF format output +| TEST EIGHT: SUCCESSFUL, calculated mcf +| $s1$0e0801$U29kaXVtQ2hsb3JpZGU=$cCO9yzr9c0hGHAbNgf046/2o+7qQT44+qbVD9lRdofLVQylVYT8Pz2LUlwUkKpr55h6F3A1lHkDfzwF7RVdYhw== +| TEST NINE: Password verify on given MCF +| TEST NINE: FAILED, hash failed to calculate +| make[1]: *** [check] Error 1 + +This is due to code in modp_b64.c which is endianness dependent. A big +and a little endian version of the code are provided, but the selection +mechanism is supposed to be done by modifying the source code, which is +not really compatible with a Debian source package. This leads to the +little endian code to be always used. + +The patch below fixes the problem by getting the endianness from +<endian.h>. + +It has been tested on mips, powerpc and s390x. + +Index: libscrypt-1/modp_b64.c +=================================================================== +--- libscrypt-1.orig/modp_b64.c ++++ libscrypt-1/modp_b64.c +@@ -45,10 +45,14 @@ + #include "modp_b64.h" + + +-/* if on motoral, sun, ibm; uncomment this */ +-/* #define WORDS_BIGENDIAN 1 */ +-/* else for Intel, Amd; uncomment this */ +-/* #undef WORDS_BIGENDIAN */ ++#include <endian.h> ++#if __BYTE_ORDER == __BIG_ENDIAN ++# define WORDS_BIGENDIAN 1 ++#elif __BYTE_ORDER == __LITTLE_ENDIAN ++# undef WORDS_BIGENDIAN ++#else ++#error "Unknown endianess" ++#endif + + #include "modp_b64_data.h" + diff -Nru libscrypt-1/debian/patches/series libscrypt-1/debian/patches/series --- libscrypt-1/debian/patches/series 2013-07-04 14:30:49.000000000 +0100 +++ libscrypt-1/debian/patches/series 2014-07-21 06:24:55.000000000 +0100 @@ -1 +1,2 @@ fix_makefile +big-endian.patch
signature.asc
Description: Digital signature

