Meson¶
Meson()
构建助手旨在用于 build()
和 package()
方法中,自动调用 Meson 命令。
from conan import ConanFile
from conan.tools.meson import Meson
class PkgConan(ConanFile):
def build(self):
meson = Meson(self)
meson.configure()
meson.build()
def package(self):
meson = Meson(self)
meson.install()
参考¶
- class Meson(conanfile)¶
此类在构建包时调用 Meson 命令。请注意,此类应与
MesonToolchain
生成器一起使用。- 参数:
conanfile –
< ConanFile object >
当前配方对象。始终使用self
。
- configure(reconfigure=False)¶
运行
meson setup [FILE] "BUILD_FOLDER" "SOURCE_FOLDER" [-Dprefix=/]
命令,其中FILE
可以是--native-file conan_meson_native.ini
(如果为原生构建)或--cross-file conan_meson_cross.ini
(如果为交叉构建)。- 参数:
reconfigure –
bool
值,向最终命令添加--reconfigure
参数。
- build(target=None)¶
在构建文件夹中运行
meson compile -C . -j[N_JOBS] [TARGET]
。您可以通过配置文件[conf]
部分中的tools.build:jobs=N_JOBS
配置行指定N_JOBS
。- 参数:
target –
str
指定要执行的目标。
- install()¶
在构建文件夹中运行
meson install -C "." --destdir
。
- test()¶
在构建文件夹中运行
meson test -v -C "."
。
配置¶
Meson
构建助手受以下 [conf]
变量影响
tools.meson.mesontoolchain:extra_machine_files=[<FILENAME>]
配置,用于在命令末尾添加机器文件,并根据原生或交叉构建使用正确的参数。有关更多信息,请参阅 此 Meson 参考。tools.compilation:verbosity
接受quiet
或verbose
之一,并在Meson.build()
中设置--verbose
标志。tools.build:verbosity
接受quiet
或verbose
之一,并在Meson.install()
中设置--quiet
标志。