Từ tài liệu 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.
Vì vậy, đặt SHELL := /bin/bash
ở đầu trang điểm của bạn, và bạn nên đi.
BTW: Bạn cũng có thể làm điều này cho một mục tiêu, ít nhất là cho GNU Make. Mỗi mục tiêu có thể có các bài tập biến riêng, như thế này:
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"
Điều đó sẽ in:
a is /bin/sh
b is /bin/bash
Xem "Giá trị biến đổi theo mục tiêu cụ thể" trong tài liệu để biết thêm chi tiết. Dòng đó có thể đi bất cứ nơi nào trong Makefile, nó không phải ở ngay trước mục tiêu.
/bin/sh: -c: line 0: syntax error near unexpected token
('`