アプリケーションパッケージ開発者ガイド

pkgproto コマンドで作成した prototype ファイルの微調整

pkgproto コマンドは、初期の prototype ファイルを作成するのに役立ちますが、定義が必要な各パッケージオブジェクトのエントリは作成しません。このコマンドでは、エントリは完了されません。pkgproto コマンドは、次のどちらの処理も実行しません。

ファイルタイプ vex、および i を指定したオブジェクトのエントリの作成

少なくとも、prototype ファイルを変更して、ファイルタイプ i を指定したオブジェクトを追加する必要があります。情報ファイルとインストールスクリプトをパッケージディレクトリの最初のレベルに格納した場合 (例: /home/jane/SUNWcadap/pkginfo)、prototype ファイル内のエントリは次のようになります。


i pkginfo

情報ファイルとインストールスクリプトをパッケージディレクトリの最初のレベルに格納しなかった場合、それらのソースの場所を指定する必要があります。次に例を示します。


i pkginfo=/home/jane/InfoFiles/pkginfo

あるいは、!search コマンドを使用して、パッケージの構築時に pkgmk コマンドの場所を検索するように指定できます。詳細については、pkgmk コマンドの検索パスの指定」を参照してください。

ファイルタイプ ve、および x を指定したオブジェクトのエントリを追加するには、prototype ファイルの形式」で説明されている形式に従うか、prototype(4) のマニュアルページを参照してください。


注 –

必ず、e (編集可能) のファイルタイプを指定したファイルにクラスを割り当て、そのクラスの関連するクラスアクションスクリプトを含めるようにしてください。そのようにしない場合、パス名がその他のパッケージと共有されていても、パッケージの削除時にこれらのファイルも削除されます。


複数のクラス定義の使用

pkgproto コマンドを使用して基本的なprototype ファイルを作成する場合、すべてのパッケージオブジェクトを、 none クラスまたはある特定のクラスに割り当てることができます。「例—pkgproto コマンドを使用した prototype ファイルの作成」で示されるように、基本的な pkgproto コマンドは、すべてのオブジェクトを none クラスに割り当てます。すべてのオブジェクトをある特定のクラスに割り当てるには、-c オプションを使用します。次に例を示します。


$ pkgproto -c classname /home/jane/SUNWcadap > /home/jane/InfoFiles/prototype

複数のクラスを使用する場合、prototype ファイルを手動で編集し、各オブジェクトの class フィールドを変更することが必要になります。また、クラスを使用する場合には、pkginfo ファイルに CLASSES パラメータを定義し、クラスアクションスクリプトを書く必要もあります。クラスの使用は、省略可能な機能であり、「クラスアクションスクリプトの書き込み」で詳細に説明されています。

例—pkgproto コマンドを使用して作成した prototype ファイルの微調整

Example—Creating a prototype File With the pkgproto Commandで説明されている pkgproto コマンドで 「例—pkgproto コマンドを使用した prototype ファイルの作成」 ファイルを作成した場合、いくつかの変更を行う必要があります。