【问题标题】:CMake way of wildcard values on set variables设置变量上的通配符值的CMake方式
【发布时间】:2022-01-05 15:13:42
【问题描述】:

我有一个基于 CMake 的项目的下一个 sn-p

set(Headers
    ./include/MyLib/main.hpp
)
set(Sources
    src/main.cpp
)

add_library(${This} STATIC ${Headers} ${Sources})

如何指示递归包含以下所有接口文件:

  • ./include/MyLib/{ /* File name here */ }.ixx

以及

下的所有源文件
  • src/{ /* File name here */ }.cpp

【问题讨论】:

  • 为此目的在 CMake 中使用 globbing 通常不是一个好主意。见this answers

标签: c++ cmake include c++20


【解决方案1】:

一种解决方案是将 set() 替换为:

file(
  GLOB_RECURSE
  Headers
  ./include/MyLib/*.ixx
)

你的源文件也是一样的。

【讨论】:

  • 完美运行!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-16
  • 1970-01-01
  • 2020-10-14
  • 2016-02-23
  • 2021-12-30
相关资源
最近更新 更多