This is an automated email from the git hooks/post-receive script. osamu pushed a commit to branch master in repository devscripts.
commit cd1d5e8429aaa335731a524b089c8d2107ad8c0d Author: Osamu Aoki <[email protected]> Date: Sun Aug 27 17:31:04 2017 +0900 mk-origtargz: refactor to support symlink --- scripts/mk-origtargz.pl | 73 ++++++++++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 31 deletions(-) diff --git a/scripts/mk-origtargz.pl b/scripts/mk-origtargz.pl index 6bd0be5..e35b142 100644 --- a/scripts/mk-origtargz.pl +++ b/scripts/mk-origtargz.pl @@ -413,42 +413,12 @@ if ($is_tarfile and not $repack) { } } -# Gather information about the signature file. - -my $is_ascfile = $signature_file =~ /\.asc$/i; -my $is_gpgfile = $signature_file =~ /\.(gpg|pgp|sig|sign)$/i; - # Now we know what the final filename will be my $destfilebase = sprintf "%s_%s.%s.tar", $package, $version, $orig; my $destfiletar = sprintf "%s/%s", $destdir, $destfilebase; my $destext = compression_get_property($compression, "file_ext"); my $destfile = sprintf "%s.%s", $destfiletar, $destext; -my $destsigfile; -if ($signature == 1) { - $destsigfile = sprintf "%s.asc", $destfile; -} elsif ($signature == 2) { - $destsigfile = sprintf "%s.asc", $destfiletar; -} else { - # XXX FIXME XXX place holder - $destsigfile = sprintf "%s.asc", $destfile; -} - -if ($signature != 0) { - if ($is_gpgfile) { - my $enarmor = `gpg --output - --enarmor $signature_file 2>&1`; - $? == 0 or die "mk-origtargz: Failed to convert $signature_file to *.asc\n"; - $enarmor =~ s/ARMORED FILE/SIGNATURE/; - $enarmor =~ /^Comment:/d; - open(DESTSIG, ">> $destsigfile") or die "mk-origtargz: Failed to open $destsigfile for append: $!\n"; - print DESTSIG $enarmor; - } else { - if (abs_path($signature_file) ne abs_path($destsigfile)) { - copy $signature_file, $destsigfile; - } - } -} - # $upstream_tar is $upstream, unless the latter was a zip file. my $upstream_tar = $upstream; @@ -602,7 +572,7 @@ if ($do_repack || $deletecount) { $upstream_tar = $destfile; } -# Final step: symlink, copy or rename. +# Final step: symlink, copy or rename for tarball. my $same_name = abs_path($destfile) eq abs_path($upstream); unless ($same_name) { @@ -618,6 +588,47 @@ unless ($same_name) { } } +# Final step: symlink, copy or rename for signature file. + +my $is_ascfile = $signature_file =~ /\.asc$/i; +my $is_gpgfile = $signature_file =~ /\.(gpg|pgp|sig|sign)$/i; + +my $destsigfile; +if ($signature == 1) { + $destsigfile = sprintf "%s.asc", $destfile; +} elsif ($signature == 2) { + $destsigfile = sprintf "%s.asc", $destfiletar; +} else { + # XXX FIXME XXX place holder + $destsigfile = sprintf "%s.asc", $destfile; +} + +if ($signature != 0) { + if ($mode eq "repack") { + print "Skip adding upstream signature since tarball is repacked.\n"; + } elsif ($is_gpgfile) { + my $enarmor = `gpg --output - --enarmor $signature_file 2>&1`; + $? == 0 or die "mk-origtargz: Failed to convert $signature_file to *.asc\n"; + $enarmor =~ s/ARMORED FILE/SIGNATURE/; + $enarmor =~ /^Comment:/d; + open(DESTSIG, ">> $destsigfile") or die "mk-origtargz: Failed to open $destsigfile for append: $!\n"; + print DESTSIG $enarmor; + } else { + if (abs_path($signature_file) ne abs_path($destsigfile)) { + if ($mode eq "symlink") { + my $rel = File::Spec->abs2rel($signature_file, $destdir); + symlink $rel, $destsigfile; + } elsif ($mode eq "copy") { + copy $signature_file, $destsigfile; + } elsif ($mode eq "rename") { + move $signature_file, $destsigfile; + } else { + die "Strange mode=\"$mode\"\n"; + } + } + } +} + # Final check: Is the tarball usable # We are lazy and rely on Dpkg::IPC to report an error message (spawn does not report back the error code). -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/collab-maint/devscripts.git _______________________________________________ devscripts-devel mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/devscripts-devel
