From cabd780cae125bed23f70d57db05ae0f32d8df4c Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 15 Apr 2024 20:40:37 +0200 Subject: Merging upstream version 1.22.5. Signed-off-by: Daniel Baumann --- scripts/Dpkg/BuildOptions.pm | 10 +-- scripts/Dpkg/Changelog/Entry.pm | 16 ++-- scripts/Dpkg/Deps/Simple.pm | 8 +- scripts/Dpkg/OpenPGP/Backend/GnuPG.pm | 4 +- scripts/Dpkg/OpenPGP/Backend/Sequoia.pm | 4 +- scripts/Dpkg/Shlibs/Symbol.pm | 28 +++---- scripts/Dpkg/Source/Package/V1.pm | 22 +++-- scripts/Dpkg/Vendor/Debian.pm | 49 ++++++++++- scripts/Dpkg/Vendor/Default.pm | 13 +++ scripts/Dpkg/Vendor/Ubuntu.pm | 66 +++++++++++++-- scripts/Makefile.am | 133 ++++++++++++++++-------------- scripts/Makefile.in | 141 +++++++++++++++++++------------- scripts/Test/Dpkg.pm | 1 + scripts/dpkg-buildapi.pl | 10 ++- scripts/dpkg-mergechangelogs.pl | 15 ++-- scripts/dpkg-shlibdeps.pl | 14 ++-- scripts/dpkg-source.pl | 8 +- scripts/mk/Makefile.in | 7 ++ scripts/po/ca.gmo | Bin 122008 -> 121651 bytes scripts/po/ca.po | 36 +++++--- scripts/po/de.gmo | Bin 121176 -> 121226 bytes scripts/po/de.po | 37 +++++---- scripts/po/dpkg-dev.pot | 26 +++--- scripts/po/es.po | 30 ++++--- scripts/po/fr.po | 30 ++++--- scripts/po/nl.po | 30 ++++--- scripts/po/pl.po | 30 ++++--- scripts/po/pt.po | 30 ++++--- scripts/po/ru.po | 30 ++++--- scripts/po/sv.gmo | Bin 115613 -> 115257 bytes scripts/po/sv.po | 36 +++++--- scripts/t/Dpkg_BuildFlags.t | 117 +++++++++++++++++++++++++- scripts/t/Dpkg_OpenPGP.t | 1 + 33 files changed, 645 insertions(+), 337 deletions(-) (limited to 'scripts') diff --git a/scripts/Dpkg/BuildOptions.pm b/scripts/Dpkg/BuildOptions.pm index 5b53655..6c2a189 100644 --- a/scripts/Dpkg/BuildOptions.pm +++ b/scripts/Dpkg/BuildOptions.pm @@ -180,13 +180,11 @@ sub parse_features { my $value = ($1 eq '+') ? 1 : 0; if ($feature eq 'all') { $use_feature->{$_} = $value foreach keys %{$use_feature}; + } elsif (exists $use_feature->{$feature}) { + $use_feature->{$feature} = $value; } else { - if (exists $use_feature->{$feature}) { - $use_feature->{$feature} = $value; - } else { - warning(g_('unknown %s feature in %s variable: %s'), - $option, $self->{envvar}, $feature); - } + warning(g_('unknown %s feature in %s variable: %s'), + $option, $self->{envvar}, $feature); } } else { warning(g_('incorrect value in %s option of %s variable: %s'), diff --git a/scripts/Dpkg/Changelog/Entry.pm b/scripts/Dpkg/Changelog/Entry.pm index e572909..d55e5fd 100644 --- a/scripts/Dpkg/Changelog/Entry.pm +++ b/scripts/Dpkg/Changelog/Entry.pm @@ -154,16 +154,14 @@ sub extend_part { } else { push @{$self->{$part}}, $value; } + } elsif (defined $self->{$part}) { + if (ref($value)) { + $self->{$part} = [ $self->{$part}, @$value ]; + } else { + $self->{$part} .= $value; + } } else { - if (defined($self->{$part})) { - if (ref($value)) { - $self->{$part} = [ $self->{$part}, @$value ]; - } else { - $self->{$part} .= $value; - } - } else { - $self->{$part} = $value; - } + $self->{$part} = $value; } } diff --git a/scripts/Dpkg/Deps/Simple.pm b/scripts/Dpkg/Deps/Simple.pm index a2ab2b1..e4888ed 100644 --- a/scripts/Dpkg/Deps/Simple.pm +++ b/scripts/Dpkg/Deps/Simple.pm @@ -438,12 +438,10 @@ sub implies { if (defined $implication) { if (not defined $res) { $res = $implication; + } elsif ($implication) { + $res = 1; } else { - if ($implication) { - $res = 1; - } else { - $res = 0; - } + $res = 0; } last if defined $res and $res == 1; } diff --git a/scripts/Dpkg/OpenPGP/Backend/GnuPG.pm b/scripts/Dpkg/OpenPGP/Backend/GnuPG.pm index 9c53ef1..6c834be 100644 --- a/scripts/Dpkg/OpenPGP/Backend/GnuPG.pm +++ b/scripts/Dpkg/OpenPGP/Backend/GnuPG.pm @@ -46,7 +46,7 @@ use Dpkg::OpenPGP::ErrorCodes; use parent qw(Dpkg::OpenPGP::Backend); sub DEFAULT_CMDV { - return [ qw(gpgv) ]; + return [ qw(gpgv-sq gpgv) ]; } sub DEFAULT_CMDSTORE { @@ -54,7 +54,7 @@ sub DEFAULT_CMDSTORE { } sub DEFAULT_CMD { - return [ qw(gpg) ]; + return [ qw(gpg-sq gpg) ]; } sub has_backend_cmd { diff --git a/scripts/Dpkg/OpenPGP/Backend/Sequoia.pm b/scripts/Dpkg/OpenPGP/Backend/Sequoia.pm index ae4acc1..36801c9 100644 --- a/scripts/Dpkg/OpenPGP/Backend/Sequoia.pm +++ b/scripts/Dpkg/OpenPGP/Backend/Sequoia.pm @@ -69,7 +69,7 @@ sub armor return OPENPGP_MISSING_CMD unless $self->{cmd}; # We ignore the $type, and let "sq" handle this automatically. - my $rc = $self->_sq_exec(qw(armor --output), $out, $in); + my $rc = $self->_sq_exec(qw(toolbox armor --output), $out, $in); return OPENPGP_BAD_DATA if $rc; return OPENPGP_OK; } @@ -81,7 +81,7 @@ sub dearmor return OPENPGP_MISSING_CMD unless $self->{cmd}; # We ignore the $type, and let "sq" handle this automatically. - my $rc = $self->_sq_exec(qw(dearmor --output), $out, $in); + my $rc = $self->_sq_exec(qw(toolbox dearmor --output), $out, $in); return OPENPGP_BAD_DATA if $rc; return OPENPGP_OK; } diff --git a/scripts/Dpkg/Shlibs/Symbol.pm b/scripts/Dpkg/Shlibs/Symbol.pm index f4955bb..3b38a8c 100644 --- a/scripts/Dpkg/Shlibs/Symbol.pm +++ b/scripts/Dpkg/Shlibs/Symbol.pm @@ -115,23 +115,19 @@ sub parse_symbolspec { $symbol_templ = $2; $symbol = $2; $rest = $3; - } else { - if ($symbol =~ m/^(\S+)(.*)$/) { - $symbol_templ = $1; - $symbol = $1; - $rest = $2; - } + } elsif ($symbol =~ m/^(\S+)(.*)$/) { + $symbol_templ = $1; + $symbol = $1; + $rest = $2; } error(g_('symbol name unspecified: %s'), $symbolspec) if (!$symbol); - } else { + } elsif ($symbolspec =~ m/^(\S+)(.*)$/) { # No tag specification. Symbol name is up to the first space # foobarsymbol@Base 1.0 1 - if ($symbolspec =~ m/^(\S+)(.*)$/) { - $symbol = $1; - $rest = $2; - } else { - return 0; - } + $symbol = $1; + $rest = $2; + } else { + return 0; } $self->{symbol} = $symbol; $self->{symbol_templ} = $symbol_templ; @@ -463,12 +459,10 @@ sub mark_found_in_library { # Symbol reappeared somehow $self->{deprecated} = 0; $self->{minver} = $minver if (not $self->is_optional()); - } else { + } elsif (version_compare($minver, $self->{minver}) < 0) { # We assume that the right dependency information is already # there. - if (version_compare($minver, $self->{minver}) < 0) { - $self->{minver} = $minver; - } + $self->{minver} = $minver; } # Never remove arch tags from patterns if (not $self->is_pattern()) { diff --git a/scripts/Dpkg/Source/Package/V1.pm b/scripts/Dpkg/Source/Package/V1.pm index 170ffe1..bdf2c87 100644 --- a/scripts/Dpkg/Source/Package/V1.pm +++ b/scripts/Dpkg/Source/Package/V1.pm @@ -347,18 +347,16 @@ sub do_build { # creating a native .tar.gz if ($origtargz) { $sourcestyle =~ y/aA/pP/; # .orig.tar. - } else { - if (stat($origdir)) { - unless (-d _) { - error(g_("unpacked orig '%s' exists but is not a directory"), - $origdir); - } - $sourcestyle =~ y/aA/rR/; # .orig directory - } elsif ($! != ENOENT) { - syserr(g_("unable to stat putative unpacked orig '%s'"), $origdir); - } else { - $sourcestyle =~ y/aA/nn/; # Native tar.gz - } + } elsif (stat($origdir)) { + unless (-d _) { + error(g_("unpacked orig '%s' exists but is not a directory"), + $origdir); + } + $sourcestyle =~ y/aA/rR/; # .orig directory + } elsif ($! != ENOENT) { + syserr(g_("unable to stat putative unpacked orig '%s'"), $origdir); + } else { + $sourcestyle =~ y/aA/nn/; # Native tar.gz } } diff --git a/scripts/Dpkg/Vendor/Debian.pm b/scripts/Dpkg/Vendor/Debian.pm index 2d07794..fcf5b1e 100644 --- a/scripts/Dpkg/Vendor/Debian.pm +++ b/scripts/Dpkg/Vendor/Debian.pm @@ -79,7 +79,7 @@ sub run_hook { } } elsif ($hook eq 'update-buildflags') { $self->set_build_features(@params); - $self->_add_build_flags(@params); + $self->add_build_flags(@params); } elsif ($hook eq 'builtin-system-build-paths') { return qw(/build/); } elsif ($hook eq 'build-tainted-by') { @@ -113,7 +113,8 @@ sub set_build_features { # XXX: This is set to undef so that we can handle the alias from # the future feature area. lfs => undef, - time64 => 0, + # XXX: This is set to undef to handle mask on the default setting. + time64 => undef, }, qa => { bug => 0, @@ -270,9 +271,36 @@ sub set_build_features { ## Area: abi + if (any { $arch eq $_ } qw(hurd-i386 kfreebsd-i386)) { + # Mask time64 on hurd-i386 and kfreebsd-i386, as their kernel lacks + # support for that arch and it will not be implemented. + $use_feature{abi}{time64} = 0; + } elsif (not defined $use_feature{abi}{time64}) { + # If the user has not requested a specific setting, by default only + # enable time64 everywhere except for i386, where we preserve it for + # binary backwards compatibility. + if ($arch eq 'i386') { + $use_feature{abi}{time64} = 0; + } else { + $use_feature{abi}{time64} = 1; + } + } + + # In Debian gcc enables time64 (and lfs) for the following architectures + # by injecting pre-processor flags, though the libc ABI has not changed. + if (any { $arch eq $_ } qw(armel armhf hppa m68k mips mipsel powerpc sh4)) { + $flags->set_option_value('cc-abi-time64', 1); + } else { + $flags->set_option_value('cc-abi-time64', 0); + } + if ($use_feature{abi}{time64} && ! $builtin_feature{abi}{time64}) { # On glibc 64-bit time_t support requires LFS. $use_feature{abi}{lfs} = 1 if $libc eq 'gnu'; + + # Require -Werror=implicit-function-declaration, to avoid linking + # against the wrong symbol. + $use_feature{qa}{'bug-implicit-func'} = 1; } # XXX: Handle lfs alias from future abi feature area. @@ -392,7 +420,7 @@ sub set_build_features { } } -sub _add_build_flags { +sub add_build_flags { my ($self, $flags) = @_; ## Global default flags @@ -425,13 +453,22 @@ sub _add_build_flags { ## Area: abi my %abi_builtins = $flags->get_builtins('abi'); + my $cc_abi_time64 = $flags->get_option_value('cc-abi-time64'); + if ($flags->use_feature('abi', 'lfs') && ! $abi_builtins{lfs}) { $flags->append('CPPFLAGS', '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'); + } elsif (! $flags->use_feature('abi', 'lfs') && + ! $abi_builtins{lfs} && $cc_abi_time64) { + $flags->append('CPPFLAGS', + '-U_LARGEFILE_SOURCE -U_FILE_OFFSET_BITS'); } if ($flags->use_feature('abi', 'time64') && ! $abi_builtins{time64}) { $flags->append('CPPFLAGS', '-D_TIME_BITS=64'); + } elsif (! $flags->use_feature('abi', 'time64') && + ! $abi_builtins{time64} && $cc_abi_time64) { + $flags->append('CPPFLAGS', '-U_TIME_BITS'); } ## Area: qa @@ -586,7 +623,11 @@ sub _add_build_flags { } elsif ($cpu eq 'amd64') { $flag = '-fcf-protection'; } - $flags->append($_, $flag) foreach @compile_flags; + # The following should always be true on Debian, but it might not + # be on derivatives. + if (defined $flag) { + $flags->append($_, $flag) foreach @compile_flags; + } } } diff --git a/scripts/Dpkg/Vendor/Default.pm b/scripts/Dpkg/Vendor/Default.pm index fc0e6be..934953f 100644 --- a/scripts/Dpkg/Vendor/Default.pm +++ b/scripts/Dpkg/Vendor/Default.pm @@ -218,6 +218,19 @@ sub set_build_features { return; } +=item $vendor->add_build_flags($flags) + +Adds the vendor build flags to the compiler flag variables based on the +vendor defaults and previously set build features. + +=cut + +sub add_build_flags { + my ($self, $flags) = @_; + + return; +} + =back =head1 CHANGES diff --git a/scripts/Dpkg/Vendor/Ubuntu.pm b/scripts/Dpkg/Vendor/Ubuntu.pm index b50da37..f907fa9 100644 --- a/scripts/Dpkg/Vendor/Ubuntu.pm +++ b/scripts/Dpkg/Vendor/Ubuntu.pm @@ -95,14 +95,6 @@ sub run_hook { if (scalar(@$bugs)) { $fields->{'Launchpad-Bugs-Fixed'} = join(' ', @$bugs); } - } elsif ($hook eq 'update-buildflags') { - my $flags = shift @params; - - # Run the Debian hook to add hardening flags - $self->SUPER::run_hook($hook, $flags); - - # Per https://wiki.ubuntu.com/DistCompilerFlags - $flags->prepend('LDFLAGS', '-Wl,-Bsymbolic-functions'); } else { return $self->SUPER::run_hook($hook, @params); } @@ -137,6 +129,64 @@ sub set_build_features { $flags->set_option_value('fortify-level', 3); } +sub add_build_flags { + my ($self, $flags) = @_; + + my @compile_flags = qw( + CFLAGS + CXXFLAGS + OBJCFLAGS + OBJCXXFLAGS + FFLAGS + FCFLAGS + ); + + $self->SUPER::add_build_flags($flags); + + # Per https://wiki.ubuntu.com/DistCompilerFlags + $flags->prepend('LDFLAGS', '-Wl,-Bsymbolic-functions'); + + # In Ubuntu these flags are set by the compiler, so when disabling the + # features we need to pass appropriate flags to disable them. + if (!$flags->use_feature('hardening', 'stackprotectorstrong') && + !$flags->use_feature('hardening', 'stackprotector')) { + my $flag = '-fno-stack-protector'; + $flags->append($_, $flag) foreach @compile_flags; + } + + if (!$flags->use_feature('hardening', 'stackclash')) { + my $flag = '-fno-stack-clash-protection'; + $flags->append($_, $flag) foreach @compile_flags; + } + + if (!$flags->use_feature('hardening', 'fortify')) { + $flags->append('CPPFLAGS', '-D_FORTIFY_SOURCE=0'); + } + + if (!$flags->use_feature('hardening', 'format')) { + my $flag = '-Wno-format -Wno-error=format-security'; + $flags->append('CFLAGS', $flag); + $flags->append('CXXFLAGS', $flag); + $flags->append('OBJCFLAGS', $flag); + $flags->append('OBJCXXFLAGS', $flag); + } + + if (!$flags->use_feature('hardening', 'branch')) { + my $cpu = $flags->get_option_value('hardening-branch-cpu'); + my $flag; + if ($cpu eq 'arm64') { + $flag = '-mbranch-protection=none'; + } elsif ($cpu eq 'amd64') { + $flag = '-fno-cf-protection'; + } + if (defined $flag) { + $flags->append($_, $flag) foreach @compile_flags; + } + } + + return; +} + =head1 PUBLIC FUNCTIONS =over diff --git a/scripts/Makefile.am b/scripts/Makefile.am index 1cec205..8d39d24 100644 --- a/scripts/Makefile.am +++ b/scripts/Makefile.am @@ -2,68 +2,9 @@ SUBDIRS = mk po -sbin_SCRIPTS = \ - dpkg-fsys-usrunmess \ - # EOL - -bin_SCRIPTS = \ - dpkg-architecture \ - dpkg-buildflags \ - dpkg-buildapi \ - dpkg-buildpackage \ - dpkg-buildtree \ - dpkg-checkbuilddeps \ - dpkg-distaddfile \ - dpkg-genbuildinfo \ - dpkg-genchanges \ - dpkg-gencontrol \ - dpkg-gensymbols \ - dpkg-mergechangelogs \ - dpkg-name \ - dpkg-parsechangelog \ - dpkg-scanpackages \ - dpkg-scansources \ - dpkg-shlibdeps \ - dpkg-source \ - dpkg-vendor \ - # EOL +EXTRA_DIST = +CLEANFILES = -EXTRA_DIST = \ - dpkg-architecture.pl \ - dpkg-buildapi.pl \ - dpkg-buildflags.pl \ - dpkg-buildpackage.pl \ - dpkg-buildtree.pl \ - dpkg-checkbuilddeps.pl \ - dpkg-distaddfile.pl \ - dpkg-fsys-usrunmess.pl \ - dpkg-genbuildinfo.pl \ - dpkg-genchanges.pl \ - dpkg-gencontrol.pl \ - dpkg-gensymbols.pl \ - dpkg-mergechangelogs.pl \ - dpkg-name.pl \ - dpkg-parsechangelog.pl \ - dpkg-scanpackages.pl \ - dpkg-scansources.pl \ - dpkg-shlibdeps.pl \ - dpkg-source.pl \ - dpkg-vendor.pl \ - $(test_scripts) \ - $(test_data) \ - # EOL - -dist_zshcompletions_DATA = \ - completion/zsh/_dpkg-parsechangelog \ - # EOL - -CLEANFILES = \ - $(test_data_objects) \ - $(sbin_SCRIPTS) \ - $(bin_SCRIPTS) \ - # EOL - -perllibdir = $(PERL_LIBDIR) nobase_dist_perllib_DATA = \ Dpkg/Arch.pm \ Dpkg/BuildAPI.pm \ @@ -156,6 +97,67 @@ EXTRA_DIST += \ Test/Dpkg.pm \ # EOL +sbin_SCRIPTS = \ + dpkg-fsys-usrunmess \ + # EOL + +bin_SCRIPTS = \ + dpkg-architecture \ + dpkg-buildflags \ + dpkg-buildapi \ + dpkg-buildpackage \ + dpkg-buildtree \ + dpkg-checkbuilddeps \ + dpkg-distaddfile \ + dpkg-genbuildinfo \ + dpkg-genchanges \ + dpkg-gencontrol \ + dpkg-gensymbols \ + dpkg-mergechangelogs \ + dpkg-name \ + dpkg-parsechangelog \ + dpkg-scanpackages \ + dpkg-scansources \ + dpkg-shlibdeps \ + dpkg-source \ + dpkg-vendor \ + # EOL + +EXTRA_DIST += \ + dpkg-architecture.pl \ + dpkg-buildapi.pl \ + dpkg-buildflags.pl \ + dpkg-buildpackage.pl \ + dpkg-buildtree.pl \ + dpkg-checkbuilddeps.pl \ + dpkg-distaddfile.pl \ + dpkg-fsys-usrunmess.pl \ + dpkg-genbuildinfo.pl \ + dpkg-genchanges.pl \ + dpkg-gencontrol.pl \ + dpkg-gensymbols.pl \ + dpkg-mergechangelogs.pl \ + dpkg-name.pl \ + dpkg-parsechangelog.pl \ + dpkg-scanpackages.pl \ + dpkg-scansources.pl \ + dpkg-shlibdeps.pl \ + dpkg-source.pl \ + dpkg-vendor.pl \ + # EOL + +CLEANFILES += \ + $(sbin_SCRIPTS) \ + $(bin_SCRIPTS) \ + # EOL + +dist_bashcompletions_DATA = \ + # EOL + +dist_zshcompletions_DATA = \ + completion/zsh/_dpkg-parsechangelog \ + # EOL + # Keep it even if empty to have man3dir correctly set man3_MANS = @@ -422,6 +424,11 @@ test_data = \ t/origins/ubuntu \ # EOL +EXTRA_DIST += \ + $(test_scripts) \ + $(test_data) \ + # EOL + test_data_objects = \ t/Dpkg_Shlibs/libobjdump.basictags-amd64.so \ t/Dpkg_Shlibs/libobjdump.basictags-i386.so \ @@ -430,6 +437,10 @@ test_data_objects = \ t/Dpkg_Shlibs/libobjdump.spacesyms.so \ # EOL +CLEANFILES += \ + $(test_data_objects) \ + # EOL + $(srcdir)/t/Dpkg_Shlibs/libobjdump.basictags-amd64.so: $(srcdir)/t/Dpkg_Shlibs/basictags.c $(CC) $(CFLAGS) -shared -fPIC -Wl,-soname -Wl,libbasictags.so.1 $< \ -DAMD64 -o $@ diff --git a/scripts/Makefile.in b/scripts/Makefile.in index c0d7c6d..8b0a61f 100644 --- a/scripts/Makefile.in +++ b/scripts/Makefile.in @@ -127,8 +127,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/dpkg-arch.m4 \ $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) -DIST_COMMON = $(srcdir)/Makefile.am $(dist_zshcompletions_DATA) \ - $(nobase_dist_perllib_DATA) $(am__DIST_COMMON) +DIST_COMMON = $(srcdir)/Makefile.am $(dist_bashcompletions_DATA) \ + $(dist_zshcompletions_DATA) $(nobase_dist_perllib_DATA) \ + $(am__DIST_COMMON) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = Build.PL README.cpan @@ -161,8 +162,8 @@ am__uninstall_files_from_dir = { \ $(am__cd) "$$dir" && rm -f $$files; }; \ } am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" \ - "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(zshcompletionsdir)" \ - "$(DESTDIR)$(perllibdir)" + "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(bashcompletionsdir)" \ + "$(DESTDIR)$(zshcompletionsdir)" "$(DESTDIR)$(perllibdir)" SCRIPTS = $(bin_SCRIPTS) $(sbin_SCRIPTS) AM_V_P = $(am__v_P_@AM_V@) am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) @@ -194,7 +195,8 @@ am__can_run_installinfo = \ man3dir = $(mandir)/man3 NROFF = nroff MANS = $(man3_MANS) -DATA = $(dist_zshcompletions_DATA) $(nobase_dist_perllib_DATA) +DATA = $(dist_bashcompletions_DATA) $(dist_zshcompletions_DATA) \ + $(nobase_dist_perllib_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive am__recursive_targets = \ @@ -393,6 +395,7 @@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +aclocaldir = @aclocaldir@ admindir = @admindir@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ @@ -400,6 +403,7 @@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ backupsdir = @backupsdir@ +bashcompletionsdir = @bashcompletionsdir@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ @@ -411,6 +415,7 @@ datadir = @datadir@ datarootdir = @datarootdir@ devlibdir = @devlibdir@ docdir = @docdir@ +docspecdir = @docspecdir@ dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ @@ -428,10 +433,14 @@ localedir = @localedir@ localstatedir = @localstatedir@ logdir = @logdir@ mandir = @mandir@ +methodsdir = @methodsdir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ pdfdir = @pdfdir@ +perllibdir = @perllibdir@ pkgconfdir = @pkgconfdir@ +pkgconfigdir = @pkgconfigdir@ +polkitactionsdir = @polkitactionsdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ psdir = @psdir@ @@ -446,51 +455,15 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ zshcompletionsdir = @zshcompletionsdir@ SUBDIRS = mk po -sbin_SCRIPTS = \ - dpkg-fsys-usrunmess \ - # EOL - -bin_SCRIPTS = \ - dpkg-architecture \ - dpkg-buildflags \ - dpkg-buildapi \ - dpkg-buildpackage \ - dpkg-buildtree \ - dpkg-checkbuilddeps \ - dpkg-distaddfile \ - dpkg-genbuildinfo \ - dpkg-genchanges \ - dpkg-gencontrol \ - dpkg-gensymbols \ - dpkg-mergechangelogs \ - dpkg-name \ - dpkg-parsechangelog \ - dpkg-scanpackages \ - dpkg-scansources \ - dpkg-shlibdeps \ - dpkg-source \ - dpkg-vendor \ - # EOL - -EXTRA_DIST = dpkg-architecture.pl dpkg-buildapi.pl dpkg-buildflags.pl \ - dpkg-buildpackage.pl dpkg-buildtree.pl dpkg-checkbuilddeps.pl \ - dpkg-distaddfile.pl dpkg-fsys-usrunmess.pl \ - dpkg-genbuildinfo.pl dpkg-genchanges.pl dpkg-gencontrol.pl \ - dpkg-gensymbols.pl dpkg-mergechangelogs.pl dpkg-name.pl \ - dpkg-parsechangelog.pl dpkg-scanpackages.pl \ +EXTRA_DIST = Test/Dpkg.pm dpkg-architecture.pl dpkg-buildapi.pl \ + dpkg-buildflags.pl dpkg-buildpackage.pl dpkg-buildtree.pl \ + dpkg-checkbuilddeps.pl dpkg-distaddfile.pl \ + dpkg-fsys-usrunmess.pl dpkg-genbuildinfo.pl dpkg-genchanges.pl \ + dpkg-gencontrol.pl dpkg-gensymbols.pl dpkg-mergechangelogs.pl \ + dpkg-name.pl dpkg-parsechangelog.pl dpkg-scanpackages.pl \ dpkg-scansources.pl dpkg-shlibdeps.pl dpkg-source.pl \ - dpkg-vendor.pl $(test_scripts) $(test_data) Test/Dpkg.pm # EOL -dist_zshcompletions_DATA = \ - completion/zsh/_dpkg-parsechangelog \ - # EOL - -CLEANFILES = \ - $(test_data_objects) \ - $(sbin_SCRIPTS) \ - $(bin_SCRIPTS) \ - # EOL - -perllibdir = $(PERL_LIBDIR) + dpkg-vendor.pl $(test_scripts) $(test_data) # EOL +CLEANFILES = $(sbin_SCRIPTS) $(bin_SCRIPTS) $(test_data_objects) # EOL nobase_dist_perllib_DATA = \ Dpkg/Arch.pm \ Dpkg/BuildAPI.pm \ @@ -579,6 +552,39 @@ nobase_dist_perllib_DATA = \ Dpkg.pm \ # EOL +sbin_SCRIPTS = \ + dpkg-fsys-usrunmess \ + # EOL + +bin_SCRIPTS = \ + dpkg-architecture \ + dpkg-buildflags \ + dpkg-buildapi \ + dpkg-buildpackage \ + dpkg-buildtree \ + dpkg-checkbuilddeps \ + dpkg-distaddfile \ + dpkg-genbuildinfo \ + dpkg-genchanges \ + dpkg-gencontrol \ + dpkg-gensymbols \ + dpkg-mergechangelogs \ + dpkg-name \ + dpkg-parsechangelog \ + dpkg-scanpackages \ + dpkg-scansources \ + dpkg-shlibdeps \ + dpkg-source \ + dpkg-vendor \ + # EOL + +dist_bashcompletions_DATA = \ + # EOL + +dist_zshcompletions_DATA = \ + completion/zsh/_dpkg-parsechangelog \ + # EOL + # Keep it even if empty to have man3dir correctly set man3_MANS = @@ -988,6 +994,27 @@ uninstall-man3: } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ dir='$(DESTDIR)$(man3dir)'; $(am__uninstall_files_from_dir) +install-dist_bashcompletionsDATA: $(dist_bashcompletions_DATA) + @$(NORMAL_INSTALL) + @list='$(dist_bashcompletions_DATA)'; test -n "$(bashcompletionsdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bashcompletionsdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bashcompletionsdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(bashcompletionsdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(bashcompletionsdir)" || exit $$?; \ + done + +uninstall-dist_bashcompletionsDATA: + @$(NORMAL_UNINSTALL) + @list='$(dist_bashcompletions_DATA)'; test -n "$(bashcompletionsdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(bashcompletionsdir)'; $(am__uninstall_files_from_dir) install-dist_zshcompletionsDATA: $(dist_zshcompletions_DATA) @$(NORMAL_INSTALL) @list='$(dist_zshcompletions_DATA)'; test -n "$(zshcompletionsdir)" || list=; \ @@ -1196,7 +1223,7 @@ check: check-recursive all-am: Makefile $(SCRIPTS) $(MANS) $(DATA) installdirs: installdirs-recursive installdirs-am: - for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(zshcompletionsdir)" "$(DESTDIR)$(perllibdir)"; do \ + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(bashcompletionsdir)" "$(DESTDIR)$(zshcompletionsdir)" "$(DESTDIR)$(perllibdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-recursive @@ -1250,8 +1277,9 @@ info: info-recursive info-am: -install-data-am: install-data-local install-dist_zshcompletionsDATA \ - install-man install-nobase_dist_perllibDATA +install-data-am: install-data-local install-dist_bashcompletionsDATA \ + install-dist_zshcompletionsDATA install-man \ + install-nobase_dist_perllibDATA @$(NORMAL_INSTALL) $(MAKE) $(AM_MAKEFLAGS) install-data-hook install-dvi: install-dvi-recursive @@ -1296,9 +1324,10 @@ ps: ps-recursive ps-am: -uninstall-am: uninstall-binSCRIPTS uninstall-dist_zshcompletionsDATA \ - uninstall-local uninstall-man \ - uninstall-nobase_dist_perllibDATA uninstall-sbinSCRIPTS +uninstall-am: uninstall-binSCRIPTS uninstall-dist_bashcompletionsDATA \ + uninstall-dist_zshcompletionsDATA uninstall-local \ + uninstall-man uninstall-nobase_dist_perllibDATA \ + uninstall-sbinSCRIPTS uninstall-man: uninstall-man3 @@ -1312,6 +1341,7 @@ uninstall-man: uninstall-man3 dvi-am html html-am info info-am install install-am \ install-binSCRIPTS install-data install-data-am \ install-data-hook install-data-local \ + install-dist_bashcompletionsDATA \ install-dist_zshcompletionsDATA install-dvi install-dvi-am \ install-exec install-exec-am install-html install-html-am \ install-info install-info-am install-man install-man3 \ @@ -1321,6 +1351,7 @@ uninstall-man: uninstall-man3 maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ tags tags-am uninstall uninstall-am uninstall-binSCRIPTS \ + uninstall-dist_bashcompletionsDATA \ uninstall-dist_zshcompletionsDATA uninstall-local \ uninstall-man uninstall-man3 uninstall-nobase_dist_perllibDATA \ uninstall-sbinSCRIPTS diff --git a/scripts/Test/Dpkg.pm b/scripts/Test/Dpkg.pm index 54f494c..1632ad8 100644 --- a/scripts/Test/Dpkg.pm +++ b/scripts/Test/Dpkg.pm @@ -200,6 +200,7 @@ sub test_needs_command sub test_needs_openpgp_backend { my @backends = qw( + gpg-sq gpg sq sqop diff --git a/scripts/dpkg-buildapi.pl b/scripts/dpkg-buildapi.pl index b34bcf5..2981eeb 100755 --- a/scripts/dpkg-buildapi.pl +++ b/scripts/dpkg-buildapi.pl @@ -36,12 +36,14 @@ sub version() sub usage() { printf g_( -'Usage: %s [