德贝助手的默认序列

  • 本文关键字:默认 debhelper
  • 更新时间 :
  • 英文 :


我试图更好地了解debhelper的dh工具。据我了解,dh是各种dh_*帮助工具的前端。这些帮助程序工具既可以独立调用,也可以从dh工具自动调用。通常会创建一个debian/rules文件,该文件以某种方式调用dh并可能覆盖某些dh_*调用。 然后,dh似乎知道需要调用哪些dh_*工具以及以哪种顺序调用。

/usr/share/doc/debhelper/examples/rules.tiny下的示例包含以下内容作为debian/rules文件的示例:

#!/usr/bin/make -f
%:
dh $@

由于此规则文件的结果,dh执行的dh_*帮助程序工具的顺序是什么?更重要的是,dh如何确定这个序列,以及在哪里记录

将执行的帮助程序工具的顺序取决于以下几点:

  1. 这些包括:build-archbuild-indepbuildcleaninstall-indepinstall-archinstallbinary-archbinary-indepbinary。这些(大部分)的含义在 Debian 政策 §4.9 中讨论过。
  2. Debhelper 兼容级别(如debian/compat文件所示)
  3. 您的 Debhelper 版本(尽管在给定相同的兼容级别的情况下,努力使不同的版本工作相同)
  4. 自上次清理以来已经运行了哪些辅助命令(在 DebHelper 兼容级别 9 及更低版本中)
  5. 正在使用哪些插件(--with--without选项)
  6. 生成文件中存在哪些覆盖目标(例如override_dh_auto_test)

如您所见,对于所有可能的构建目标和配置安排(甚至只是最常见的),记录运行哪些命令,以什么顺序运行可能会令人困惑。因此,知道的方法是使用--no-act参数来dh,并按照您想要的方式设置您的构建目录。

下面是一个示例,在我刚刚使用dh_make创建的虚拟构建目录中使用binary目标运行,放入兼容级别 10。您将看到的确切命令或确切顺序可能会略有不同:

~/dh-demo$ dh binary --no-act
dh_testdir
dh_update_autotools_config
dh_autoreconf
dh_auto_configure
dh_auto_build
dh_auto_test
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_systemd_enable
dh_installinit
dh_systemd_start
dh_installmenu
dh_installmime
dh_installmodules
dh_installlogcheck
dh_installlogrotate
dh_installpam
dh_installppp
dh_installudev
dh_installgsettings
dh_bugfiles
dh_ucf
dh_lintian
dh_gconf
dh_icons
dh_perl
dh_usrlocal
dh_link
dh_installwm
dh_installxfonts
dh_strip_nondeterminism
dh_compress
dh_fixperms
dh_strip
dh_makeshlibs
dh_shlibdeps
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb

相关内容

  • 没有找到相关文章

最新更新