#!/usr/bin/perl -w =head1 NAME dh_installmenu - install Debian menu files into package build directories =cut use strict; use Debian::Debhelper::Dh_Lib; =head1 SYNOPSIS B [S>] [B<-n>] =head1 DESCRIPTION B is a debhelper program that is responsible for installing files used by the Debian B package into package build directories. It also automatically generates the F and F commands needed to interface with the Debian B package. These commands are inserted into the maintainer scripts by L. =head1 FILES =over 4 =item debian/I.menu Debian menu files, installed into usr/share/menu/I in the package build directory. See L for its format. =item debian/I.menu-method Debian menu method files, installed into etc/menu-methods/I in the package build directory. =back =head1 OPTIONS =over 4 =item B<-n>, B<--noscripts> Do not modify F/F scripts. =back =cut init(); foreach my $package (@{$dh{DOPACKAGES}}) { my $tmp=tmpdir($package); my $menu=pkgfile($package,"menu"); my $menu_method=pkgfile($package,"menu-method"); if ($menu ne '') { if (! -d "$tmp/usr/share/menu") { doit("install","-d","$tmp/usr/share/menu"); } doit("install","-p","-m644",$menu,"$tmp/usr/share/menu/$package"); # Add the scripts if a menu-method file doesn't exist. # The scripts for menu-method handle everything these do, too. if ($menu_method eq "" && ! $dh{NOSCRIPTS}) { autoscript($package,"postinst","postinst-menu"); autoscript($package,"postrm","postrm-menu") } } if ($menu_method ne '') { if (!-d "$tmp/etc/menu-methods") { doit("install","-d","$tmp/etc/menu-methods"); } doit("install","-p","-m644",$menu_method,"$tmp/etc/menu-methods/$package"); if (! $dh{NOSCRIPTS}) { autoscript($package,"postinst","postinst-menu-method","s/#PACKAGE#/$package/"); autoscript($package,"postrm","postrm-menu-method","s/#PACKAGE#/$package/"); } } } =head1 SEE ALSO L L L This program is a part of debhelper. =head1 AUTHOR Joey Hess =cut