FindGLM.cmake 不在 glm 0.9.7 中,这是在 CMAKE 中查找库的不推荐方法吗?

FindGLM.cmake not in glm 0.9.7, is it a deprecated way to find libraries in CMAKE?

所以查看最新版本的 GLM 0.9.7,我没有在任何地方看到 FindGLM.cmake 文件,用于轻松地将 GLM 包含在 CMAKE 中。我总是可以使用在网上找到的旧版本,但以下提交让我感到难过:

https://github.com/g-truc/glm/commit/62a7daddcf082f754000fc5e42d7bcdf93c895f7

提交消息是 "Removed obsolete FindGLM"。那么,开发人员是直接丢弃了它,还是实际上有一种在 CMAKE 中查找库的新方法?

是的,CMake 查找模块(FindXyz.cmake 文件)已弃用,取而代之的是包配置文件(通常命名为 XyzConfig.cmake)。最初的理念是 Find 模块由 CMake 运送和维护,而 Package Config 文件由它们要查找的包运送和维护。

CMake的find_package命令实际上有两种模式:Module模式(传统,使用Find modules)和Config模式(首选,使用Package Config文件)。

对于使用该包的客户端,应该几乎没有什么变化(除非需要更多定制,这是由 find_package 的配置模式提供的)。

请注意,您链接到的提交不仅会删除 FindGLM.cmake,还会添加一个 glmConfig.cmake 文件。