#!/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 dh_installmenu is a debhelper program that is responsible for installing files used by the debian menu package into package build directories. If a file named debian/package.menu exists, then it is installed into usr/share/menu/package in the package build directory. This is a debian menu file. See L for its format. If a file named debian/package.menu-method exits, then it is installed into etc/menu-methods/package in the package build directory. This is a debian menu method file. In this case, dh_installmenu also automatically generates the postinst and postrm commands needed to interface with the debian menu package. These commands are inserted into the maintainer scripts by dh_installdeb. See L for an explanation of how this works. =head1 OPTIONS =over 4 =item B<-n>, B<--noscripts> Do not modify postinst/postrm 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"); } 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