c++ - CMake target_sources() 用于更大的库
问题描述
我正在开发一个更大的库,我们现在想用 cmake 构建它。
结构有点像这样:
foo/
- CMakeLists.txt
- include/
-- foo/
--- utils/
---- utils.hpp
--- foo.hpp
- src/
-- utils/
--- utils.cpp
-- foo.cpp
根CMakeLists.txt
看起来像这样:
cmake_minimum_required(VERSION 3.15)
project(foo CXX)
target_include_directories(
foo
PUBLIC
include
PRIVATE
src
)
target_sources(
foo
PRIVATE
src/foo.cpp
src/utils/utils.cpp
)
我现在看到的问题是,target_sources()
添加的源文件越多,调用将变得非常不可读且容易出错。
我读过GLOB
但也读到现在这是不好的做法。
您通常对这样的库使用什么解决方案?
解决方案
推荐阅读
- visual-studio - 请求中止:无法在 VS 2019 中为“https://api.nuget.org/v3/index.json”创建 SSL/TLS 安全通道
- regex - 将vim中的十进制数乘以固定数量
- javascript - 弹窗第二次未触发
- node.js - 在嵌套数组中比较并添加两个数组
- rust - 如何从迭代器循环内部跳过 n 个项目?
- python - 如何使用 pandas 数据框的特定行和列创建新系列?
- r - 我正在研究 sparklyr。试图将我的数据写入postgresql,但它需要永远
- shopify - 如何在shopify中提高网站加载速度
- netsuite - 如何在套件表单(API 2.0)的选择字段中仅获取父项?
- python - 如果可选属性无效,JSON Schema 会抛出验证错误