每一個 rules
文件,就像其他的 Makefile
一樣,包含著若干條 rules因痛,其中每一個都定義了一個 target 以及其具體操作婚苹。 一個新的 rule 以自己的 target 聲明開頭,后續(xù)的行都以 TAB 開頭鸵膏,以指示 target 的具體行為膊升。
當你想要執(zhí)行一個 rule 的時候,就將 target 名稱作為命令行參數(shù)來調(diào)用谭企。比如說廓译,debian/rules clean binary
會執(zhí)行 clean 和 binary 兩個 target。
以下是對各 target 的簡單解釋:
-
clean
(必需):清理所有編譯的债查、生成的文件或編譯樹中無用的文件非区。 -
build
(必需):在編譯樹中將代碼編譯為程序并生成格式化的文檔。 -
build-arch
(必需):在編譯樹中將代碼編譯為依賴于體系結(jié)構的程序盹廷。 -
build-indep
(必需):在編譯樹中將代碼編譯為獨立于平臺的格式化文檔征绸。 -
install
(可選):把文件安裝到debian
目錄內(nèi)為各個二進制包構建的文件樹。如果有定義俄占,那么binary*
target 會依賴于此 target管怠。(可選) -
binary
(必需):創(chuàng)建所有二進制包(是binary-arch
和binary-indep
的合并)。 -
binary-arch
(必需):在父目錄中創(chuàng)建平臺依賴(Architecture: any
)的二進制包缸榄。 -
binary-indep
(必需):在父目錄中創(chuàng)建平臺獨立(Architecture: all
)的二進制包渤弛。 -
get-orig-source
(可選):從上游站點獲得最新的原始源代碼包。
其中:
-
debian/rules clean
運行了dh clean
甚带,其實際執(zhí)行的命令為:- dh_testdir
- dh_auto_clean
- dh_clean
-
debian/rules build
運行了dh build
她肯,其實際執(zhí)行的命令為:- dh_testdir
- dh_auto_configure
- dh_auto_build
- dh_auto_test
-
fakeroot debian/rules binary
執(zhí)行了fakeroot dh binary
,其實際執(zhí)行的命令為:- dh_testroot
- dh_prep
- dh_installdirs
- dh_auto_install
- dh_install
- dh_installdocs
- dh_installchangelogs
- dh_installexamples
- dh_installman
- dh_installcatalogs
- dh_installcron
- dh_installdebconf
- dh_installemacsen
- dh_installifupdown
- dh_installinfo
- dh_installinit
- dh_installmenu
- dh_installmime
- dh_installmodules
- dh_installlogcheck
- dh_installlogrotate
- dh_installpam
- dh_installppp
- dh_installudev
- dh_installwm
- dh_installxfonts
- dh_bugfiles
- dh_lintian
- dh_gconf
- dh_icons
- dh_perl
- dh_usrlocal
- dh_link
- dh_compress
- dh_fixperms
- dh_strip
- dh_makeshlibs
- dh_shlibdeps
- dh_installdeb
- dh_gencontrol
- dh_md5sums
- dh_builddeb
-
fakeroot debian/rules binary-arch
執(zhí)行了fakeroot dh binary-arch
鹰贵。 -
fakeroot debian/rules binary-indep
執(zhí)行了fakeroot dh binary-indep
晴氨,這會運行幾乎和fakeroot dh binary
一樣的命令,但dh_strip
碉输、dh_makeshlibs
和dh_shlibdeps
除外瑞筐,其他命令則均附加-i
選項。
假設上游存在一個 Makefile 的環(huán)境腊瑟,dh_auto_build 會使用 make
命令執(zhí)行 Makefile 中的第一個 target聚假。
參考文獻:
[1] debian 目錄中的必須內(nèi)容
[2] 使用fakeroot模擬root權限執(zhí)行程序