2016-01-05 43 views
3

使用meson构建,是否可以测试我的项目中是否存在目录?在介子中可以测试项目中是否存在目录?

例如,我通常把验收测试,我旁边的单元测试的文件夹结构是这样的:

library/ 
     header.hp 
     src/ 
      lib.cpp 
     tests/ 
       acceptance_test/ 
       unit_test/ 

我并不总是有验收测试,我想,以避免有一个meson.build文件,如果没有必要的话。如果目录acceptance_test/存在,我宁愿有一个条件subdir('acceptance_test')

回答

4

纵观reference manual,我看不到任何直接的支持。

您可以使用run_command,做这样的事情

if run_command('[', '-d', dirname, ']').returncode() == 0 
    message('directory exists') 
endif 

但是,当然,具有跨平台不工作的缺点。

+0

我不认为'run_command'会起作用,因为这些命令并没有在生成配置时实际运行,它们是在事实发生后由忍者运行的。 – paxos1977

+1

我刚试过。当你运行meson命令时,它打印'目录存在',并且我在if条件下运行subdir也没有任何问题。 – rnickb

+0

@mickb我的评论是基于维基和单元测试案例所说的,我很感激你花时间去尝试一下。 – paxos1977

相关问题