設定ファイル リファレンス

~/.jhbuildrc ファイルでは、標準的な Python 構文を使用します。このファイルは実行されて、ネーム スペースで定義された変数の結果は、 JHBuild がどのように動作するかを制御するために使用されます。一連のデフォルト値は、ユーザの設定ファイルの実行前にネーム スペースに挿入されます。

変数にブール値をセットする場合、以下の例で示す構文が使用されます:

use_local_modulesets = True

変数に文字列をセットする場合、以下の例で示す構文が使用されます:

autogenargs = '--disable-static --disable-gtk-doc'

リストへ設定値をセットする場合、以下の例で示す構文が使用されます:

skip = ['mozilla'、'pulseaudio']

ディクショナリへ設定値をセットする場合、以下の例で示す構文が使用されます:

repos['git.gnome.org'] = 'ssh://username@git.gnome.org/git/'

6.1. 設定変数

alwaysautogen

ブール値です。True に設定した場合、makefile が存在していても、常に make の前に autogen.sh を実行します。これは JHBuild に --always-autogen オプションを指定した場合と同じです。デフォルトは False です。

autogenargs

すべてのモジュールの autogen.sh スクリプトに渡す引数を指定する文字列です。特定のモジュールに別の引数を指定したい場合は、module_autogenargs ディクショナリでオーバーライドできます。

branches

A dictionary specifying which branch to use for specific modules. This is useful if you are making some changes on a branch of a module and want JHBuild to build that branch instead of the one listed in the module set.

ブランチの定義の仕方は、バージョン管理システムに依存します:

  • CVS: リビジョンを指定します。例: 'BRANCH-PROJECT-0_8'

  • Bazaar: モジュール ブランチの URI を指定します。例: 'http://bzr.example.net/project/gnome-2-28'

  • Git: タプル で指定します。最初の部分はオプションのリポジトリ(または None 値)、2番目にはブランチの名前です。例: ('git://git.example.netproject'、'gnome-2-28')

    例 2Simple example
    branches['modulename'] = (None, 'branchname')
  • Subversion: モジュール ブランチの URI を指定します。例: 'svn://svn.example.net/project/gnome-2-28'

builddir_pattern

ビルド ディレクトリの名前を生成するための、printf スタイルの書式設定パターンです。これはソースとビルド ツリーが違う場合のみ使用します。書式の中の %s は、checkoutdir で置き換えられます。デフォルトは '%s' です。

buildroot

ビルド ツリーの親ディレクトリを指定する文字列です。デフォルトは None で、ビルドはソース ツリーで実行されます。

buildscript

どのビルド スクリプトを使用するかを指定する文字列です。推奨の設定はデフォルトの terminal です。特に gtk に設定しないでください。

build_policy

どのモジュールをビルドするかを指定する文字列です。利用可能なオプションは、要求されたモジュールをすべてビルドする all、変更されたモジュールだけをビルドする updated、モジュール または 依存するモジュールが変更されたときにモジュールをビルドする updated-deps の3つです。デフォルトは updated-deps です。

checkoutroot

ソース ツリーを展開するディレクトリを指定する文字列です。buildroot がセットされていない場合は、ビルドにもこのディレクトリが使用されます。デフォルトは ~/checkout/gnome です。

checkout_mode

バージョン管理されているディレクトリにたいして、どのようにチェックアウトを行うかを指定する文字列です。デフォルトは update です。モジュールごとに指定する場合は、module_checkout_mode を使用できます。利用可能な値は update (チェックアウト ディレクトリを更新する)、clobber (ソースをチェックアウトする前にディレクトリを掃除する)、export (ディレクトリを掃除した後にソースのバージョン管理外コピーを作成する)、そして copy (ディレクトリにビルドされるものとは別にチェックアウトします)です。

copy_dir

checkout_mode が copy の場合に、コピー先のディレクトリを指定する文字列です。デフォルトは チェックアウト ディレクトリです。

cvs_program

cvs をサポートするために、どのプログラムを使用するかを指定する文字列です。git-cvsimport、または cvs が指定できます。デフォルトは cvs です。

dvcs_mirror_dir

ローカルミラーのディレクトリを指定する文字列です。JHBuild は指定されたディレクトリにリポジトリのローカルミラーを作成します。ミラーは複数のリポジトリグループによって共有することができ、ローカルのクローンにたいしてハードリンクが使用されるため領域と時間の節約につながります。update および updateone コマンドはミラーを作成し、オンラインのリポジトリから新規のコミットをフェッチします。このオプションは Git および Bazaar リポジトリにたいしてのみサポートされます。

installprog

/usr/bin/install のかわりに使用するプログラムを指定する文字列です。利用可能な場合、デフォルトは JHBuild により提供されるinstall-check ラッパーです。install-check ラッパーはヘッダのインストールを最適化することにより、リビルドにかかる時間を短縮します。

