我正在重新组织具有许多第三方依赖项的的物理(磁盘上)布局,该布局使用CMake构建。
由于我们需要支持Windows,这是一个没有完善的包管理器的平台,我们很久以前就决定在源代码树中包含我们所依赖的第三方库。然而,在我们支持的其他平台上,例如Linux和Mac,许多第三方库都可以作为包使用,或者已经存在于系统中,并且很容易被CMake找到。
目前的项目布局如下:
root/
src/
3rd-party-lib1/ (build system modified to output to build/)
3rd-party-lib2/