#!/usr/bin/perl =head1 NAME dh_installinfo - install info files =cut use strict; use warnings; use Debian::Debhelper::Dh_Lib; =head1 SYNOPSIS B [S>] [B<-A>] [S ...>] =head1 DESCRIPTION B is a debhelper program that is responsible for installing info files into F in the package build directory. =head1 FILES =over 4 =item debian/I.info List info files to be installed. =back =head1 OPTIONS =over 4 =item B<-A>, B<--all> Install all files specified by command line parameters in ALL packages acted on. =item I ... Install these info files into the first package acted on. (Or in all packages if B<-A> is specified). =back =cut init(); # PROMISE: DH NOOP WITHOUT info my $error_handler = compat(10) ? \&glob_expand_error_handler_warn_and_discard : \&glob_expand_error_handler_reject; my $nodocs = is_build_profile_active('nodoc') ? 1 : 0; # We cannot assume documentation is built under nodoc, but if it is we must flag it as handled # or dh_missing might make noise. $error_handler = \&glob_expand_error_handler_silently_ignore if $nodocs; foreach my $package (getpackages()) { my $tmp=tmpdir($package); my $file=pkgfile($package,"info"); my @info; if ($file) { @info = filearray($file, ['.'], $error_handler) if $file; } if (($package eq $dh{FIRSTPACKAGE} || $dh{PARAMS_ALL}) && @ARGV) { push @info, @ARGV; } next if not process_pkg($package) or $nodocs; if (@info) { install_dir("$tmp/usr/share/info"); xargs(\@info, "cp", '--reflink=auto', XARGS_INSERT_PARAMS_HERE, "$tmp/usr/share/info"); doit("chmod","-R", "go=rX","$tmp/usr/share/info/"); doit("chmod","-R", "u+rw","$tmp/usr/share/info/"); } } =head1 SEE ALSO L This program is a part of debhelper. =head1 AUTHOR Joey Hess =cut # Local Variables: # indent-tabs-mode: t # tab-width: 4 # cperl-indent-level: 4 # End: