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 对象 >
当前 recipe 对象。 始终使用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 "."
。
conf¶
Meson
构建助手受以下 [conf]
变量的影响
tools.meson.mesontoolchain:extra_machine_files=[<FILENAME>]
配置,用于在使用正确的参数(具体取决于本地构建还是交叉构建)的命令末尾添加您的 machine files。 有关更多信息,请参阅此 Meson 参考。tools.compilation:verbosity
接受quiet
或verbose
之一,并在Meson.build()
中设置--verbose
标志tools.build:verbosity
接受quiet
或verbose
之一,并在Meson.install()
中设置--quiet
标志