
Debian パッケージを作成するためのスクリプトは存在し、動作します。それらを変更する必要があります。新しい特定のケースでは、パッケージに含めたいオプションのファイルがいくつかある場合があります。
これらを package.install に追加すると、それらのファイルのみが存在しないため失敗します。これらを package.install に追加しないと、たとえ存在していてもパッケージに含まれません。
特定のケースを判断するために、特別な環境変数があります:SPECIFIC_CASE=CASE
特別な場合に備えて、これらのファイルを検索するには、Debian パッケージ作成スクリプトをどのように設定すればよいでしょうか?
ファイルrules
(Makefile として設計されています)にはターゲットがあります:
copy_files:
override_dh_install:
override_dh_auto_install: (empty)
...list of other overrides...
install:
postbuild:
clean:
答え1
Debian のほとんどのパッケージング ツールでは、パッケージの内容は実行時package
の内容になります。 ファイルは好きなように配置でき、 (ファイルを処理するツール)に依存する必要はありません。debian/package
dpkg-deb
dh_install
.install
したがって:
override_dh_install:
dh_install
install blah debian/package/wherever
などです。ここで条件付きファイル処理を追加します。
しかしパッケージ仕様 (これは Debian に限ったことではありません) は一貫している必要があることを認識することが重要です。つまり特定のアーキテクチャでは、パッケージをビルドすると常に同じパッケージ内容になります。オプションのコンテンツをパッケージ化するには、通常、すべてのファイルが生成されるようにプロジェクトをビルドし、それらを異なるパッケージにディスパッチします。すべてのファイルをインストールする必要はありません。(これはできる多大な努力を伴う、例えばGCC ビルドには、コンパイラ ドライバーが利用可能なすべての言語を認識するためのいくつかのトリックがありますが、すべてをインストールする必要はありません。