On Wed, Sep 27, 2023 at 08:38:47AM +0200, Krzesimir Nowak wrote: > CRC selftests running on a build host were useful long time ago, when > CRC support was added to the on-disk support. Now it's purpose is > replaced by fstests. Also mkfs.xfs and xfs_repair have their own > selftests. > > On top of that, it fails to build when crosscompiling and would be > useless anyway. Nit: It doesn't fail if the crosscompile host itself has liburcu installed. > Signed-off-by: Krzesimir Nowak <knowak@xxxxxxxxxxxxx> Nits aside, this is a good simplification of the build process, so: Reviewed-by: Darrick J. Wong <djwong@xxxxxxxxxx> --D > --- > libfrog/Makefile | 14 ++------------ > libfrog/crc32.c | 21 --------------------- > 2 files changed, 2 insertions(+), 33 deletions(-) > > diff --git a/libfrog/Makefile b/libfrog/Makefile > index f292afe3..8cde97d4 100644 > --- a/libfrog/Makefile > +++ b/libfrog/Makefile > @@ -57,9 +57,9 @@ ifeq ($(HAVE_GETMNTENT),yes) > LCFLAGS += -DHAVE_GETMNTENT > endif > > -LDIRT = gen_crc32table crc32table.h crc32selftest > +LDIRT = gen_crc32table crc32table.h > > -default: crc32selftest ltdepend $(LTLIBRARY) > +default: ltdepend $(LTLIBRARY) > > crc32table.h: gen_crc32table.c crc32defs.h > @echo " [CC] gen_crc32table" > @@ -67,16 +67,6 @@ crc32table.h: gen_crc32table.c crc32defs.h > @echo " [GENERATE] $@" > $(Q) ./gen_crc32table > crc32table.h > > -# The selftest binary will return an error if it fails. This is made a > -# dependency of the build process so that we refuse to build the tools on broken > -# systems/architectures. Hence we make sure that xfsprogs will never use a > -# busted CRC calculation at build time and hence avoid putting bad CRCs down on > -# disk. > -crc32selftest: gen_crc32table.c crc32table.h crc32.c crc32defs.h randbytes.c > - @echo " [TEST] CRC32" > - $(Q) $(BUILD_CC) $(BUILD_CFLAGS) -D CRC32_SELFTEST=1 randbytes.c crc32.c -o $@ > - $(Q) ./$@ > - > include $(BUILDRULES) > > install install-dev: default > diff --git a/libfrog/crc32.c b/libfrog/crc32.c > index 2499615d..d07e5371 100644 > --- a/libfrog/crc32.c > +++ b/libfrog/crc32.c > @@ -186,24 +186,3 @@ u32 __pure crc32c_le(u32 crc, unsigned char const *p, size_t len) > (const u32 (*)[256])crc32ctable_le, CRC32C_POLY_LE); > } > #endif > - > - > -#ifdef CRC32_SELFTEST > -# include "crc32cselftest.h" > - > -/* > - * make sure we always return 0 for a successful test run, and non-zero for a > - * failed run. The build infrastructure is looking for this information to > - * determine whether to allow the build to proceed. > - */ > -int main(int argc, char **argv) > -{ > - int errors; > - > - printf("CRC_LE_BITS = %d\n", CRC_LE_BITS); > - > - errors = crc32c_test(0); > - > - return errors != 0; > -} > -#endif /* CRC32_SELFTEST */ > -- > 2.25.1 >