PEARパッケージを作る。その2

昨日のエントリだと微妙に(かなり?)足りないところがあったので追記です。
このファイルは違うところにインストールしたいんだよなぁ、とかOSがこれだったらこのファイルはいらないんだよなぁとかそんな話です。
それからPEAR_PackageFileManager2のAPIドキュメントがありました。
これがあるのとないのとでは大違いです。

このファイルは違うところにインストールしたいんだよなぁ

例えば実行可能なスクリプトファイルはパスが通ったところにおきたいとかそんな場合。
PEAR_PackageFileManager2::setOptionsの引数のarrayにinstallexceptionsというキーでarrayを追加します。
追加するarrayはキーがファイル名で値がインストールするディレクトリです。

 
"installexceptions" => array("bin/hoge.bat" => "/", "bin/hoge.sh" => "/")
 

こんな感じでいけると思います。

OSがこれだったらこのファイルはいらないんだよなぁ

上記の例なら.shはWindowsにはいらないし、.batはlinux系ならいらないとかそんな場合。
手順は

  • 条件毎にPEAR_PackageFileManager2::addRelease()でphpreleaseタグを追加
  • PEAR_PackageFileManager2::setOsInstallCondition()でOSを指定
  • PEAR_PackageFileManager2::addIgnoreToRelease()で該当のファイルを除外
です。上記の例でのサンプル。

 
$packagexml->addRelease();
$packagexml->setOsInstallCondition("windows");
$packagexml->addIgnoreToRelease("bin/hoge.sh"); 
 
$packagexml->addRelease();
$packagexml->setOsInstallCondition("unix");
$packagexml->addIgnoreToRelease("bin/hoge.bat");
 

Category: Nucleus | Posted on: 2007/08/29 13:33 | Viewed: 784

Comments

No comments yet

Add Comment

:

:
:

TrackBacks

このエントリにトラックバックはありません

TrackBack URL

http://www.azul.systems-noel.jp/trackback/item_56.html