【发布时间】:2011-09-04 18:25:08
【问题描述】:
使目标依赖于要在其配方中创建的文件的最简单方法是什么?我可以使用一些 shell 魔法:
target:
[ -e file ] || touch file
但理想情况下,我想用 make 完成测试。可能吗?仅当文件尚不存在时,目标命令才应运行。
【问题讨论】:
使目标依赖于要在其配方中创建的文件的最简单方法是什么?我可以使用一些 shell 魔法:
target:
[ -e file ] || touch file
但理想情况下,我想用 make 完成测试。可能吗?仅当文件尚不存在时,目标命令才应运行。
【问题讨论】:
如果您提供有关您想要完成的任务的更多信息,我们或许可以为您提供更好的帮助。根据您目前所说的,听起来普通的旧 make 先决条件应该可以为您解决问题:
target: file
touch target
file:
touch file
如果file不存在,则创建;如果是这样,file 的命令将不会被执行。
【讨论】:
target: file(\n)(\t)touch file,但没有成功。我认为将文件名作为先决条件就足够了——应该回到一些基础。