- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要编写一个 CMake FindXYZ 类型的模块。谷歌搜索,我找到了这个指南:
https://cmake.org/Wiki/CMake:How_To_Find_Libraries
来自 Kitware,但有一个关于它被弃用的免责声明。在过去,比如 6 到 7 年,这些模块的编写方式发生了哪些重大变化(如果有的话)?
最佳答案
是的,CMake Wiki 的内容现已正式移入 CMake 的文档中,因此“已弃用”警告更像是不再关注 Wiki 的一般警告。
在您的情况下,CMake Wiki: How To Find Libraries 的主要部分移至 CMake 的文档 cmake-packages
章节。
发生了什么变化?
我认为过去几年的主要变化是斯蒂芬凯利在他的 "Embracing Modern CMake"谈话叫:
Modern CMake packages define
IMPORTED
targetsfind_package(Foo REQUIRED)
add_executable(hello main.cpp)
target_link_libraries(hello
Foo::Core
)
cmake-developer
- Find Modules 中可以找到相同的基本色调。章节:
The traditional approach is to use variables for everything, including libraries and executables. This is what most of the existing find modules provided by CMake do.
The more modern approach is to behave as much like config file packages files as possible, by providing imported target. This has the advantage of propagating Transitive Usage Requirements to consumers.
find_package_handle_standard_args()
macro .
..._FOUND
构建的。缓存变量处理。
..._INCLUDE_DIRS
和
..._LIBRARIES
变量只是必须在某处缓存查找结果的副作用。
关于cmake - KitWare 的在 CMake 中查找库的指南中弃用了哪些内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48990833/
我是一名优秀的程序员,十分优秀!