功能自动检测
Meson 旨在提高生产力。它尽力尽可能自动执行许多操作。
Ccache
Ccache 是一个缓存系统,旨在加快编译速度。当您首次为特定项目运行 Meson 时,它会检查 Ccache 是否已安装。如果已安装,Meson 将自动使用它。
如果您出于某种原因不想使用 Ccache,只需在首次运行 Meson 时使用环境变量 CC
和/或 CXX
指定您的编译器(请记住,一旦指定,编译器就无法更改)。然后 Meson 将使用指定的编译器,而不会使用 Ccache。
覆盖率
在进行代码覆盖率构建时,Meson 将检查二进制文件 gcovr
、lcov
和 genhtml
的存在。如果找到第一个版本的 3.3 或更高版本,则会生成名为 coverage-text、coverage-xml 和 coverage-html 的目标。如果找到第一个版本的 4.2 或更高版本,则会生成目标 coverage-text、coverage-xml、coverage-sonarqube 和 coverage-html。或者,如果找到了后两个,则仅生成目标 coverage-html。然后,只需调用例如 meson compile coverage-xml
即可生成覆盖率报告。为了方便起见,还会生成一个高级 coverage 目标,该目标将尽可能生成所有 3 种覆盖率报告类型。
请注意,生成上述任何覆盖率报告都需要测试(即 meson test
)完成运行,以便可以收集有关测试中调用的函数的信息以用于报告。
搜索结果为