Makefileのシェルをカスタマイズしたいが、問題が発生している。ここにMWEがあります。私はMakefile、MakefileでSHELLをカスタマイズする(SHELL = my_shell.shを設定する)
SHELL=./my_shell.sh
all: abc def
abc:
touch abc
def:
touch def
clean:
rm -f abc def
と簡単なカスタムスクリプトmy_shell.sh
を持っています。
#!/bin/bash
eval $*
私は必ずchmod +x my_shell.sh
を実行しました。その後、make
と入力したときにエラーが発生しました。
make[3]: Entering directory `<CONFIDENTIAL>'
touch abc
./my_shell.sh: line 2: eval: -c: invalid option
eval: usage: eval [arg ...]
make[3]: *** [abc] Error 2
make[3]: Leaving directory `<CONFIDENTIAL>`
私は-c
オプションを取り除くために苦労しています。 .SHELLFLAGS=''
の設定は機能していないようです。
あなたと@MadScientistの両方からソリューションは、私の小さな例のために働いたので、私は、私は正式に両方の答えを支持することができることを望みます。ありがとう! – landau
問題はない、私の答えは2倍upvoted、それは十分です。とにかくもう一方の答えは良いです。 –