我想寫一個makefile來打包一些PHP腳本。我也想它來檢查語法錯誤(使用內置的PHP皮棉工具)建立最終的zip文件之前,以防止打滑任何意外的錯誤。如何中止makefile中的shell命令錯誤?
到目前爲止,我有
all: dist
clean:
rm -f output.zip
dist: clean
for i in `find . -name "*.php"`; do php -l $$i; done
zip -r output.zip src -x "*/.*" "*/tests*"
這的作品,但如果有一個PHP錯誤,我希望它打破並不繼續構建zip文件(出於顯而易見的原因)。目前他們可能會迷失在成功的lint運行和zip文件的輸出頁面中。
我對此有何看法?我應該使用make循環而不是shell循環嗎?如何讓shell中的命令錯誤中止?