bash and dash require for escape sequence to use 'echo -e' or printf
(but working on zsh). Choosing printf as it's implementation is IMHO
more portable than echo implementations.
dash also require to use \033[0; as escape sequence instead of \e[0;

NOTE: \e[0; kept in lib/color.c as it's not problematic for C code
(working when run ip on various shells).

Fixes: 7e2f71b4 ("testsuite: colorize test result output")

Signed-off-by: Petr Vorel <pvo...@suse.cz>
---
 testsuite/Makefile | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/testsuite/Makefile b/testsuite/Makefile
index 9b0f1c15..7f247bbc 100644
--- a/testsuite/Makefile
+++ b/testsuite/Makefile
@@ -85,11 +85,11 @@ endif
                TC="$$i/tc/tc" IP="$$i/ip/ip" SS=$$i/misc/ss DEV="$(DEV)" 
IPVER="$@" SNAME="$$i" \
                ERRF="$(RESULTS_DIR)/$@.$$o.err" $(PREFIX) tests/$@ > 
$(RESULTS_DIR)/$@.$$o.out; \
                if [ "$$?" = "127" ]; then \
-                       echo "\e[1;35mSKIPPED\e[0m"; \
+                       printf "\033[1;35mSKIPPED\033[0m\n"; \
                elif [ -e "$(RESULTS_DIR)/$@.$$o.err" ]; then \
-                       echo "\e[0;31mFAILED\e[0m"; \
+                       printf "\033[0;31mFAILED\033[0m\n"; \
                else \
-                       echo "\e[0;32mPASS\e[0m"; \
+                       printf "\033[0;32mPASS\033[0m\n"; \
                fi; \
                rm "$$TMP_ERR" "$$TMP_OUT"; \
                sudo dmesg > $(RESULTS_DIR)/$@.$$o.dmesg; \
-- 
2.19.2

Reply via email to