[Buildroot] [PATCH v3 1/1] package/e2fsprogs: disable e2scrub conditionally

Tian Yuanhao tianyuanhao at aliyun.com
Fri Apr 30 09:16:27 UTC 2021


e2scrub_all depends on coreutils' readlink. If you use busybox's
readlink, you will see the following error:

  readlink: invalid option -- 'e'

Disable e2scrub if its dependencies are not met.

Signed-off-by: Tian Yuanhao <tianyuanhao at aliyun.com>
Cc: Yann E. MORIN <yann.morin.1998 at free.fr>
Cc: James Hilliard <james.hilliard1 at gmail.com>

---
Changes v2 -> v3:
  - check dependencies (suggested by James)

Changes v1 -> v2:
  - use make flags instead of configure options (suggested by Yann)
---
 package/e2fsprogs/e2fsprogs.mk | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/package/e2fsprogs/e2fsprogs.mk b/package/e2fsprogs/e2fsprogs.mk
index 4420d16aff..db4b849143 100644
--- a/package/e2fsprogs/e2fsprogs.mk
+++ b/package/e2fsprogs/e2fsprogs.mk
@@ -74,6 +74,16 @@ E2FSPROGS_INSTALL_STAGING_OPTS = \
 	DESTDIR=$(STAGING_DIR) \
 	install-libs
 
+# e2scrub support needs bash, coreutils, lvm2 and util-linux
+ifneq ($(BR2_PACKAGE_BASH)$(BR2_PACKAGE_COREUTILS)$(BR2_PACKAGE_LVM2)$(BR2_PACKAGE_UTIL_LINUX),yyyy)
+E2FSPROGS_MAKE_OPTS += E2SCRUB_DIR=
+endif
+
+E2FSPROGS_INSTALL_TARGET_OPTS = \
+	$(E2FSPROGS_MAKE_OPTS) \
+	DESTDIR=$(TARGET_DIR) \
+	install
+
 # Package does not build in parallel due to improper make rules
 define HOST_E2FSPROGS_INSTALL_CMDS
 	$(HOST_MAKE_ENV) $(MAKE1) -C $(@D) install install-libs
-- 
2.25.1



More information about the buildroot mailing list