З документації GNU Make,
5.3.1 Choosing the Shell
------------------------
The program used as the shell is taken from the variable `SHELL'. If
this variable is not set in your makefile, the program `/bin/sh' is
used as the shell.
Так ставимо SHELL := /bin/bash
у верхній частині свого файлового файлу, і вам слід добре піти.
BTW: Ви також можете зробити це для однієї цілі, принаймні для GNU Make. Кожна ціль може мати власні змінні призначення, наприклад:
all: a b
a:
@echo "a is $$0"
b: SHELL:=/bin/bash # HERE: this is setting the shell for b only
b:
@echo "b is $$0"
Це надрукує:
a is /bin/sh
b is /bin/bash
Докладніше див. У розділі "Цільові змінні значення" в документації. Цей рядок може проходити в будь-якому місці Makefile, це не повинно бути безпосередньо перед ціллю.
/bin/sh: -c: line 0: syntax error near unexpected token
(''