功能自动检测

Meson 旨在提高生产力。它尽力尽可能自动执行许多操作。

Ccache

Ccache 是一个缓存系统,旨在加快编译速度。当您首次为特定项目运行 Meson 时,它会检查 Ccache 是否已安装。如果已安装,Meson 将自动使用它。

如果您出于某种原因不想使用 Ccache,只需在首次运行 Meson 时使用环境变量 CC 和/或 CXX 指定您的编译器(请记住,一旦指定,编译器就无法更改)。然后 Meson 将使用指定的编译器,而不会使用 Ccache。

覆盖率

在进行代码覆盖率构建时,Meson 将检查二进制文件 gcovrlcovgenhtml 的存在。如果找到第一个版本的 3.3 或更高版本,则会生成名为 coverage-textcoverage-xmlcoverage-html 的目标。如果找到第一个版本的 4.2 或更高版本,则会生成目标 coverage-textcoverage-xmlcoverage-sonarqubecoverage-html。或者,如果找到了后两个,则仅生成目标 coverage-html。然后,只需调用例如 meson compile coverage-xml 即可生成覆盖率报告。为了方便起见,还会生成一个高级 coverage 目标,该目标将尽可能生成所有 3 种覆盖率报告类型。

请注意,生成上述任何覆盖率报告都需要测试(即 meson test)完成运行,以便可以收集有关测试中调用的函数的信息以用于报告。

搜索结果为