diff --git a/src/builtins.mk b/src/builtins.mk index b9307fb..c810361 100644 --- a/src/builtins.mk +++ b/src/builtins.mk @@ -27,9 +27,9 @@ tconfirm = $(call py,confirm_py,$(1)) .PHONY: h help _help _print-ansi _update-task.mk TASK_MAKEFILE_LIST := $(filter-out $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)),$(MAKEFILE_LIST)) export MAKEFILE_LIST MAKE TASK_MAKEFILE_LIST -ifndef INHERIT_SHELL -SHELL := $(shell which bash) -endif +# ifndef INHERIT_SHELL +# SHELL := $(shell which bash) +# endif ifdef PHONIFY $(shell $(call py-verbose,phonify_py)) endif diff --git a/src/runners.mk b/src/runners.mk index a7d2f7a..dafef23 100644 --- a/src/runners.mk +++ b/src/runners.mk @@ -1,5 +1,13 @@ # ---- [python/bash script runner] ---- # ###-- modified from https://unix.stackexchange.com/a/223093 -### +###- +# possible posix process substitions solution: +# https://unix.stackexchange.com/a/639752 +# -### +SHELL_CHECK ?= $(shell /bin/sh --version | grep 'bash|zsh|ksh') +ifndef SHELL_CHECK +$(error task.mk requires a process substition compatible shell) +endif define _newline diff --git a/task.mk b/task.mk index 168a271..a389da9 100644 --- a/task.mk +++ b/task.mk @@ -1,7 +1,7 @@ # }> [github.com/daylinmorgan/task.mk] <{ # # Copyright (c) 2022 Daylin Morgan # MIT License -TASKMK_VERSION ?= v23.1.1-6-ga980d51-dev +TASKMK_VERSION ?= v23.1.1-7-gb411303-dev # task.mk should be included at the bottom of your Makefile with `-include .task.mk` # See below for the standard configuration options that should be set prior to including this file. # You can update your .task.mk with `make _update-task.mk` @@ -389,6 +389,11 @@ def parseargs(argstring): return parser.parse_args(argstring.split()) endef # ---- [python/bash script runner] ---- # + +SHELL_CHECK ?= $(shell /bin/sh --version | grep 'bash|zsh|ksh') +ifndef SHELL_CHECK +$(error task.mk requires a process substition compatible shell) +endif define _newline @@ -440,9 +445,9 @@ tconfirm = $(call py,confirm_py,$(1)) .PHONY: h help _help _print-ansi _update-task.mk TASK_MAKEFILE_LIST := $(filter-out $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)),$(MAKEFILE_LIST)) export MAKEFILE_LIST MAKE TASK_MAKEFILE_LIST -ifndef INHERIT_SHELL -SHELL := $(shell which bash) -endif +# ifndef INHERIT_SHELL +# SHELL := $(shell which bash) +# endif ifdef PHONIFY $(shell $(call py-verbose,phonify_py)) endif