ignore_suggests

依存ツリーを計算するときに、推奨される依存関係を無視するかどうかを指定するブール値です。デフォルトは False です。

interact

ユーザと対話するかどうかを指定するブール値です。この値を False に設定することは、--no-interact オプションを指定するのと同じです。デフォルトは True です。

makeargs

make に渡す追加の引数の文字列リストです。デフォルトは '' です。

makecheck

make の後に、make check を実行するかどうかを指定するブール値です。デフォルトは False です。

makecheck_advisory

make check が失敗したときに、ビルドを失敗させない(メッセージの表示のみ)にするかどうかを指定する文字列です。デフォルトは False です。

makeclean

make の前に、make clean を実行するかどうかを指定するブール値です。デフォルトは False です。

makedist

make の後に、make dist を実行するかどうかを指定するブール値です。デフォルトは False です。これは --dist オプションを指定するのと同じです。

makedistcheck

make の後に、make distcheck を実行するかどうかを指定するブール値です。デフォルトは False です。これは --distcheck オプションを指定するのと同じです。

module_autogenargs

モジュールの名前と、autogen.sh に渡す引数をマッピングするディクショナリです。module_autogenargs の設定は、autogenargs のグローバルな設定より優先されます。モジュールがディクショナリに指定されていないときは、グローバルな autogenargs が使用されます。

module_checkout_mode

チェックアウト モードをモジュールごとに指定するためのディクショナリです。この設定はグローバルな checkout_mode の設定より優先されます。

module_makeargs

モジュールの名前と、make に渡す引数をマッピングするディクショナリです。module_makeargs の設定は、makeargs の値を置き換えます。モジュールがディクショナリに指定されていないときは、グローバルな makeargs が使用されます。

module_makecheck

モジュールの名前と、make の後に make check を実行するかどうかの指定をマッピングするディクショナリです。module_makecheck の設定は、makecheck の値より優先されます。モジュールがディクショナリに指定されていないときは、グローバルな makecheck の設定が使用されます。

module_nopoison

モジュールの名前とブール値をマッピングするディクショナリです。モジュールに True が設定されている場合、JHBuild は指定されたモジュールのビルドが失敗しても、依存するモジュールをビルドしようと試みます。module_nopoison の設定は、nopoison の設定より優先されます。モジュールがディクショナリに指定されていないときは、グローバルな nopoison の設定が使用されます。

module_extra_env

モジュールの名前と、追加の環境変数と値のディクショナリをマッピングするディクショナリです。モジュールのためにコマンドを実行するときに使用されます。

modules

ビルドするモジュールを指定する、文字列のリストです。モジュールのリストは、buildone が使用できるようになるまで、すべての依存関係を含めて、再帰的に展開されます。デフォルトは ['meta-gnome-desktop'] です。

moduleset

モジュール セットの名前を指定する文字列、または文字列のリスト(配列)です。これは JHBuild に含まれるファイル名(パスと拡張子を除く)、または 外部で管理されているモジュール セットの完全な HTTP URL のどちらでも構いません。HTTP URL のモジュール セットは、ローカルにキャッシュされます。2つ以上のモジュールセットに対して同じ名前が与えられていた場合は、最後のセットが優先されます。JHBuild により提供されるモジュール セットは、その時の GNOME の開発リリースに合わせて更新されます。

modulesets_dir

モジュール セットのあるディレクトリを指定する文字列です。デフォルトは JHBuild のソースの modulesets/ ディレクトリです。

nice_build

Run builds under the SCHED_IDLE priority on Linux, nice on other Unix. This can dramatically improve desktop interactivity for parallel builds while having only a negligible impact on build throughput.

nobuild

ブール値です。True に設定した場合、JHBuild はモジュールのビルドを行わず、ソースのダウンロードと展開のみ行います。デフォルトは False です。

nonetwork

ネットワークにアクセスするかどうかを指定するブール値です。この設定は CVS モジュールのチェックアウトと更新、および tarball のダウンロードと、モジュール セットの更新に影響を与えます。True に設定した場合、--no-network オプションを指定したのと同じです。デフォルトは False です。

nonotify

A boolean value specifying whether to emit notifications using the notification daemon. If set to False, notifications are emitted. Defaults to True.

nopoison

ブール値です。True に設定された場合、依存関係にある1つ以上のモジュールのビルドに失敗しても、JHBuild はビルドを試みます。このオプションは --no-poison を引数で指定するのと同じです。デフォルトは False です。

notrayicon

A boolean value specifying whether to show an icon in the system tray using Zenity. If set to False, notifications are emitted. Defaults to True.

noxvfb

