GNU मेक डॉक्यूमेंटेशन से,
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 मेक के लिए। प्रत्येक लक्ष्य के अपने चर कार्य हो सकते हैं, जैसे:
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
अधिक विवरण के लिए प्रलेखन में "लक्ष्य-विशिष्ट चर मान" देखें। वह लाइन मेकफाइल में कहीं भी जा सकती है, लक्ष्य से ठीक पहले उसका होना जरूरी नहीं है।
/bin/sh: -c: line 0: syntax error near unexpected token
('`