]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_installxfonts
consistently use v7 not V7 (etc)
[debhelper.git] / dh_installxfonts
index 3611a8c2ec80ead94b8f56b2a207a3eb38b022a5..25e073bcd94e26044dbcf70732bf40f7659a4117 100755 (executable)
@@ -22,22 +22,24 @@ and fonts.scale be rebuilt properly at install time.
 Before calling this program, you should have installed any X fonts provided
 by your package into the appropriate location in the package build
 directory, and if you have fonts.alias or fonts.scale files, you should
 Before calling this program, you should have installed any X fonts provided
 by your package into the appropriate location in the package build
 directory, and if you have fonts.alias or fonts.scale files, you should
-install them into the correct location under etc/X11/fonts in your package
-build directory.
+install them into the correct location under etc/X11/fonts in your
+package build directory.
 
 
-Your package should should depend on xutils (>= 4.0.3) so that the
-update-fonts-* commands are available.
+Your package should depend on xfonts-utils so that the
+update-fonts-* commands are available. (This program adds that dependency to
+${misc:Depends}.)
 
 
-This programt automatically generates the postinst and postrm commands needed
-to register X fonts.  See L<dh_installdeb(1)> for an explanation of how this
-works.
+This program automatically generates the postinst and postrm commands needed
+to register X fonts. These commands are inserted into the maintainer
+scripts by dh_installdeb. See L<dh_installdeb(1)> for an explanation of how
+this works.
 
 =head1 NOTES
 
 See L<update-fonts-alias(8)>, L<update-fonts-scale(8)>, and
 L<update-fonts-dir(8)> for more information about X font installation.
 
 
 =head1 NOTES
 
 See L<update-fonts-alias(8)>, L<update-fonts-scale(8)>, and
 L<update-fonts-dir(8)> for more information about X font installation.
 
-See Debian policy, section 12.8.5. for details about doing fonts the Debian
+See Debian policy, section 11.8.5. for details about doing fonts the Debian
 way.
 
 =cut
 way.
 
 =cut
@@ -46,34 +48,45 @@ init();
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
 
 foreach my $package (@{$dh{DOPACKAGES}}) {
        my $tmp=tmpdir($package);
-       my $XFONTDIR="$tmp/usr/X11R6/lib/X11/fonts/";
 
        # Find all font directories in the package build directory.
 
        # Find all font directories in the package build directory.
-       opendir DIR, $XFONTDIR || next;
-       my @fontdirs = grep { -d "$XFONTDIR/$_" && !/^\./ } (readdir DIR);
-       closedir DIR;
+       my @fontdirs;
+       foreach my $parentdir ("$tmp/usr/share/fonts/X11/") {
+               opendir(DIR, $parentdir) || next;
+               @fontdirs = grep { -d "$parentdir/$_" && !/^\./ } (readdir DIR);
+               closedir DIR;
+       }
 
        if (@fontdirs) {
                # Figure out what commands the postinst and postrm will need 
                # to call.
                my @cmds;
 
        if (@fontdirs) {
                # Figure out what commands the postinst and postrm will need 
                # to call.
                my @cmds;
+               my @cmds_postinst;
+               my @cmds_postrm;
                foreach my $f (@fontdirs) {
                foreach my $f (@fontdirs) {
-                       push @cmds, "update-fonts-dir $f";
-                       push @cmds, "update-fonts-alias $f"
-                               if -f "$tmp/etc/X11/fonts/$f/$package.alias";
-                       # This must come _before_ mkfontdir, thus the unshift.
-                       unshift @cmds, "update-fonts-scale $f"
+                       # This must come before update-fonts-dir.
+                       push @cmds, "update-fonts-scale $f"
                                if -f "$tmp/etc/X11/fonts/$f/$package.scale";
                                if -f "$tmp/etc/X11/fonts/$f/$package.scale";
+                       push @cmds, "update-fonts-dir --x11r7-layout $f";
+                       if (-f "$tmp/etc/X11/fonts/$f/$package.alias") {
+                               push @cmds_postinst, "update-fonts-alias --include /etc/X11/fonts/$f/$package.alias $f";
+                               push @cmds_postrm, "update-fonts-alias --exclude /etc/X11/fonts/$f/$package.alias $f";
+                               addsubstvar($package, "misc:Depends", "xfonts-utils (>= 1:7.5+2)");
+                       }
                }
 
                autoscript($package, "postinst", "postinst-xfonts",
                }
 
                autoscript($package, "postinst", "postinst-xfonts",
-                       "s:#CMDS#:".join("\n", @cmds).":;");
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postinst).":");
+               autoscript($package, "postrm", "postrm-xfonts",
+                       "s:#CMDS#:".join(";", @cmds, @cmds_postrm).":");
+
+               addsubstvar($package, "misc:Depends", "xfonts-utils");
        }
 }
 
 =head1 SEE ALSO
 
        }
 }
 
 =head1 SEE ALSO
 
-L<debhelper(1)>
+L<debhelper(7)>
 
 This program is a part of debhelper.
 
 
 This program is a part of debhelper.