pengutronix / genimage

tool to generate multiple filesystem and flash images from a tree
GNU General Public License v2.0
308 stars 110 forks source link

make check: FAIL: test/basic-images.test 7 - mke2fs #157

Closed Un1Gfn closed 3 years ago

Un1Gfn commented 3 years ago

https://github.com/pengutronix/genimage/archive/v14.tar.gz

tar xf v14.tar.gz

cd genimage-14

autoreconf --version

autoreconf (GNU Autoconf) 2.71
...
./autogen.sh ``` configure.ac:10: warning: The macro `AC_PROG_CC_STDC' is obsolete. configure.ac:10: You should run autoupdate. ./lib/autoconf/c.m4:1666: AC_PROG_CC_STDC is expanded from... configure.ac:10: the top level configure.ac:78: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body ./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from... ./lib/autoconf/general.m4:2894: _AC_LINK_IFELSE is expanded from... ./lib/autoconf/general.m4:2911: AC_LINK_IFELSE is expanded from... lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:699: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from... m4/attributes.m4:87: CC_CHECK_LDFLAGS is expanded from... configure.ac:78: the top level configure.ac:79: warning: AC_LANG_CONFTEST: no AC_LANG_SOURCE call detected in body ./lib/autoconf/lang.m4:199: AC_LANG_CONFTEST is expanded from... ./lib/autoconf/general.m4:2894: _AC_LINK_IFELSE is expanded from... ./lib/autoconf/general.m4:2911: AC_LINK_IFELSE is expanded from... lib/m4sugar/m4sh.m4:692: _AS_IF_ELSE is expanded from... lib/m4sugar/m4sh.m4:699: AS_IF is expanded from... ./lib/autoconf/general.m4:2249: AC_CACHE_VAL is expanded from... ./lib/autoconf/general.m4:2270: AC_CACHE_CHECK is expanded from... m4/attributes.m4:87: CC_CHECK_LDFLAGS is expanded from... configure.ac:79: the top level configure.ac:10: installing 'build-aux/compile' configure.ac:29: installing 'build-aux/config.guess' configure.ac:29: installing 'build-aux/config.sub' configure.ac:9: installing 'build-aux/install-sh' configure.ac:9: installing 'build-aux/missing' configure.ac:111: installing 'build-aux/tap-driver.sh' Makefile.am: installing 'build-aux/depcomp' ---------------------------------------------------------------- Initialized build system. For a common configuration please run: ---------------------------------------------------------------- ./configure CFLAGS='-g -O0' --prefix=/usr ```
./configure CFLAGS='-g -O0' --prefix=/usr ``` checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking how to create a pax tar archive... gnutar checking whether make supports the include directive... yes (GNU style) checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... gcc3 checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for wchar.h... yes checking for minix/config.h... no checking whether it is safe to define __EXTENSIONS__... yes checking whether _XOPEN_SOURCE should be defined... no checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking whether make supports nested variables... (cached) yes checking for memset... yes checking for setenv... yes checking for strdup... yes checking for strcasecmp... yes checking for strerror... yes checking for strstr... yes checking for strtoull... yes checking for inline... inline checking for error_at_line... yes checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for GNU libc compatible malloc... yes checking for size_t... yes checking for uint32_t... yes checking whether to enable debugging... no checking whether to hide internal symbols... yes checking if gcc supports -Wl,--as-needed flag... yes checking if gcc supports -Wl,--gc-sections flag... yes checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for CONFUSE... yes checking whether the compiler supports -fvisibility=hidden... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands genimage 14 ===== prefix: /usr compiler: gcc cflags: -g -O0 -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden ldflags: -Wl,--as-needed -Wl,--gc-sections debug: no hide symbols: yes libconfuse: -lconfuse ```
make V=1 ``` make --no-print-directory all-am gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-genimage.o -MD -MP -MF .deps/genimage-genimage.Tpo -c -o genimage-genimage.o `test -f 'genimage.c' || echo './'`genimage.c mv -f .deps/genimage-genimage.Tpo .deps/genimage-genimage.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-config.o -MD -MP -MF .deps/genimage-config.Tpo -c -o genimage-config.o `test -f 'config.c' || echo './'`config.c mv -f .deps/genimage-config.Tpo .deps/genimage-config.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-util.o -MD -MP -MF .deps/genimage-util.Tpo -c -o genimage-util.o `test -f 'util.c' || echo './'`util.c mv -f .deps/genimage-util.Tpo .deps/genimage-util.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-crc32.o -MD -MP -MF .deps/genimage-crc32.Tpo -c -o genimage-crc32.o `test -f 'crc32.c' || echo './'`crc32.c mv -f .deps/genimage-crc32.Tpo .deps/genimage-crc32.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-android-sparse.o -MD -MP -MF .deps/genimage-image-android-sparse.Tpo -c -o genimage-image-android-sparse.o `test -f 'image-android-sparse.c' || echo './'`image-android-sparse.c mv -f .deps/genimage-image-android-sparse.Tpo .deps/genimage-image-android-sparse.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-cpio.o -MD -MP -MF .deps/genimage-image-cpio.Tpo -c -o genimage-image-cpio.o `test -f 'image-cpio.c' || echo './'`image-cpio.c mv -f .deps/genimage-image-cpio.Tpo .deps/genimage-image-cpio.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-cramfs.o -MD -MP -MF .deps/genimage-image-cramfs.Tpo -c -o genimage-image-cramfs.o `test -f 'image-cramfs.c' || echo './'`image-cramfs.c mv -f .deps/genimage-image-cramfs.Tpo .deps/genimage-image-cramfs.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-ext2.o -MD -MP -MF .deps/genimage-image-ext2.Tpo -c -o genimage-image-ext2.o `test -f 'image-ext2.c' || echo './'`image-ext2.c mv -f .deps/genimage-image-ext2.Tpo .deps/genimage-image-ext2.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-file.o -MD -MP -MF .deps/genimage-image-file.Tpo -c -o genimage-image-file.o `test -f 'image-file.c' || echo './'`image-file.c mv -f .deps/genimage-image-file.Tpo .deps/genimage-image-file.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-fit.o -MD -MP -MF .deps/genimage-image-fit.Tpo -c -o genimage-image-fit.o `test -f 'image-fit.c' || echo './'`image-fit.c mv -f .deps/genimage-image-fit.Tpo .deps/genimage-image-fit.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-flash.o -MD -MP -MF .deps/genimage-image-flash.Tpo -c -o genimage-image-flash.o `test -f 'image-flash.c' || echo './'`image-flash.c mv -f .deps/genimage-image-flash.Tpo .deps/genimage-image-flash.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-hd.o -MD -MP -MF .deps/genimage-image-hd.Tpo -c -o genimage-image-hd.o `test -f 'image-hd.c' || echo './'`image-hd.c mv -f .deps/genimage-image-hd.Tpo .deps/genimage-image-hd.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-iso.o -MD -MP -MF .deps/genimage-image-iso.Tpo -c -o genimage-image-iso.o `test -f 'image-iso.c' || echo './'`image-iso.c mv -f .deps/genimage-image-iso.Tpo .deps/genimage-image-iso.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-jffs2.o -MD -MP -MF .deps/genimage-image-jffs2.Tpo -c -o genimage-image-jffs2.o `test -f 'image-jffs2.c' || echo './'`image-jffs2.c mv -f .deps/genimage-image-jffs2.Tpo .deps/genimage-image-jffs2.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-qemu.o -MD -MP -MF .deps/genimage-image-qemu.Tpo -c -o genimage-image-qemu.o `test -f 'image-qemu.c' || echo './'`image-qemu.c mv -f .deps/genimage-image-qemu.Tpo .deps/genimage-image-qemu.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-rauc.o -MD -MP -MF .deps/genimage-image-rauc.Tpo -c -o genimage-image-rauc.o `test -f 'image-rauc.c' || echo './'`image-rauc.c mv -f .deps/genimage-image-rauc.Tpo .deps/genimage-image-rauc.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-squashfs.o -MD -MP -MF .deps/genimage-image-squashfs.Tpo -c -o genimage-image-squashfs.o `test -f 'image-squashfs.c' || echo './'`image-squashfs.c mv -f .deps/genimage-image-squashfs.Tpo .deps/genimage-image-squashfs.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-tar.o -MD -MP -MF .deps/genimage-image-tar.Tpo -c -o genimage-image-tar.o `test -f 'image-tar.c' || echo './'`image-tar.c mv -f .deps/genimage-image-tar.Tpo .deps/genimage-image-tar.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-ubi.o -MD -MP -MF .deps/genimage-image-ubi.Tpo -c -o genimage-image-ubi.o `test -f 'image-ubi.c' || echo './'`image-ubi.c mv -f .deps/genimage-image-ubi.Tpo .deps/genimage-image-ubi.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-ubifs.o -MD -MP -MF .deps/genimage-image-ubifs.Tpo -c -o genimage-image-ubifs.o `test -f 'image-ubifs.c' || echo './'`image-ubifs.c mv -f .deps/genimage-image-ubifs.Tpo .deps/genimage-image-ubifs.Po gcc -DHAVE_CONFIG_H -I. -include ./config.h -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -MT genimage-image-vfat.o -MD -MP -MF .deps/genimage-image-vfat.Tpo -c -o genimage-image-vfat.o `test -f 'image-vfat.c' || echo './'`image-vfat.c mv -f .deps/genimage-image-vfat.Tpo .deps/genimage-image-vfat.Po gcc -pipe -Wall -Wextra -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wsign-compare -Wchar-subscripts -Wstrict-prototypes -Wshadow -Wformat-security -Wtype-limits -Wno-unused-parameter -ffunction-sections -fdata-sections -fvisibility=hidden -g -O0 -o genimage genimage-genimage.o genimage-config.o genimage-util.o genimage-crc32.o genimage-image-android-sparse.o genimage-image-cpio.o genimage-image-cramfs.o genimage-image-ext2.o genimage-image-file.o genimage-image-fit.o genimage-image-flash.o genimage-image-hd.o genimage-image-iso.o genimage-image-jffs2.o genimage-image-qemu.o genimage-image-rauc.o genimage-image-squashfs.o genimage-image-tar.o genimage-image-ubi.o genimage-image-ubifs.o genimage-image-vfat.o -lconfuse ```

