[Buildroot] [PATCH 0/1] mtd-utils-2.1.2: ubihealthd depends on ubifs support
Markus Mayer
mmayer at broadcom.com
Wed Jun 9 23:48:18 UTC 2021
Hi all,
With the enabling of ubihealthd, we are experiencing a new build
failure.
https://git.buildroot.net/buildroot/commit/?id=77a0167155c3
Here is what is happening:
>>> mtd 2.1.2 Installing to target
[...]
/usr/bin/install -D -m 0755
/home/mmayer/Development/br-current/output/arm64/build/mtd-2.1.2/ubiformat
/home/mmayer/Development/br-current/output/arm64/target/usr/sbin/ubiformat
/usr/bin/install -D -m 0755
/home/mmayer/Development/br-current/output/arm64/build/mtd-2.1.2/ubihealthd
/home/mmayer/Development/br-current/output/arm64/target/usr/sbin/ubihealthd
/usr/bin/install: cannot stat
'/home/mmayer/Development/br-current/output/arm64/build/mtd-2.1.2/ubihealthd':
No such file or directory
make[1]: *** [package/pkg-generic.mk:341:
/home/mmayer/Development/br-current/output/arm64/build/mtd-2.1.2/.stamp_target_installed]
Error 1
make: *** [Makefile:27: _all] Error 2
The problem is the following:
1. We are building with BR2_PACKAGE_MTD_UBIFS_UTILS unset and,
therefore, with --without-ubifs.
2. Building without ubifs leads to "configure" setting its internal
variable need_getrandom="no", which trickles down through the autoconf
environment.
3. Without getrandom, ubihealthd is not being built
>From mtd-2.1.2/ubi-utils/Makemodule.am:
49 if WITH_GETRANDOM
50 UBI_BINS += ubihealthd
51 endif
The mtd-utils package is consistent within itself. Everything works as
long as "make install" is being called, because it won't try to install
ubihealthd, unless it also built it. However, Buildroot has its own
install routine. It thinks ubihealthd is enabled and has been built.
Therefore, it tries to install it -- which doesn't work if
BR2_PACKAGE_MTD_UBIFS_UTILS is unset.
This patch mirrors the --with-ubifs -> ubihealthd dependency within
Buildroot. In my tests, it worked either way. It will built and install
ubihealthd (when BR2_PACKAGE_MTD_MKFSUBIFS=y) or it will skip building
and installing ubihealthd (when BR2_PACKAGE_MTD_MKFSUBIFS is unset).
Thanks,
-Markus
Markus Mayer (1):
mtd-utils-2.1.2: ubihealthd depends on ubifs support
package/mtd/Config.in | 1 +
1 file changed, 1 insertion(+)
--
2.25.1
More information about the buildroot
mailing list