]> git.donarmstrong.com Git - debhelper.git/blobdiff - dh_fixperms
r1590: * Converted several chown 0.0 to chown 0:0 for POSIX 200112.
[debhelper.git] / dh_fixperms
index 145d7361263d659c3355f2bfb24122ac8a709b04..34a385bc6c8afe6f1ab073ea02b45547d9ada550 100755 (executable)
@@ -53,21 +53,32 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
 
        # General permissions fixing.
        complex_doit("find $tmp $find_options -print0",
-               "2>/dev/null | xargs -0r chown --no-dereference 0.0");
+               "2>/dev/null | xargs -0r chown --no-dereference 0:0");
        complex_doit("find $tmp ! -type l $find_options -print0",
                "2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s");
                
        # Fix up premissions in usr/share/doc, setting everything to not
        # executable by default, but leave examples directories alone.
-       complex_doit("find $tmp/usr/share/doc $tmp/usr/doc -type f $find_options ! -regex '.*/examples/.*' -print0 2>/dev/null",
+       complex_doit("find $tmp/usr/share/doc -type f $find_options ! -regex '$tmp/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null",
                "| xargs -0r chmod 644");
-       complex_doit("find $tmp/usr/share/doc $tmp/usr/doc -type d $find_options -print0 2>/dev/null",
+       complex_doit("find $tmp/usr/share/doc -type d $find_options -print0 2>/dev/null",
                "| xargs -0r chmod 755");
 
        # Executable man pages are a bad thing..
        complex_doit("find $tmp/usr/share/man $tmp/usr/man/ $tmp/usr/X11*/man/ -type f",
                "$find_options -print0 2>/dev/null | xargs -0r chmod 644");
 
+       # ..and so are executable shared and static libraries 
+       # (and .la files from libtool) ..
+       complex_doit("find $tmp -perm -5 -type f",
+               "\\( -name '*.so*' -or -name '*.la' -or -name '*.a' \\) $find_options -print0",
+               "2>/dev/null | xargs -0r chmod 644");
+       
+       # .. and perl modules.
+       complex_doit("find $tmp/usr/lib/perl5 $tmp/usr/share/perl5 -type f",
+               "-perm -5 -name '*.pm' $find_options -print0",
+               "2>/dev/null | xargs -0r chmod a-X");
+       
        # v4 only
        if (! compat(3)) {
                # Programs in the bin and init.d dirs should be executable..
@@ -79,16 +90,11 @@ foreach my $package (@{$dh{DOPACKAGES}}) {
                }
        }
        
-       # ..and so are executable shared and static libraries 
-       # (and .la files from libtool)
-       complex_doit("find $tmp -perm -5 -type f",
-               "\\( -name '*.so*' -or -name '*.la' -or -name '*.a' \\) $find_options -print0",
-               "2>/dev/null | xargs -0r chmod a-X");
 }
 
 =head1 SEE ALSO
 
-L<debhelper(1)>
+L<debhelper(7)>
 
 This program is a part of debhelper.