Cmake生成器表达式:如何获取目标列表上的目标\u文件属性

Cmake生成器表达式:如何获取目标列表上的目标\u文件属性,cmake,Cmake,我正在创建一个自定义命令,将目标列表打包到一个专有包中。简化版本如下所示 我不知道如何将目标列表转换为可执行文件的路径列表。这比我想象的要困难,这意味着我可能走错了方向 期待就如何进行提出一些建议 提前感谢您的支持 function(package_targets name targets) add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}" # How to make a list of paths f

我正在创建一个自定义命令,将目标列表打包到一个专有包中。简化版本如下所示

我不知道如何将目标列表转换为可执行文件的路径列表。这比我想象的要困难,这意味着我可能走错了方向

期待就如何进行提出一些建议

提前感谢您的支持

function(package_targets name  targets)

  add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${name}"
    # How to make a list of paths from ${targets) using the $<TARGET_FILE:tgt> property?
    COMMAND "${PACKAGER_EXE}" "$<GENERATOR_EXPRESSION_TO_BE_CREATED_HERE>"
    DEPENDS ${targets}
    VERBATIM)
    #COMMAND_EXPAND_LISTS)

  add_custom_target(${name} ALL
    DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${name}")

endfunction(package_targets)

功能(包目标名称目标)
添加自定义命令(输出“${CMAKE\u CURRENT\u BINARY\u DIR}/${name}”
#如何使用$property创建来自${targets)的路径列表?
命令“${PACKAGER_EXE}”“$”
依赖${targets}
(逐字记录)
#命令(展开列表)
添加自定义目标(${name}全部
依赖于“${CMAKE\u CURRENT\u BINARY\u DIR}/${name}”)
endfunction(包_目标)

如何校准函数?目标的值是多少??只需迭代目标,用
$
累积它们,然后调用add_custom_命令。请说明如何调用函数以及函数应生成什么
命令(显示输入和预期输出)。谢谢!我太努力了,无法在自定义命令中执行此操作。这种方法很有效。正如建议的那样,我迭代了目标列表,并创建了自定义命令中使用的生成器表达式。如果您找到了有效的解决方案,请将其发布为答疑栏,以便将来访问您的问题的人可以看到您的答案解决了这个问题。