これはアプリケーションのDebian/ルールです。と言うネックス。 GNU/Linux の CPU-Z 代替品であり、次のファイルを含む debian サブディレクトリがあります。
┌─[shirish@debian] - [~/games/I-Nex] - [4454]
└─[$] ll -r debian
-rw-r--r-- 1 shirish shirish 296 2016-11-13 02:12 i-nex-library.desktop
-rw-r--r-- 1 shirish shirish 93 2016-11-13 02:12 gbp.conf
-rw-r--r-- 1 shirish shirish 16588 2016-11-13 02:12 copyright
-rw-r--r-- 1 shirish shirish 14328 2016-11-13 02:12 changelog
drwxr-xr-x 2 shirish shirish 4096 2016-11-13 02:12 source
-rwxr-xr-x 1 shirish shirish 384 2016-11-13 02:12 rules
-rw-r--r-- 1 shirish shirish 63 2016-11-13 02:12 manpages
-rw-r--r-- 1 shirish shirish 110 2016-11-13 02:12 i-nex.triggers
-rw-r--r-- 1 shirish shirish 6535 2016-11-13 02:12 i-nex.desktop
-rw-r--r-- 1 shirish shirish 1408 2016-11-13 03:16 control
-rw-r--r-- 1 shirish shirish 2 2016-11-13 03:16 compat
-rw-r--r-- 1 shirish shirish 6 2016-11-13 03:17 debhelper-build-stamp
drwxr-xr-x 5 shirish shirish 4096 2016-11-13 03:18 i-nex
-rw-r--r-- 1 shirish shirish 62 2016-11-13 03:19 i-nex.substvars
-rw-r--r-- 1 shirish shirish 91 2016-11-13 03:19 files
-rw-r--r-- 1 shirish shirish 455 2016-11-13 03:19 i-nex.debhelper.log
次の2つのコマンドを実行すると、最後にDebianパッケージが表示されます。
$ fakeroot debian/rules build
$ fakeroot debian/rules binary
上記のリストを見ると、バックエンドでdebhelperがタイムスタンプとビルドログに基づいてビルドプロセスを実行していることが明らかです。これも実行して確認された。
$ fakeroot debian/rules clean
debian サブディレクトリにはすべての debhelper エントリが削除されました。
これでdebian / rulesであることがわかります。
┌─[shirish@debian] - [~/games/I-Nex] - [4453]
└─[$] cat debian/rules
#!/usr/bin/make -f
LSB_CS = $(shell lsb_release -cs)
ifeq ($(LSB_CS),lucid)
COMPRESSION = -- -z9 -Zgzip
else
COMPRESSION = -- -z9 -Zxz
endif
override_dh_autoreconf:
cd I-Nex && autoreconf -i
override_dh_auto_configure:
dh_auto_configure --sourcedirectory=I-Nex
override_dh_builddeb:
dh_builddeb $(COMPRESSION)
override_dh_fixperms:
dh_fixperms
%:
dh $@ --with autoreconf
今これによると回答、変更する唯一のことは最後の行のようです。
dh $@ --with autoreconf
そして
dh $@ --parallel --with autoreconf
もちろん、これは並列にコンパイルしても依存関係が失われないことを前提としています。私は何を逃したことがありませんか?
答え1
はい、互換性レベル9では
dh $@ --parallel --with autoreconf
並列ビルドを有効にするのに十分です。パラレルビルドの「欠落している依存関係」は、Makefile
パッケージ依存関係ではなく、アップストリームビルドルールなどのターゲット依存関係を表します。
互換性レベル10の場合、上記の2つのオプションがデフォルトで有効になっているため
dh $@
並列ビルドを有効にするのに十分ですautoreconf
。
dh
マニュアルページにはdebhelper
すべての詳細が含まれています。