私の Makefile が次のようになっているとします。
FILES = hello.py
PHONY: hi
hi:
-@for file in $(FILES); do \
(echo $$file; \
echo $(subst py,xml,$$file); \
echo $(subst py,xml,hello.py)); \
done
make が呼び出されると、次のように表示されます。
hello.py
hello.py
hello.xml
echo $(subst py,xml,$$file); の理由を教えてください。思い通りに動かない (hello.ph の代わりに hello.xml をエコーする)? また、この for ループ要素を変更する方法について何か提案があれば教えてください。