【发布时间】:2014-12-08 15:03:34
【问题描述】:
我有许多目标的 CMakeLists.txt,并且目标定义了特定于配置的后缀。另外我想知道程序中可执行文件的名称。
在 MSVC++ 下我通过定义来做到这一点
add_definitions("-DTARGET_FILE_NAME=\"$(TargetFileName)\"")
但这在其他生成器中不起作用。既然 CMake 有了生成器表达式,有没有一种方法可以与任何生成器一起使用?
我尝试了类似的东西
add_definitions(-DTARGET_FILE_NAME=$<TARGET_FILE_NAME:$<TARGET_PROPERTY:NAME>>)
不过
add_definitions(-DTARGET_FILE_NAME=$<TARGET_PROPERTY:NAME>)
只放置未转义的$<TARGET_PROPERTY:NAME> in the buildfile. I also tried with just$`,但也没有运气。
请注意,compile 构建命令在许多构建文件中不知道 linker 输出的名称,因此似乎没有任何特定于生成器的 hack其中一些也是。
【问题讨论】:
标签: cmake