`git-buildpackage` 不调用 ./configure,为什么?

`git-buildpackage` doesn't call ./configure, why?

我正在尝试创建我自己的 .deb 文件,但 git-buildpackage 似乎没有调用 ./configure 来构建它(我故意遗漏了一个依赖项,以便看到它失败,但它不会失败!)。

我这样称呼它:

git-buildpackage --git-builder="git-pbuilder"

输出的最后部分是:

Setting up fakeroot (1.20.2-1) ...
update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode
I: Copying back the cached apt archive contents
I: Copying source file
I: copying [/home/knocte/pkging/gstreamer-sharp-1_0.99.0-1.dsc]
I: copying [/home/knocte/pkging/gstreamer-sharp-1_0.99.0.orig.tar.gz]
I: copying [/home/knocte/pkging/gstreamer-sharp-1_0.99.0-1.debian.tar.xz]
I: Extracting source
dpkg-source: warning: extracting unsigned source package (gstreamer-sharp-1_0.99.0-1.dsc)
dpkg-source: info: extracting gstreamer-sharp-1 in gstreamer-sharp-1-0.99.0
dpkg-source: info: unpacking gstreamer-sharp-1_0.99.0.orig.tar.gz
dpkg-source: info: unpacking gstreamer-sharp-1_0.99.0-1.debian.tar.xz
I: Building the package
I: Running cd tmp/buildd/*/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin" dpkg-buildpackage -us -uc  -rfakeroot
dpkg-buildpackage: source package gstreamer-sharp-1
dpkg-buildpackage: source version 0.99.0-1
dpkg-buildpackage: source distribution unstable
dpkg-buildpackage: source changed by Andres G. Aragoneses <knocte@gmail.com>
 dpkg-source --before-build gstreamer-sharp-1-0.99.0
dpkg-buildpackage: host architecture amd64
 fakeroot debian/rules clean
dh clean
   dh_testdir
   dh_auto_clean
   dh_clean
 dpkg-source -b gstreamer-sharp-1-0.99.0
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building gstreamer-sharp-1 using existing ./gstreamer-sharp-1_0.99.0.orig.tar.gz
dpkg-source: info: building gstreamer-sharp-1 in gstreamer-sharp-1_0.99.0-1.debian.tar.xz
dpkg-source: info: building gstreamer-sharp-1 in gstreamer-sharp-1_0.99.0-1.dsc
 debian/rules build
dh build
   dh_testdir
   dh_auto_configure
   dh_auto_build
   dh_auto_test
 fakeroot debian/rules binary
dh binary
   dh_testroot
   dh_prep
   dh_auto_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_compress
   dh_fixperms
   dh_strip
   dh_makeshlibs
   dh_shlibdeps
   dh_installdeb
   dh_gencontrol
dpkg-gencontrol: warning: Depends field of package libgstreamer1.0-cil: unknown substitution variable ${shlibs:Depends}
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
dpkg-gencontrol: warning: File::FcntlLock not available; using flock which is not NFS-safe
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'libgstreamer1.0-cil' in '../libgstreamer1.0-cil_0.99.0-1_amd64.deb'.
dpkg-deb: building package 'libgstreamer1.0-cil-dev' in '../libgstreamer1.0-cil-dev_0.99.0-1_all.deb'.
dpkg-deb: building package 'monodoc-gstreamer-manual' in '../monodoc-gstreamer-manual_0.99.0-1_all.deb'.
 dpkg-genchanges  >../gstreamer-sharp-1_0.99.0-1_amd64.changes
dpkg-genchanges: including full source code in upload
 dpkg-source --after-build gstreamer-sharp-1-0.99.0
dpkg-buildpackage: full upload (original source is included)
I: Copying back the cached apt archive contents
I: unmounting dev/pts filesystem
I: unmounting run/shm filesystem
I: unmounting proc filesystem
I: Current time: Sun Jun  7 01:55:15 CEST 2015
I: pbuilder-time-stamp: 1433634915
 -> Cleaning COW directory
  forking: rm -rf /var/cache/pbuilder/build//cow.21117 

(完整输出参考my gist。)

原来 upstream tarball(和分支)没有 configure 文件,所以它只是跳过它(静默失败)。

tarball 有一个 autogen.sh 文件而不是 configure 文件的事实是上游的一个错误(他们实际上已经在 master 中修复了,他们知道他们的 make dist 过程是越野车)。要解决此错误以打包此错误版本,则必须将其添加到 debian/rules 文件中:

override_dh_auto_configure:
    ./autogen.sh

(摘自this guide。)