再配置アルゴリズム
LilyPond は、次のアルゴリズムを使用してデータファイルを検索します。
- 現在実行されている
lilypond
バイナリが配置されているディレクトリを計算します。これを bindir
としましょう。
(内部) 環境変数 INSTALLER_PREFIX
を bindir/..
(つまり、bindir
の親ディレクトリ) にセットします。
- 環境変数
LILYPOND_DATADIR
を確認します。セットされている場合は、その値を LilyPond のデータ ディレクトリ datadir
に使用します。それ以外の場合は、$INSTALLER_PREFIX/share/lilypond/version
(version は現在の LilyPond バージョンです) または
$INSTALLER_PREFIX/share/lilypond/current を使用します。
- 環境変数
LILYPOND_LOCALEDIR
を確認します。セットされている場合は、その値を LilyPond のロケール データ ディレクトリ
localedir
に使用します。それ以外の場合は、$INSTALLER_PREFIX/share/locale を使用します。
- 環境変数
LILYPOND_RELOCDIR
を確認します。セットされている場合は、その値を LilyPond の再配置ファイルのディレクトリ
relocdir
に使用します。それ以外の場合は、$INSTALLER_PREFIX/etc/relocate を使用します。
-
datadir
が存在しない場合は、代わりにコンパイル時の値を使用します。
localedir
についても同様です
(ただし、relocdir
に関しては無意味なので、同様ではありません) 。
-
relocdir
が存在する場合は、再配置ファイル の説明に従って、このディレクトリ内のすべてのファイルを処理します。