Cal*_*leb 6 dependencies makefile gnu-make
当且仅当文件已经存在时,我想引用依赖项的时间戳.我有这样的模式规则:
%.pdf: %.sil
sile $< -o $@
Run Code Online (Sandbox Code Playgroud)
这在正常情况下工作得很好,但.sil文件对同名的lua文件进行外部引用(如果存在).我如何知道这一点,以便它检查时间戳并重新生成PDF,如果lua文件更新,但如果文件根本不存在则忽略依赖关系?
这个:
%.pdf: %.sil %.lua
sile $< -o $@
Run Code Online (Sandbox Code Playgroud)
...仅适用于文件存在的情况,如果不存在则会导致错误.
使用足够新版本的GNU make,您可以使用:
.SECONDEXPANSION:
%.pdf: %.sil $$(wildcard $$*.lua)
sile $< -o $@
Run Code Online (Sandbox Code Playgroud)
有关SECONDEXPANSION目标和通配符功能,请参见手册部分.
| 归档时间: |
|
| 查看次数: |
1010 次 |
| 最近记录: |