mke2fs -V

mke2fs 1.46.2 (28-Feb-2021)
  Using EXT2FS Library version 1.46.2

make V=1 check

make --no-print-directory check-TESTS
PASS: test/basic-images.test 1 - cpio
SKIP: test/basic-images.test 2 # SKIP cramfs (missing mkcramfs)
SKIP: test/basic-images.test 3 # SKIP ext2 (missing genext2fs of genext2fs,e2fsck)
SKIP: test/basic-images.test 4 # SKIP ext2percent (missing genext2fs of genext2fs,e2fsck)
SKIP: test/basic-images.test 5 # SKIP ext3 (missing genext2fs of genext2fs,e2fsck)
SKIP: test/basic-images.test 6 # SKIP ext4 (missing genext2fs of genext2fs,e2fsck)
FAIL: test/basic-images.test 7 - mke2fs
PASS: test/basic-images.test 8 - flash
PASS: test/basic-images.test 9 - hdimage
PASS: test/basic-images.test 10 - hdimage2
PASS: test/basic-images.test 11 - hdimage4
PASS: test/basic-images.test 12 - hdimage5
PASS: test/basic-images.test 13 - iso
SKIP: test/basic-images.test 14 # SKIP jffs2 (missing mkfs_jffs2)
SKIP: test/basic-images.test 15 # SKIP qemu (missing qemu-img of dd,diff,qemu-img)
PASS: test/basic-images.test 16 - squashfs
PASS: test/basic-images.test 17 - tar
SKIP: test/basic-images.test 18 # SKIP ubifs (missing mkfs_ubifs)
SKIP: test/basic-images.test 19 # SKIP ubi (missing ubinize)
PASS: test/basic-images.test 20 - vfat
SKIP: test/basic-images.test 21 # SKIP fit (missing dtc,mkimage of mkimage,dtc)
SKIP: test/basic-images.test 22 # SKIP rauc (missing rauc)
SKIP: test/basic-images.test 23 # SKIP android-sparse (missing simg2img)
PASS: test/basic-images.test 24 - exec
PASS: test/basic-images.test 25 - exec-fail
ERROR: test/basic-images.test - exited with status 1
============================================================================
Testsuite summary for genimage 14
============================================================================
# TOTAL: 26
# PASS:  12
# SKIP:  12
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 1
============================================================================
See ./test-suite.log
Please report to oss-tools@pengutronix.de
============================================================================
make[2]: *** [Makefile:1148: test-suite.log] Error 1
make[1]: *** [Makefile:1256: check-TESTS] Error 2
make: *** [Makefile:1460: check-am] Error 2

test-suite.log

Un1Gfn commented 3 years ago

TL; DR - test failure w/ mke2fs?

Un1Gfn commented 3 years ago

Tried the following. FAIL: test/basic-images.test 7 - mke2fs remains.

michaelolbrich commented 3 years ago

The new dump2fs produces different output for the same filesystem. This should be fixed with #155.

Un1Gfn commented 3 years ago

So this is a bug in the test but not the app itself. It's ok to go ahead and make install. Is that correct?

michaelolbrich commented 3 years ago

So this is a bug in the test but not the app itself. It's ok to go ahead and make install. Is that correct?

Yes. I experimented a bit with old and new versions of e2fsprogs. As far as I can tell, the filesystem images are the same. It's just that tune2fs generates a different output for the same filesystem.

michaelolbrich commented 3 years ago

Fixed by #155.