|
f2fs-tools-1.8.0 fails to build with OSELAS.Toolchain-2018.12.0 due to
changes done in glibc-2.28 that moved 'major', 'minor' and 'makedev'.
The failure is this:
libf2fs.c: In function 'get_rootdev':
libf2fs.c:508:3: warning: implicit declaration of function 'major' [-Wimplicit-function-declaration]
major(sb.st_dev), minor(sb.st_dev));
^~~~~
libf2fs.c:508:21: warning: implicit declaration of function 'minor'; did you mean 'mknod'? [-Wimplicit-function-declaration]
major(sb.st_dev), minor(sb.st_dev));
^~~~~
mknod
libf2fs.c: In function 'get_device_info':
libf2fs.c:794:36: warning: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'size_t' {aka 'unsigned int'} [-Wformat=]
MSG(0, " %lu blocks per zone\n",
^~~~
CCLD libf2fs.la
make[3]: Leaving directory `/home/local/GRIDPOINT/jringle/git/linux-initramfs/platform-EC1K/build-target/f2fs-tools-1.8.0/lib'
Making all in mkfs
make[3]: Entering directory `/home/local/GRIDPOINT/jringle/git/linux-initramfs/platform-EC1K/build-target/f2fs-tools-1.8.0/mkfs'
CC f2fs_format_main.o
CC libf2fs_format_la-f2fs_format_utils.lo
CC libf2fs_format_la-f2fs_format.lo
CC f2fs_format.o
CC libf2fs_format_la-f2fs_format_main.lo
CC f2fs_format_utils.o
CCLD mkfs.f2fs
/opt/OSELAS.Toolchain-2018.12.0/arm-v5te-linux-gnueabi/gcc-8.2.1-glibc-2.28-binutils-2.31.1-kernel-4.19-sanitized/lib/gcc/arm-v5te-linux-gnueabi/8.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ../lib/.libs/libf2fs.so: undefined reference to `minor'
/opt/OSELAS.Toolchain-2018.12.0/arm-v5te-linux-gnueabi/gcc-8.2.1-glibc-2.28-binutils-2.31.1-kernel-4.19-sanitized/lib/gcc/arm-v5te-linux-gnueabi/8.2.1/../../../../arm-v5te-linux-gnueabi/bin/ld: ../lib/.libs/libf2fs.so: undefined reference to `major'
collect2: error: ld returned 1 exit status
Upstream commit fixes the issue:
https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/commit/?id=191a60fb4b3a761aea0877d02c0ee8d86baf1e93
Signed-off-by: Jon Ringle <jringle@gridpoint.com>
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
|