2011-11-07 39 views
2

我试图在多个项目中使用不同的模块(包含独立的wscript文件),以便模块可以在一个地方开发,并且可以在很多地方检出。如何避免库中的多重检查?

我有一个项目的顶级WScript的是这样的:

def configure(cfg): 
    ... 
    cfg.recurse('a') 
    cfg.recurse('b') 
    ... 

而WScript的的模块从子目录 './a' 和 './b':

def configure(cfg): 
    ... 
    cfg.check_cxx(lib='z') 
    ... 

所以,有没有办法告诉waf只检查一次libz?

回答

0

不,没有内置的东西可以做到这一点。 我只是建议解决办法: - 让你知道会被check_cxx 如果“LIB_Z”不cfg.env定义的东西:cfg.check_cxx(...) - 如果cfg或者添加化妆check_cxx定义的东西 。 get_define(“HAVE_ZLIB”)不是无:cfg.check_cxx(lib ='z',define_name =“HAVE_ZLIB”)

我怀疑可以在check_cxx等方法中执行任何缓存,他们可以做很多事情并由关键字控制...