OCTAVE_VERSION= 2.0.13
PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}
This translation may be out of date. To help with the translations please access the FreeBSD translations instance .
pkg-* ファイルには、 まだ取り上げていない何かと重宝なトリックがいくつかあります。
もしインストールする人にメッセージを表示する必要がある場合には、 そのメッセージを pkg-message に置くことができます。 この機能は pkg_add(1) の後の追加のインストール手続きを表示するときなどに重宝します。
|
pkg-message
ファイルは
pkg-plist
に加える必要はありません。 また、もしユーザが package ではなく port を使用している場合には自動的には表示されませんので、 明示的に
|
バイナリパッケージが
pkg_add(1)
でインストールされるときに実行する必要のあるコマンドがあれば、
pkg-install
スクリプトを使って実行することができます。 このスクリプトは自動的に package に加えられ、
pkg_add(1)
によって 2 回実行されます。 1 回目は
${SH} pkg-install ${PKGNAME} PRE-INSTALL
として、2 回目には
${SH} pkg-install ${PKGNAME} POST-INSTALL
として実行されます。 どちらのモードで実行されているかは
$2
を調べることによってわかります。 環境変数
PKG_PREFIX
には package がインストールされるディレクトリが設定されます。 詳細は
pkg_add(1)
を見てください。
|
port を
|
このスクリプトは package が削除される際に実行されます。
このスクリプトは、
pkg_delete(1)
から 2 回実行されます。1 回目は
${SH} pkg-install ${PKGNAME} DEINSTALL
と、2 回目は
${SH} pkg-install ${PKGNAME} POST-DEINSTALL
という形で実行されます。
(訳注: 実行されるマシンの状態に応じて) その port をインストールするべきか、そうでないかを判断する必要があるときには、 "要件 (requirements)" スクリプト pkg-req を作ることができます。 インストールや削除を実行すべきかどうか判断するために、 このスクリプトがインストールや削除を実行する際に自動的に実行されます。
このスクリプトはインストール時には
pkg_add(1)
により
pkg-req ${PKGNAME} INSTALL
として実行され、 削除時には
pkg_delete(1)
により
pkg-req ${PKGNAME} DEINSTALL
として 実行されます。
いくつかの port、特に
p5-
ports などは、configure のオプション (あるいは、
p5-
の場合は
perl
のバージョン) によって
pkg-plist
を変える必要があります。 これを容易に実現するために
pkg-plist
中の
%%OSREL%%
,
%%PERL_VER%%
,
%%PERL_VERSION%%
は適切に置き換えられるようになっています。
%%OSREL%%
の値はオペレーティングシステムの数字で表されたリビジョンです (たとえば
4.9
)。
%%PERL_VERSION%%
は
perl
のバージョン番号全体 (たとえば
5.00502
) で、
%%PERL_VER%%
は
perl
のバージョン番号からパッチレベルを引いたものです (たとえば
5.005
)。
他の置き換えが必要であれば、
PLIST_SUB
変数に
VAR=VALUE
という形式のペアのリストを設定することによって、
pkg-plist
中の
%%VAR%%
は
VALUE
に置き換えられます。 たとえばバージョンに固有のたくさんのファイルをインストールする場合には、
Makefile
に
OCTAVE_VERSION= 2.0.13
PLIST_SUB= OCTAVE_VERSION=${OCTAVE_VERSION}
と書いて、
PLIST
中のバージョン番号が表われるすべてのところに、
%%OCTAVE_VERSION%%
と書きます。 このようにしておけば、port をアップグレードするときに、 何十行 (時として、何百行) も
pkg-plist
を書き替えないですみます。
この書き換えは (
マニュアル
の追加も)
pre-install
と
do-install
ターゲットの間に
pkg-plist
を読み
TMPPLIST
(デフォルトは
WRKDIR/.PLIST.mktmp
) に書き込むことによって行なわれます。 もし、あなたの port が
PLIST
を実行時に生成するのであれば、
pre-install
の間かその前に行なうようにしてください。 また、書きかえられたあとのファイルを編集する必要がある場合には、
post-install
で
TMPPLIST
を書きかえてください。
pkg-*
ファイルの名前はすべて変数を使用して定義されていますので、 必要であれば
Makefile
中で変更可能です。 いくつかの ports で一つの
pkg-*
ファイルを共有する場合や、 上記のファイルに書き込みをしなければならないときなど特に便利です (
pkg-*
サブディレクトリに直接書き込むのが良くない理由については
WRKDIR
以外への書きこみ
を参照してください)。
以下に変数名と そのデフォルト値のリストを示します。 (
PKGDIR
のデフォルト値は
${MASTERDIR}
になっています。)
| 変数名 | デフォルト値 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PKG_ARGS
を上書きせずにこれらの変数を変更するようにしてください。
PKG_ARGS
を変更すると、これらのファイルは port から正しく
/var/db/pkg
にインストールされなくなります。
最終更新日 : 2025年2月18日 by Fernando Apesteguía