From ffd7c05aa72ee56b836903159540f9470aeef121 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Thu, 20 Apr 2023 12:31:16 -0400 Subject: [PATCH] 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 --- 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 8fae92ab977..14a22108805 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 57d7995d4fa..cc7904ac728 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