From fcfb9c26e444f643f44789618d1f1ebc25429ac4 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 25 Aug 2013 16:28:54 +0100 Subject: dgit build uses dpkg-buildpackage --- debian/changelog | 4 +++- dgit | 11 ++++++++++- dgit.1 | 29 ++++++++++++++++++----------- 3 files changed, 31 insertions(+), 13 deletions(-) diff --git a/debian/changelog b/debian/changelog index 5d32b0c..f3bce71 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,11 +11,13 @@ dgit (0.11) unstable; urgency=low * Use "ftp.debian.org" not "http.debian.net" as the default Debian archive. (http.debian.net tends to defeat certain kinds of cacheing, and can also have more skew.) + * dgit build uses dpkg-buildpackage; there is a dgit git-build + for using git-buildpackage. * Better error message for use of UNRELEASED suite. Closes: #720523. * Do not canonicalise suite more than once. Related to: #720526. * Fix a badly open-coded copy of check_not_dirty. Closes: #720524. * Fix some bugs in building (eg build-source would fail to do the quilt - fixup). + fixup; the --clean check in build was wrong). -- diff --git a/dgit b/dgit index 1db2cdb..03542c3 100755 --- a/dgit +++ b/dgit @@ -1063,7 +1063,16 @@ sub build_prep () { } sub cmd_build { - badusage "dgit build implies --clean=dpkg-source" if defined $package; + badusage "dgit build implies --clean=dpkg-source" + if $clean ne 'dpkg-source'; + build_prep(); + runcmd_ordryrun @dpkgbuildpackage, qw(-us -uc), changesopts(), @ARGV; + printdone "build successful\n"; +} + +sub cmd_git_build { + badusage "dgit git-build implies --clean=dpkg-source" + if $clean ne 'dpkg-source'; build_prep(); my @cmd = (qw(git-buildpackage -us -uc --git-no-sign-tags), diff --git a/dgit.1 b/dgit.1 index 1abb7ec..9740856 100644 --- a/dgit.1 +++ b/dgit.1 @@ -82,22 +82,20 @@ into the current branch. .TP \fBdgit build\fR ... Runs -.B git-buildpackage +.B dpkg-buildpackage with some suitable options. Options and argumments after build -will be passed on to git-buildpackage. It is not necessary to use +will be passed on to dpkg-buildpackage. It is not necessary to use dgit build when using dgit; it is OK to use any approach which ensures that the generated source package corresponds to the relevant git commit. -.B NB -that this function will be changed in the future to use -dpkg-buildpackage directly. - Tagging, signing and actually uploading should be left to dgit push. .TP \fBdgit build-source\fR ... Builds the source package, and a changes file for a prospective -source-only upload. The output is left in +source-only upload, using +.BR dpkg-source . +The output is left in .IR package \fB_\fR version \fB.dsc\fR and .IR package \fB_\fR version \fB_source.changes\fR. @@ -105,14 +103,23 @@ and Tagging, signing and actually uploading should be left to dgit push. .TP \fBdgit sbuild\fR ... -Constructs the source package, and uses sbuild to do a binary -build, and uses mergechanges to merge the source and binary -changes files. Options and argumments after sbuild will be passed on -to sbuild. Changes files matching +Constructs the source package, uses +.B sbuild +to do a binary build, and uses mergechanges to merge the source and +binary changes files. Options and argumments after sbuild will be +passed on to sbuild. Changes files matching .IB package _ version _*.changes in the parent directory will be removed; the output is left in .IR package \fB_\fR version \fB_multi.changes\fR. +Tagging, signing and actually uploading should be left to dgit push. +.TP +\fBdgit git-build\fR ... +Runs +.B git-buildpackage +with some suitable options. Options and argumments after git-build +will be passed on to git-buildpackage. + Tagging, signing and actually uploading should be left to dgit push. .TP .B dgit push -- cgit v1.2.3