ブール値です。True に設定した場合、JHBuild は Xvfb を使用せずに、実際の X サーバでグラフィック テストを実行します。このオプションは、--no-xvfb を指定するのと同じです。デフォルトは False です。

partial_build

A boolean value, if set to True JHBuild will not build dependency modules if corresponding system packages are installed and sufficient version. Defaults to True.

prefix

A string specifying the prefix to install modules to. prefix must be an absolute path. This directory must be writable. Defaults to '/opt/gnome'.

pretty_print

サブ プロセスの出力を、綺麗にプリントするかどうかを指定するブール値です。CVS の出力のみをサポートします。この指定により問題が発生する場合は無効にしてください。デフォルトは True です。

print_command_pattern

A string displayed before JHBuild executes a command. %(command)s in the string will be replaced with the command about to be executed. %(cwd)s in the string will be replaced with the current working directory. Defaults to '%(command)s'.

progress_bar

quiet mode で、プログレスバーを表示するかどうかを指定するブール値です。デフォルトは True です。

quiet_mode

ブール値です。True に設定した場合、コマンドの出力を抑止します。デフォルトは False です。

repos

特定のリポジトリにたいして、かわりのリポジトリ ロケーションを指定するディクショナリです。この設定変数は、モジュール開発者にとって便利です。デフォルトでは、JHBuild は匿名のリポジトリ ロケーションから、コードをチェックアウトします。ディクショナリのキーはリポジトリの略称で、値はリポジトリ ロケーションの文字列です。例:

repos['git.gnome.org'] = 'ssh://username@git.gnome.org/git/'
skip

スキップするモジュールを、リストで指定します。これは --skip のコマンドライン オプションをリスト型に拡張したものです。デフォルトではこのリストは空です。

sticky_date

文字列型です。もし指定された場合、背後のバージョン管理システムがサポートしていれば、JHBuild はビルドの前に、ソース ツリーを指定された日付に更新します。ここで指定できるのは ISO の日付書式です。例: 'yyyy-mm-dd'。デフォルトは None です。

svn_program

subversion をサポートするために、どのプログラムを使用するかを指定する文字列です。svn、または git-svn が指定できます。デフォルトは svn です。

tarballdir

文字列型です。指定された場合、tarball を checkoutroot ではなく、指定されたディレクトリにダウンロードします。これは JHBuild で複数の環境を使用していたり、checkoutroot を定期的にクリーンしていて、なおかつ帯域幅の使用を減らしたい場合などに便利です。

tinderbox_outputdir

jhbuild tinderbox の出力を保存するディレクトリを指定する文字列です。この設定は --output オプションより優先されます。デフォルトは None なので、コマンドライン オプションで指定するか、設定ファイルの中でこれが指定されていなければなりません。

trycheckout

ブール値です。True を指定した場合、JHBuild は失敗したときに次の解決を自動的に試みます。 1) autogen.sh コマンドを再実行する 2) バージョン管理システムから新しいバージョンをチェック アウトする。この設定は --try-checkout オプションを指定するのと同じです。

use_lib64

lib64 ディレクトリにライブラリをインストールするかどうかを指定するブール値です。設定した場合、configure のオプションに --libdir=\${exec_prefix}/lib64 を引き渡します。x86_64ppc64s390x で Linux を実行している場合のデフォルトは True です。これ以外のシステムの場合、デフォルトは False です。

use_local_modulesets

GNOME のバージョン管理システムから、オン ザ フライでモジュール セットを取得するのではなく、JHBuild のソースコードと一緒にチェックアウトしたモジュール セットを使用するかどうかを指定するブール値です。デフォルトは False です。

xvfbargs

グラフィック テストを Xvfb で実行する場合の引数を指定するリスト型です。

6.2. その他の設定ファイルの構造

上述の変数に加えて、以下の文字列が設定ファイルで指定できます:

os.environ

環境をあらわすディクショナリです。この環境は JHBuild により 生成されたプロセスに引き渡されます。

CPPFLAGSCFLAGSINSTALL、そして LDFLAGS を含む、影響のある環境変数が含まれます。例:

os.environ['CFLAGS'] = '-O0 -g'
addpath(envvar, pathname)

PATH 環境変数にディレクトリを追加します。addpath は、環境変数の初期値が空の場合を確実に処理します(環境変数の先頭、もしくは末尾にある単独のコロンは予期せぬ結果をもたらすことがあります)。

addpath は、パスが -I pathname の形式であることを期待する ACLOCAL_FLAGS 環境変数のために特別な処理を行います。

prependpath(envvar, pathname)

設定ファイルを処理した後、JHBuild は prefix のような変数に基づくパスに対して変更を加えます(例: PATH の先頭に $prefix/bin を追加する)。

prependpathaddpath と同じように動作しますが、JHBuild が環境に対して行った変更の後に環境変数への変更が適用される点が異なります。