package/xfsprogs: disable crc32selftest

xfsprogs generates a crc32 table, and wants to test it. So it builds a
native crc32selftest binary. So far, so good; except the host may not
have the required headers (uuid/uuid.h), and probably libs (like
libuuid).

And anyway, testing the table on the host is flawed, as it does not mean
it would be correct on the target (due to differences in bitness,
endianness, alignment...).

So we just disable the crc32selftest for Buildroot.

Fixes:
    http://autobuild.buildroot.org/results/5d0/5d0ed24b4d368fed100bc3c4959520ebaa48e693/
    http://autobuild.buildroot.org/results/aef/aef223ee2646599eaab7c82f63ff5f19569d69a5/
    http://autobuild.buildroot.org/results/fb6/fb6679f3b1473169702c303ee5060abe7559b0b3/
    ....

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Yann E. MORIN 2015-12-07 19:00:36 +01:00 committed by Peter Korsgaard
parent e739dd5a11
commit dfe6005daa

View File

@ -0,0 +1,32 @@
libxfs: do not try to run the crc32selftest
Even though the crc32selftest is natively compiled (because it is to be
executed), it fails in cross-compilation as the host may lack the
required headers, like uuid/uuid.h (e.g. in a minimal environment).
Moreover, running the crc32selftest natively is completely wrong,
because it passing on the host does not mean it would still pass n the
target (because endianness or bitness or alignment differences).
So, just disable running the crc32selftest altogether.
Note that there's a remaining bug-in-hiding, because the crc32 table
generator is natively built, but with the target CFLAGS.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff -durN xfsprogs-4.3.0.orig/libxfs/Makefile xfsprogs-4.3.0/libxfs/Makefile
--- xfsprogs-4.3.0.orig/libxfs/Makefile 2015-09-22 03:42:41.000000000 +0200
+++ xfsprogs-4.3.0/libxfs/Makefile 2015-12-07 18:45:27.190082913 +0100
@@ -105,9 +105,9 @@
# don't try linking xfs_repair with a debug libxfs.
DEBUG = -DNDEBUG
-LDIRT = gen_crc32table crc32table.h crc32selftest
+LDIRT = gen_crc32table crc32table.h
-default: crc32selftest ltdepend $(LTLIBRARY)
+default: ltdepend $(LTLIBRARY)
crc32table.h: gen_crc32table.c
@echo " [CC] gen_crc32table"