【发布时间】:2012-03-15 19:03:53
【问题描述】:
我厌倦了在 make 中查找魔法符号并决定尝试waf。
我正在尝试使用 calibre 制作电子书,我想创建一个 wscript,它接收一个文件,运行一个包含该文件的一些参数的程序,并产生一个输出。仅当输入文件比输出文件新时才应构建 Waf。
在make中,我会这样写一个makefile:
%.epub: %.recipe
ebook-convert $ .epub --test -vv --debug-pipeline debug
其中 % 是文件基名的魔术符号,$ 是输出文件名 (basename.epub) 的符号。
我可以打电话给make soverflow.epub,它会在 soverflow.recipe 上运行 ebook-convert。如果 .recipe 自上次构建以来没有更改,则它不会做任何事情。
如何在 waf 中做类似的事情?
(为什么是 waf?因为它使用一种我已经知道的真实语言。如果这在 scons 中真的很容易使用,那也是一个很好的答案。)
【问题讨论】:
-
我放弃了 waf,发现在scons 中很容易做到。该文档有一个关于Writing Your Own Builders 的部分。见more details here。
标签: build build-automation waf calibre