Source: libbde Version: 20190102-1.1 Severity: normal Tags: ftbfs patch upstream User: debian-ri...@lists.debian.org Usertags: riscv64
Hi, libbde fails to build on riscv64: https://buildd.debian.org/status/fetch.php?pkg=libbde&arch=riscv64&ver=20190102-1.1&stamp=1595831915&raw=0 This is due to fundamentally broken tests assuming that memcpy and memset can fail returning NULL, and interposing these libc functions in the tests with functions that sometimes return NULL. This tests should be simply removed as they do not make sense. See bug #978433 for more details as the same code is basically replicated in dozen of packages. A simpler way to fix the issue for riscv64 is to disable all memory tests on this architecture, as it is already done for a long list of cases. This is what the patch below does: --- libbde-20190102/debian/patches/01-disable-memory-tests-on-riscv64.patch 1970-01-01 01:00:00.000000000 +0100 +++ libbde-20190102/debian/patches/01-disable-memory-tests-on-riscv64.patch 2020-12-27 13:58:56.000000000 +0100 @@ -0,0 +1,11 @@ +--- libbde-20190102.orig/tests/bde_test_memory.h ++++ libbde-20190102/tests/bde_test_memory.h +@@ -28,7 +28,7 @@ + extern "C" { + #endif + +-#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( LIBBDE_DLL_IMPORT ) && !defined( __arm__ ) && !defined( __clang__ ) && !defined( __CYGWIN__ ) && !defined( __hppa__ ) && !defined( __mips__ ) && !defined( __sparc__ ) && !defined( HAVE_ASAN ) ++#if defined( HAVE_GNU_DL_DLSYM ) && defined( __GNUC__ ) && !defined( LIBBDE_DLL_IMPORT ) && !defined( __arm__ ) && !defined( __clang__ ) && !defined( __CYGWIN__ ) && !defined( __hppa__ ) && !defined( __mips__ ) && !defined( __sparc__ ) && !defined( __riscv ) && !defined( HAVE_ASAN ) + #define HAVE_BDE_TEST_MEMORY 1 + #endif + --- libbde-20190102/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ libbde-20190102/debian/patches/series 2020-12-27 13:58:56.000000000 +0100 @@ -0,0 +1 @@ +01-disable-memory-tests-on-riscv64.patch Regards, Aurelien