#!/usr/bin/perl -w # # Reads debian/info, installs all files listed there into /usr/share/info # and puts appropriate commands into the postinst. use Debian::Debhelper::Dh_Lib; init(); foreach $PACKAGE (@{$dh{DOPACKAGES}}) { $TMP=tmpdir($PACKAGE); $file=pkgfile($PACKAGE,"info"); undef @info; if ($file) { @info=filearray($file); } if (($PACKAGE eq $dh{FIRSTPACKAGE} || $dh{PARAMS_ALL}) && @ARGV) { push @info, @ARGV; } if (@info) { if ( ! -d "$TMP/usr/share/info") { doit("install","-d","$TMP/usr/share/info"); } doit("cp",@info,"$TMP/usr/share/info"); doit("chmod","-R", "go=rX","$TMP/usr/share/info/"); doit("chmod","-R", "u+rw","$TMP/usr/share/info/"); } foreach $file (@info) { # Only register with install-info if this is a head file in # a tree of info files. if ($file !~ /-\d+$/ && ! $dh{NOSCRIPTS}) { # Figure out what section this file goes in. my $section=''; open (IN, "<$file") || die "$file: $!"; while () { if (/INFO-DIR-SECTION\s+(.*)/) { $section=$1; last; } } close IN; my $fn="/usr/share/info/".Debian::Debhelper::Dh_Lib::basename($file); if ($section ne '') { $section=~s:/:\\/:g; # allow / in section. autoscript($PACKAGE,"postinst","postinst-info", "s/#SECTION#/$section/g;s:#FILE#:$fn:"); } else { autoscript($PACKAGE,"postinst","postinst-info-nosection", "s:#FILE#:$fn:"); } autoscript($PACKAGE,"prerm","prerm-info", "s:#FILE#:$fn:"); } } }