[buildd-tools-devel] Bug#674669: Bug#674669: Bug#674669: Bug#674669: sbuild: Unable to get .changes when using --debbuildopt=-A
Daniel Dehennin
daniel.dehennin at baby-gnu.org
Mon Jul 2 12:31:01 UTC 2012
Roger Leigh <rleigh at codelibre.net> writes:
> Not yet, but hopefully something this week or next.
I made a patch[1] since I need it for my poor-man-wanna-build, I inline
it here for review[2].
Regards.
From 0e4ee335e271cc980a3e169e437144c82f3be508 Mon Sep 17 00:00:00 2001
From: Daniel Dehennin <daniel.dehennin at baby-gnu.org>
Date: Mon, 2 Jul 2012 14:27:07 +0200
Subject: [PATCH] Workaround #674669: Manage _all.changes since dpkg 1.16.2
* lib/Sbuild/Build.pm: Use _all.changes file name if we passed -A to
dpkg-buildpackage and if the file exists.
---
lib/Sbuild/Build.pm | 27 +++++++++++++++++++++++----
1 file changed, 23 insertions(+), 4 deletions(-)
diff --git a/lib/Sbuild/Build.pm b/lib/Sbuild/Build.pm
index fe6b07c..61f8a99 100644
--- a/lib/Sbuild/Build.pm
+++ b/lib/Sbuild/Build.pm
@@ -1628,7 +1628,13 @@ sub build {
}
$self->log_subsection("Changes");
- $changes = $self->get('Package_SVersion') . "_$host_arch.changes";
+ if ( (grep {$_ eq "-A"} @{$self->get_conf('DPKG_BUILDPACKAGE_USER_OPTIONS')})
+ and -r "$build_dir/" . $self->get('Package_SVersion') . "_all.changes") {
+ $changes = $self->get('Package_SVersion') . "_all.changes";
+ }
+ else {
+ $changes = $self->get('Package_SVersion') . "_$host_arch.changes";
+ }
my @cfiles;
if (-r "$build_dir/$changes") {
my(@do_dists, @saved_dists);
@@ -2200,8 +2206,15 @@ sub close_build_log {
if ($self->get_status() eq "successful") {
if (defined($self->get_conf('KEY_ID')) && $self->get_conf('KEY_ID')) {
my $key_id = $self->get_conf('KEY_ID');
+ my $changes;
$self->log(sprintf("Signature with key '%s' requested:\n", $key_id));
- my $changes = $self->get('Package_SVersion') . '_' . $self->get('Host Arch') . '.changes';
+ if ( grep {$_ eq "-A"} @{$self->get_conf('DPKG_BUILDPACKAGE_USER_OPTIONS')}
+ and -r $self->get('Package_SVersion') . "_all.changes") {
+ $changes = $self->get('Package_SVersion') . "_all.changes";
+ }
+ else {
+ $changes = $self->get('Package_SVersion') . '_' . $self->get('Host Arch') . '.changes';
+ }
system "debsign", "-k$key_id", $changes;
}
}
@@ -2307,8 +2320,14 @@ sub send_mime_build_log {
Filename => basename($filename) . '.gz'
);
}
-
- my $changes = $self->get('Package_SVersion') . '_' . $self->get('Host Arch') . '.changes';
+ my $changes;
+ if ( grep {$_ eq "-A"} @{$self->get_conf('DPKG_BUILDPACKAGE_USER_OPTIONS')}
+ and -r $self->get('Package_SVersion') . "_all.changes") {
+ $changes = $self->get('Package_SVersion') . "_all.changes";
+ }
+ else {
+ $changes = $self->get('Package_SVersion') . '_' . $self->get('Host Arch') . '.changes';
+ }
if ($self->get_status() eq 'successful' && -r $changes) {
my $log_part = MIME::Lite->new(
Type => 'text/plain',
--
1.7.10
Footnotes:
[1] http://git.baby-gnu.net/gitweb/?p=sbuild.git;a=shortlog;h=refs/heads/dad/674669
[2] The .changes file name is calculated 3 times, I think this can be
optimized ;-)
--
Daniel Dehennin
Récupérer ma clef GPG:
gpg --keyserver pgp.mit.edu --recv-keys 0x7A6FE2DF
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 229 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/buildd-tools-devel/attachments/20120702/0ba3cc38/attachment.pgp>
More information about the Buildd-tools-devel
mailing list