From 4d5a91b8af06604f97cae22a7db381d4deb4b1ec Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 12 Mar 2026 08:30:30 +0100 Subject: [PATCH] BUILD: makefile: fix range build without test command In 3.3, the "make range" target adopted a test command via the TEST_CMD variable, with commit 90b70b61b1 ("BUILD: makefile: implement support for running a command in range"). However now it breaks the script when TEST_CMD is not set due to the shell expansion leaving two '||' operators side by side. Let's fix this by passing the contents of the makefile variable in positional arguments before executing them. --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index d4d9a57f4..aae8f863e 100644 --- a/Makefile +++ b/Makefile @@ -1332,7 +1332,8 @@ range: echo "[ $$index/$$count ] $$commit #############################"; \ git checkout -q $$commit || die 1; \ $(MAKE) all || die 1; \ - [ -z "$(TEST_CMD)" ] || $(TEST_CMD) || die 1; \ + set -- $(TEST_CMD); \ + [ "$$#" -eq 0 ] || "$$@" || die 1; \ index=$$((index + 1)); \ done; \ echo;echo "Done! $${count} commit(s) built successfully for RANGE $${RANGE}" ; \