我想写一个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中的命令错误中止?