【问题标题】:cmake - reference build type in custom target command?cmake - 自定义目标命令中的参考构建类型?
【发布时间】:2011-11-27 20:37:01
【问题描述】:

在 cmake 中,有没有办法在自定义目标的命令中引用构建类型?我需要我的项目启动另一个构建,但它的命令行需要对其进行“调试”或“发布”,以便告诉该构建使用与构建主项目相同的构建类型。

据我所知,Xcode 下自定义目标的命令被填充到一个 makefile 中,并且该 makefile 无法知道它是在进行调试还是发布构建。

在 Visual Studio 中,自定义目标的命令被放入自定义构建步骤中,因此我可以使用 $(Configuration) 来获取它。

【问题讨论】:

    标签: cmake


    【解决方案1】:

    从 cmake 2.8.3 开始,您可以在自定义命令中使用 $<CONFIGURATION> 来引用活动配置:

    add_custom_target(mytarget
      ${PYTHON_EXECUTABLE} "${CMAKE_CURRENT_SOURCE_DIR}/some.py" --configuration $<CONFIGURATION> )
    

    我没有在 XCode 中使用过它,但它在 Visual Studio 和 make 中运行良好。

    【讨论】:

      【解决方案2】:

      我可以建议的是根据 CMAKE_BUILD_TYPE 设置一些变量并将其作为参数传递给 add_custom_command。

      另一种方法是在if(CMAKE_INSTALL_PREFIX STREQUAL "...") 子句中创建自定义命令。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多