[openwrt/openwrt] prereq-build: add check for true and false

LEDE Commits lede-commits at lists.infradead.org
Thu May 4 11:07:16 PDT 2023


ansuel pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/ffd7c05aa72ee56b836903159540f9470aeef121

commit ffd7c05aa72ee56b836903159540f9470aeef121
Author: Michael Pratt <mcpratt at pm.me>
AuthorDate: Thu Apr 20 12:31:16 2023 -0400

    prereq-build: add check for true and false
    
    Some uses cases, like with autotools, need a path for 'true'
    if we use them to force something to skip.
    
    This will work by default on Linux hosts,
    and require MacOS hosts to get coreutils,
    which is currently installed in the CI
    for 'macos-latest' host.
    
    In the future, prereq stage can be reworked
    to search for the actual binary
    instead of relying on env.
    
    Signed-off-by: Michael Pratt <mcpratt at pm.me>
---
 include/prereq-build.mk | 7 +++++++
 rules.mk                | 8 ++++++++
 2 files changed, 15 insertions(+)

diff --git a/include/prereq-build.mk b/include/prereq-build.mk
index 8fae92ab97..14a2210880 100644
--- a/include/prereq-build.mk
+++ b/include/prereq-build.mk
@@ -8,6 +8,13 @@ include $(INCLUDE_DIR)/prereq.mk
 SHELL:=sh
 PKG_NAME:=Build dependency
 
+$(eval $(call TestHostCommand,true, \
+	Please install GNU 'coreutils', \
+	$(TRUE)))
+
+$(eval $(call TestHostCommand,false, \
+	Please install GNU 'coreutils', \
+	$(FALSE); [ $$$$$$$$? = 1 ] && $(TRUE)))
 
 # Required for the toolchain
 $(eval $(call TestHostCommand,working-make, \
diff --git a/rules.mk b/rules.mk
index 57d7995d4f..cc7904ac72 100644
--- a/rules.mk
+++ b/rules.mk
@@ -268,6 +268,14 @@ FIND:=find
 PATCH:=patch
 PYTHON:=python3
 
+ifeq ($(HOST_OS),Darwin)
+  TRUE:=/usr/bin/env gtrue
+  FALSE:=/usr/bin/env gfalse
+else
+  TRUE:=/usr/bin/env true
+  FALSE:=/usr/bin/env false
+endif
+
 INSTALL_BIN:=install -m0755
 INSTALL_SUID:=install -m4755
 INSTALL_DIR:=install -d -m0755




More information about the lede-commits mailing list