【问题标题】:cmake calling python script and verifycmake调用python脚本并验证
【发布时间】:2018-05-04 18:13:13
【问题描述】:

我有一个用于对源文件进行完整性检查的 python 脚本。我需要在编译源文件之前运行这个 python 脚本。如何在CMakeLists.txt 文件中写入以确保在编译 c 代码之前触发 python 脚本?以及如何验证 py 被执行?谢谢!

project/
├── CMakeLists.txt
├── sanitycheck.py
└── *.c source files

【问题讨论】:

  • 问题解决了吗?

标签: python c cmake


【解决方案1】:

你应该使用add_custom_targetadd_dependencies来让你的正常目标依赖它:

get_target_property(sources_to_check yourProject SOURCES)
add_custom_target(
    sanity_check
    COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/sanitycheck.py ${sources_to_check}
)
add_dependencies(yourTarget sanity_check)

这应该确保在编译yourTarget的源代码之前运行该命令。

【讨论】:

  • 更好的方法是从目标获取源(检查SOURCES目标属性和TARGET_PROPRTY生成器表达式)而不是使用file(GLOB) ...永远%)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-02
  • 1970-01-01
相关资源
最近更新 更多