我是Makefiles的新手。我不确定make clean
的标准语义。以下哪项是正确的?
make clean
应删除从存储库中其他文件构建的所有文件。例如:
clean:
@rm -rf dist
make clean
应删除从存储库中的其他文件构建的所有文件,或由make setup
添加的文件。例如:
clean:
@rm -rf dist
@rm -rf node_modules # remove npm packages installed by `setup`
从另一个文件构建一个文件通常不需要Internet连接,但通常会获取第三方依赖项。这表明make clean
不应删除make setup
安装的第三方依赖项。但是,如果一个人一直在修改第三方依赖关系的来源,那么可能正在消除这些变化正是人们期望make clean
做的事情。
换句话说,应make clean
“撤消”make
,还是撤消make setup && make
?
答案 0 :(得分:1)
一般情况下,由您make clean
完成的取决于您。您引用的规则只是约定。
但是,基本上有理由调用make clean
:
关于第一种情况,根据“一切都已完成”的语义,你的两种选择都是合理的。但是,我更希望make uninstall
重做(一切)安装。