Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all
名前
meson - 生産性の高いビルドシステム
説明
Meson はプログラマーの生産性を最適化するために設計されたビルドシステムです。 これを実現す るために、 最新のソフトウェア開発ツールや技法を、 簡単にすぐ利用できる機能を提供していま す。 それはたとえば、 ユニットテスト、 網羅性レポート、 Valgrind、 Ccache などです。 メインの実行コマンド meson には数多くのサブコマンドがあり、 これによって全機能の利用が可能 になります。
セットアップコマンド
Meson を用いるのは実に簡単です。 ビルドシステムのほとんどにおいて、 普通は二段階プロセスを 実現します。 一度めは Meson を実行してビルド設定を行います。 meson setup [ options ] [ build directory ] [ source directory ] なおビルドディレクトリは、 ソースディレクトリとは別のところにしなければなりません。 Meson ではソースディレクトリ内でのビルドには対応していないため、 これを行うとエラーが発生しま す。 設定ステップが正常処理されたら、 ビルドディレクトリ内において実際のビルドコマンドを実行し てソースをビルドできます。 Meson のデフォルトのバックエンドは Ninja です。 これは以下のよ うにして起動できます。 ninja [ target ] Meson コマンドを実行するのは、 ビルドディレクトリにおいて最初に設定を行う一度だけです。 こ れを行ったら、 次はビルドコマンドを実行するだけです。 Meson はソースツリー内の変更を自動的 に検出して、 プロジェクトビルドに必要となるファイルをすべて再生成します。 セットアップコマンドを実行するのがデフォルトの動作です。 特に何かコマンドが指定されない限 り、 Meson はセットアップを行うものとして動作します。 セットアップコマンドを用いなくても、 ビルドディレクトリは以下のようにしてセットアップすることができます。 meson [ options ] [ build directory ] [ source directory ] オプション: --version バージョン番号を表示します。 --help コマンドラインヘルプを表示します。
configure コマンド
meson configure は、 コマンドラインから Meson プロジェクトを設定するものです。 その利用の 仕方は以下のように簡単です。 meson configure [ build directory ] [ options to set ] ビルドディレクトリが省略された場合は、 カレントディレクトリが用いられます。 パラメーターが何も設定されなかった場合、 meson configure はすべてのビルドオプションの値を コンソールに出力します。 値を設定するには、 以下のようにコマンドライン引数 -D を利用します。 meson configure -Dopt1=value1 -Dopt2=value2
イントロスペクト (introspect) コマンド
Meson の introspect は、 他のツール、 たとえば IDE などとの連携を簡単に実現するように設計 されたコマンドです。 このコマンドの出力は JSON 形式です。 meson introspect [ build directory ] [ option ] ビルドディレクトリが省略された場合は、 カレントディレクトリが用いられます。 オプション: --targets トップレベルターゲット (実行モジュール、ライブラリなど) をすべて表示します。 --target-files 指定されたターゲットに対するソースファイルを表示します。 --buildsystem-files ビルドシステムを構成するファイル (meson.build、meson_options.txt など) をすべて表示 します。 --tests ユニットテストをすべて表示します。 --help コマンドラインヘルプを表示します。
テストコマンド
meson test は Meson を利用してプロジェクトのテストスイートを実行するヘルパーツールです。 テスト実行を行うデフォルトの方法は、 以下のようにデフォルトのビルドコマンドを実行すること です。 ninja [ test ] meson test では、テスト実行に対して機能豊富なツールセットを提供しています。 meson test はバックエンドとして Ninja を利用する場合には、 テスト実行に必要となるターゲッ トを自動的に再ビルドします。 ビルドに失敗すると meson test は終了コードとして 125 を返しま す。 この返り値コードは git bisect run にあたって、 カレントなコミットをスキップします。 したがって git を用いた bisect 処理は、 以下のようにわかりやすく実現できます。 git bisect run meson test -C build_dir オプション: --repeat 指定された回数分だけテストを実行します。 --gdb gdb のもとでテストを実行します。 --list 利用可能なテストをすべて一覧表示します。 --wrapper 指定されたラッパー (たとえば valgrind) 経由によりすべてのテストを起動します。 -C テスト実施前に、 指定されたディレクトリに移動します (これはビルドディレクトリの最上 位でなければなりません)。 --suite このスイートにおいてテストを実行します。 --no-suite このスイートの中ではテストを実行しません。 --no-stdsplit テストログにおいて stderr と stdout を分割しません。 --benchmark テストの代わりにベンチマークを実行します。 --logbase テストログ出力に利用するファイルのベース名を指定します。 --num-processes テスト実行における同時並行処理数を指定します。 --verbose stdout と stderr にリダイレクトしません。 -t テストにおけるタイムアウト値の乗数を指定します (通常 Valgrind に対しては 100 などと します)。 --setup 指定されたテストのセットアップを用います。
ラップ (wrap) コマンド
ラップツール (wraptool) は、 オンラインの wrabdb サービスを利用して、 ソースの依存関係を管 理するヘルパーユーティリティーです。 meson wrap < command > [ options ] このコマンドは、 プロジェクトの最上位ソースディレクトリにおいて実行することが必要です。 コマンド list 利用可能なプロジェクトの一覧を表示します。 search プロジェクト名で検索します。 install プロジェクトを指定された名前を用いてインストールします。 update 指定されたプロジェクトを、 利用可能な最新バージョンにアップデートします。 info 指定されたプロジェクトの利用可能バージョンを表示します。 status 現在利用されているサブプロジェクトに対して、 インストールされている、 または利用可 能なバージョンを表示します。
終了ステータス
0 正常終了。 1 利用エラー。 つまり meson.build の解析または実行エラー。 2 内部エラー。 125 meson test において必要なターゲットが再ビルドできなかったことを表します。 関連項目 http://mesonbuild.com/ https://wrapdb.mesonbuild.com/