`debian/control` ファイルの条件付き依存関係

`debian/control` ファイルの条件付き依存関係

私は公式のDebianディストリビューションに付属している特定のバージョンのライブラリに依存するソフトウェアをパッケージ化しています。ソフトウェアにはバンドルライブラリソースもあります。

debian/control10より前のDebianバージョンでは何も指定する必要はありませんが、10以上の場合、リリースされたバージョンをビルド要件として使用できるようにファイルでこれを説明する方法はありますか?

また、以前のバージョンでは(ファイルでどのように検出されますか?)、構成ステップで追加のオプションを渡す必要がdebian/rulesありました。cmake

ベストアンサー1

これに対するルールはありません。ソースパッケージ(含むdebian/control)は、そのディストリビューションで動作するビルドの依存関係を含むビルドガイドラインとともに、特定のディストリビューションとバージョンにアップロードする必要があります。

debian/control場合によってはすぐに変更できますが、debian/rulesビルドが開始される前に解決されるため、ビルドの依存関係には適用されません。

実際には、2つのアプローチが適している可能性があります。

  • 公開ソースをインポートして関心のある各ターゲットの合計を生成するには、一種のテンプレートツールを使用してくださいdebian/controldebian/rules

  • バージョン管理システムのブランチを使用して個々のターゲットを分離しますが、それでもかなり簡単なメンテナンスが可能です。

後者は、複数のターゲットにアップロードを許可する必要があるときにDebianのほとんどのパッケージを維持する方法です(例えば実験的、安定的、またはバックポートで不安定)。

また、以前のバージョンでは(ファイルでどのように検出されますか?)、構成ステップで追加のオプションを渡す必要がdebian/rulesありました。cmake

以前のバージョンを検出して動作をハードコードするのではなく、実装したい動作を検出するだけです。たとえば、システムに依存ライブラリがあることを確認してからcmake呼び出しを調整したり、cmake問題がある場合はインストールされますcmake

おすすめ記事