# This is a little bit (hah!) DWIMish, but still very handy.
use File::Find;
-BEGIN { push @INC, "debian", "/usr/share/debhelper" }
-use Dh_Lib;
+use Debian::Debhelper::Dh_Lib;
init();
# Check if a file is a man page, for use by File::Find.
# Does its filename look like a man page?
# .ex files are examples installed by deb-make,
# we don't want those, or .in files, which are
- # from configure.
- if (! (-f $_ && /^.*\.[1-9].*$/ && ! /\.(ex|in)$/)) {
+ # from configure, nor do we want CVS .#* files.
+ if (! (-f $_ && /^.*\.[1-9].*$/ && ! /\.(ex|in)$/ && ! /^\.#/)) {
return;
}
if ($l=~m/\.so\s+(.*)/) {
my $solink=$1;
# This test is here to prevent links like ... man8/../man8/foo.8
- if (Dh_Lib::basename($File::Find::dir) eq Dh_Lib::dirname($solink)) {
- $solink=Dh_Lib::basename($solink);
+ if (Debian::Debhelper::Dh_Lib::basename($File::Find::dir) eq
+ Debian::Debhelper::Dh_Lib::dirname($solink)) {
+ $solink=Debian::Debhelper::Dh_Lib::basename($solink);
}
else {
$solink="../$solink";
foreach $page (@manpages) {
$page=~s:^\./::; # just for looks
- $basename=Dh_Lib::basename($page);
+ $basename=Debian::Debhelper::Dh_Lib::basename($page);
# Skip all files listed on command line.
my $install=1;
foreach $skip (@ARGV) {
# Look at basename of what's on connect line
# for backwards compatability.
- if ($basename eq Dh_Lib::basename($skip)) {
+ if ($basename eq Debian::Debhelper::Dh_Lib::basename($skip)) {
$install=undef;
last;
}
my ($section)=$basename=~m/.*\.([1-9])/;
my $destdir="$TMP/usr/$extdir/man/man$section/";
+
+ # Handle translated man pages.
+ my $instname=$basename;
+ my ($langcode)=$basename=~m/.*\.([a-z][a-z])\.([1-9])/;
+ if (defined $langcode && $langcode ne '') {
+ $destdir="$TMP/usr/$extdir/man/$langcode/man$section/";
+ $instname=~s/\.$langcode\./\./;
+ }
+
$destdir=~tr:/:/:s; # just for looks
+
if (! -e "$destdir/$basename" && !-l "$destdir/$basename") {
if (! -d $destdir) {
doit "install","-d",$destdir;
}
- doit "install","-p","-m644",$page,$destdir;
+ doit "install","-p","-m644",$page,$destdir.$instname;
}
}
}