【问题标题】:CMake: how do i depend on output from a custom target?CMake:我如何依赖自定义目标的输出?
【发布时间】:2011-05-03 06:45:44
【问题描述】:

我无法修改的传统制作过程会生成一个目标,我必须对其进行一些后期处理。

我使用add_custom_target 来强制makefile 始终运行。 我使用add_custom_command 进行后处理步骤。

问题是 add_custom_target 就 CMake 而言无法产生输出。那么,如何为后处理步骤设置依赖项?我不想运行这些步骤,除非外部 make 实际更新了它的目标。

add_custom_command 不能使用 add_custom_target 的名称作为 DEPENDS。我试过了,它假设 add_custom_target 名称只是一个文件,找不到它。

感谢您的帮助。 干杯!

【问题讨论】:

    标签: cmake


    【解决方案1】:

    使 add_custom_command 调用依赖于在“外部 make 实际更新其目标”时更改的 文件。只有当它的 DEPENDS 之一比它的 OUTPUT 更新时,自定义命令才会运行。

    当 CMake add_custom_command 调用是完整路径文件名引用时,DEPENDS 最适用于旧版本的 CMake。更新版本的 CMake 应该可以使用文件名或 CMake 目标名称引用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-10-28
      • 1970-01-01
      • 2012-04-03
      • 2021-03-26
      • 2011-04-14
      • 2016-07-01
      • 1970-01-01
      相关资源
      最近更新 更多