pkg
サブディレクトリpkg
サブディレクトリまだ触れていない, いくつかのこつが pkg
サブディレクトリ
にはあり, 時として便利でしょう.
MESSAGE
もし, インストールする人に
メッセージを表示する必要がある場合には, そのメッセージを
pkg/MESSAGE
に置けます. この機能は, pkg_add
の後の追加のインストール手続きを表示するときなどに, 重宝
します. MESSAGE ファイルは pkg/PLIST に加える必要はありま
せん. また, もしユーザが package ではなく port を使用して
いる場合には自動的には表示されませんので, 明示的に
post-install
で表示するようにするべきでしょう.
INSTALL
バイナリパッケージが pkg_add
でインストールされるとき
に, 実行される必要があるコマンドがあれば, pkg/INSTALL スクリプト
を使って実行することができます. このスクリプトは自動的に
package に加えられ, pkg_add によって2度実行されます. はじめは
`INSTALL ${PKGNAME} PRE-INSTALL
' と実行され,
2度目には, '`INSTALL ${PKGNAME} POST-INSTALL
'
と実行されます. どちらのモードで実行されているかは,
`$2
' を調べることによってわかります.
環境変数 `PKG_PREFIX
' には package がインストールさ
れるディレクトリが設定されます. 詳細は man
pkg_add(1)
を見てください.
注意すべきことは, port を `make install
' で
インストールするときには, このスクリプトは自動的に実行されな
いということです. もし, 実行される必要があるならば, port の
Makefile で明示的に呼ぶ必要があります.
REQ
port が(インストールされるシステムの状態によって) インストールされるべきか, されないべきか区別する必要があると きには, 「要件(requirements)」スクリプト pkg/REQ を作ること ができます. これは, インストール及びデインストール (package の削除)の時に自動的に実行され, それらが処理されるべ きかを決定します.
PLIST
の変更いくつかの port, 特に p5- portsなど, は configure のオプション
(あるいは, p5- ports の場合は perl のバージョン)によって,
PLIST
を変える必要があります. これを容易に実現するために,
PLIST
中の %%OSREL%%
, %%PERL_VER%%
,
%%PERL_VERSION%%
は, 適切に置き換えられるようになって
います. %%OSREL%%
の値は, オペレーティングシステムの
数字で表されたリビジョンです (例えば, `2.2.7').
%%PERL_VERSION%%
は perl のバージョン番号全体(例えば,
`5.00502')で, %%PERL_VER%%
はバージョン番号から,
パッチレベルを引いてものです(例えば, `5.005').
他の置き換えが必要であれば, PLIST_SUB
変数に
VAR=VALUE
という形式のペアのリストを設定することに
よって, PLIST
中の `%%VAR%%
' は `VALUE
'
に置き換えられます. 例えば, バージョンに固有の沢山のファイル
をインストールする場合には, Makefile
に
OCTAVE_VERSION= 2.0.13
PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}
と書いて, PLIST
中のバージョン番号が表われるすべての
ところに, %%OCTAVE_VERSION%%
と書きます.
このようにしておけば, port をアップグレードするときに,
何十行(ときとして, 何百行)も PLIST
を書き替えないで
すみます.
この書き換えは (
マニュアル
の追加も) do-install
と post-install
ターゲット
のあいだに, ${PLIST}
を読み
${TMPPLIST}
(デフォルトは,
${WRKDIR}/.PLIST.mktmp
) に書き込むことによって
行なわれます. もし, あなたの port が ${PLIST}
を実行時に生成するのであれば, do-install
のあいだか,
その前に行うようにしてください. また, 書きかえられたあとの
ファイルを編集する必要がある場合には, post-install
で, ${TMPPLIST}
を書きかえてください.
pkg
サブディレクトリ