[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

lintian: r416 - in trunk: checks collection debian testset testset/binary/debian testset/filenames/debian



Author: djpig
Date: 2005-06-17 02:19:29 +0200 (Fri, 17 Jun 2005)
New Revision: 416

Modified:
   trunk/checks/menu-format
   trunk/checks/menus
   trunk/checks/menus.desc
   trunk/collection/menu-files
   trunk/debian/changelog
   trunk/testset/binary/debian/rules
   trunk/testset/filenames/debian/rules
   trunk/testset/tags.binary
   trunk/testset/tags.filenames
Log:
  * checks/menus:
    + [FL] New check menu-file-in-usr-lib because /usr/lib/menu is
      deprecated
    + [FL] Also find menu files in /usr/share/menu (Closes: #314187)
    + [FL] Rename executable-in-usr-lib-menu to executable-menu-file
  * checks/menu-format:
    + [FL] Adapt to changes in collections/menu-files

  * collections/menu-files:
    + [FL] Also collect files from /usr/share/menu


Modified: trunk/checks/menu-format
===================================================================
--- trunk/checks/menu-format	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/checks/menu-format	2005-06-17 00:19:29 UTC (rev 416)
@@ -22,6 +22,7 @@
 use strict;
 use Tags;
 use Util;
+use File::Basename;
 
 # This is a list of all tags that should be in every menu item.
 my @req_tags=qw(needs section title command);
@@ -119,13 +120,25 @@
     $sections_hash{$section}=1;
 }
 
-opendir (MENUDIR, "menu/") or fail("cannot read menu file directory.");
-while (my $menufile = readdir(MENUDIR)) {
-    next if -x "menu/$menufile"; # don't try to parse executables
-    next if $menufile eq "README"; # README is a special case
+my @menufiles;
+opendir (MENUDIR, "menu/lib") or fail("cannot read menu/lib file directory.");
+push @menufiles, map { "menu/lib/$_" } readdir(MENUDIR);
+closedir MENUDIR;
+opendir (MENUDIR, "menu/share") or fail("cannot read menu/share file directory.");
+push @menufiles, map { "menu/share/$_" } readdir(MENUDIR);
+closedir MENUDIR;
 
+foreach my $menufile (@menufiles) {
+    next if -x $menufile; # don't try to parse executables
+
+    my $basename = basename $menufile;
+    my $fullname = "/usr/share/menu/$basename";
+    $fullname = "/usr/lib/menu/$basename" if $menufile =~ m,^menu/lib/,o;
+
+    next if $basename eq "README"; # README is a special case
+
     my $menufile_line ="";
-    open (IN,"menu/$menufile") or
+    open (IN, $menufile) or
 	fail("cannot open menu file $menufile for reading.");
     # line below is commented out in favour of the while loop
     # do { $_=<IN>; } while defined && (m/^\s* \#/ || m/^\s*$/);
@@ -140,7 +153,7 @@
 
     # Check first line of file to see if it matches the old menu file format.
     if ($menufile_line =~ m/^(?!\?package\(.*\)).* .* .* .* "?.*"? .*$/o) {
-	tag "old-format-menu-file", "/usr/lib/menu/$menufile";
+	tag "old-format-menu-file", $fullname;
 	close IN;
 	next;
     }
@@ -159,16 +172,16 @@
 	# Note that I allow whitespace after the continuation character.
 	# This is caught by VerifyLine().
 	if (! ($menufile_line =~ m/\\\s*?$/)) {
-	    VerifyLine($pkg,$type,$menufile,$line,$lc);
+	    VerifyLine($pkg,$type,$menufile,$fullname,$line,$lc);
 	    $line="";
 	}
     } while ($menufile_line = <IN>);
-    VerifyLine($pkg,$type,$menufile,$line,$lc);
+    VerifyLine($pkg,$type,$menufile,$fullname,$line,$lc);
 
     close IN;
 }
-closedir MENUDIR;
 
+
 }
 
 # -----------------------------------
@@ -176,11 +189,7 @@
 # Pass this a line of a menu file, it sanitizes it and
 # verifies that it is correct.
 sub VerifyLine {
-    my $pkg=shift;
-    my $type=shift;
-    my $menufile=shift;
-    my $line=shift;
-    my $linecount=shift;
+    my ( $pkg, $type, $menufile, $fullname, $line, $linecount ) = @_;
 
     my %vals;
 
@@ -193,7 +202,7 @@
     # This is in here to fix a common mistake: whitespace after a '\'
     # character.
     if ($line =~ s/\\\s+\n/ /mgo) {
-	tag "whitespace-after-continuation-character", "/usr/lib/menu/$menufile:$linecount";
+	tag "whitespace-after-continuation-character", "$fullname:$linecount";
     }
 
     # Ignore lines that are all whitespace or empty.
@@ -204,14 +213,14 @@
 
     # Start by testing the package check.
     if (not $line =~ m/^\?package\((.*?)\):/o) {
-	tag "bad-test-in-menu-item", "/usr/lib/menu/$menufile:$linecount";
+	tag "bad-test-in-menu-item", "$fullname:$linecount";
 	return;
     }
     my $pkg_test = $1;
     my %tested_packages = map { $_ => 1 } split( /\s*,\s*/, $pkg_test);
     my $tested_packages = scalar keys %tested_packages;
     unless (exists $tested_packages{$pkg}) {
-	tag "pkg-not-in-package-test", "$pkg_test /usr/lib/menu/$menufile";
+	tag "pkg-not-in-package-test", "$pkg_test $fullname";
     }
     $line =~ s/^\?package\(.*?\)://;
 	
@@ -251,14 +260,14 @@
 	my $value = $2;
 
 	if (exists $vals{$tag}) {
-	    tag "duplicated-tag-in-menu-item", "/usr/lib/menu/$menufile $1:$linecount";
+	    tag "duplicated-tag-in-menu-item", "$fullname $1:$linecount";
 	}
 
 	# If the value was quoted, remove those quotes.
 	if ($value =~ m/^\"(.*)\"$/) {
 	    $value = $1;
 	} else {
-	    tag "unquoted-string-in-menu-item", "/usr/lib/menu/$menufile $1:$linecount";
+	    tag "unquoted-string-in-menu-item", "$fullname $1:$linecount";
 	}
 
 	# If the value has escaped characters, remove the
@@ -280,7 +289,7 @@
     # If that loop didn't match up to end of line, we have a
     # problem..
     if (pos($line) < length($line)) {
-	tag "unparsable-menu-item", "/usr/lib/menu/$menufile:$linecount";
+	tag "unparsable-menu-item", "$fullname:$linecount";
 	# Give up now, before things just blow up in our face.
 	return;
     }
@@ -290,7 +299,7 @@
     # Test for important tags.
     foreach my $tag (@req_tags) {
 	unless ( exists($vals{$tag}) && defined($vals{$tag}) ) {
-	    tag "menu-item-missing-required-tag", "$tag /usr/lib/menu/$menufile:$linecount";
+	    tag "menu-item-missing-required-tag", "$tag $fullname:$linecount";
 	    # Just give up right away, if such an essential tag is missing,
 	    # chance is high the rest doesn't make sense either. And now all
 	    # following checks can assume those tags to be there
@@ -301,7 +310,7 @@
     # Make sure all tags are known.
     foreach my $tag (keys %vals) {
 	if (! $known_tags_hash{$tag}) {
-	    tag "menu-item-contains-unknown-tag", "$tag /usr/lib/menu/$menufile:$linecount";
+	    tag "menu-item-contains-unknown-tag", "$tag $fullname:$linecount";
 	}
     }
 
@@ -320,9 +329,9 @@
     
 	my @com=split(' ',$vals{'command'});
 	if ($com[0] eq "su-to-root") {
-	    tag "su-to-root-without-usr-sbin", "/usr/lib/menu/$menufile:$linecount";
+	    tag "su-to-root-without-usr-sbin", "$fullname:$linecount";
 	} elsif ($com[0] eq "/usr/bin/su-to-root") {
-	    tag "su-to-root-with-usr-bin", "/usr/lib/menu/$menufile:$linecount";
+	    tag "su-to-root-with-usr-bin", "$fullname:$linecount";
 	} elsif ($com[0] eq "/usr/sbin/su-to-root") {
 	    shift @com;
 	    
@@ -347,16 +356,16 @@
             }
             
             unless ($cmd) {
-		tag "su-to-root-without--c", "/usr/lib/menu/$menufile:$linecount";
+		tag "su-to-root-without--c", "$fullname:$linecount";
 	    } else {   
-		tag "menu-command-not-in-package", "/usr/lib/menu/$menufile:$linecount $cmd"
+		tag "menu-command-not-in-package", "$fullname:$linecount $cmd"
 		    if (!($file_index{".$cmd"} 
 			|| grep {$file_index{".".$_.$cmd}} qw(/usr/local/bin/ /usr/bin/ /bin/ /usr/bin/X11/ /usr/games/)) # Check for binary in PATH
 			&& ($tested_packages < 2)
 			&& ($section !~ m:^WindowManagers/Modules:));
 	    }
 	} else {
-	    tag "menu-command-not-in-package", "/usr/lib/menu/$menufile:$linecount $com[0]"
+	    tag "menu-command-not-in-package", "$fullname:$linecount $com[0]"
 	        if ($com[0] && ! ($file_index{".$com[0]"}
 		    || grep {$file_index{".".$_.$com[0]}} qw(/usr/local/bin/ /usr/bin/ /bin/ /usr/bin/X11/ /usr/games/)) # Check for binary in PATH
 		    && ($tested_packages < 2)
@@ -364,13 +373,13 @@
 	}
 
     if (exists($vals{'icon'})) {
-	VerifyIcon($menufile, $linecount, $vals{'icon'}, 32);
+	VerifyIcon($menufile, $fullname, $linecount, $vals{'icon'}, 32);
     }
     if (exists($vals{'icon32x32'})) {
-	VerifyIcon($menufile, $linecount, $vals{'icon32x32'}, 32);
+	VerifyIcon($menufile, $fullname, $linecount, $vals{'icon32x32'}, 32);
     }
     if (exists($vals{'icon16x16'})) {
-	VerifyIcon($menufile, $linecount, $vals{'icon16x16'}, 16);
+	VerifyIcon($menufile, $fullname, $linecount, $vals{'icon16x16'}, 16);
     }
 
     # Check the needs tag.
@@ -379,26 +388,26 @@
     if ($section =~ m:^WindowManagers/Modules:) {
 	# WM/Modules: needs must not be the regular ones nor wm
 	if ($needs_tag_vals_hash{$needs} or $needs eq "wm") {
-	    tag "non-wm-module-in-wm-modules-menu-section", "$needs /usr/lib/menu/$menufile:$linecount";
+	    tag "non-wm-module-in-wm-modules-menu-section", "$needs $fullname:$linecount";
 	}
     } elsif ($section =~ m:^WindowManagers:) {
 	# Other WM sections: needs must be wm
         if ($needs ne 'wm') {
-	    tag "non-wm-in-windowmanager-menu-section", "$needs /usr/lib/menu/$menufile:$linecount";
+	    tag "non-wm-in-windowmanager-menu-section", "$needs $fullname:$linecount";
 	}
     } else {
 	# Any other section: just only the general ones
 	if ($needs eq "dwww") {
-	    tag "menu-item-needs-dwww", "/usr/lib/menu/$menufile:$linecount";
+	    tag "menu-item-needs-dwww", "$fullname:$linecount";
 	} elsif (not $needs_tag_vals_hash{$needs}) {
-	    tag "menu-item-needs-tag-has-unknown-value", "$needs /usr/lib/menu/$menufile:$linecount";
+	    tag "menu-item-needs-tag-has-unknown-value", "$needs $fullname:$linecount";
 	}
     }
 
     # Check the section tag
 	# Check for historical changes in the section tree.
 	if ($section =~ m:^Apps/Games:) {
-	    tag "menu-item-uses-apps-games-section", "/usr/lib/menu/$menufile:$linecount";
+	    tag "menu-item-uses-apps-games-section", "$fullname:$linecount";
 	    $section =~ s:^Apps/::;
 	}
 
@@ -406,7 +415,7 @@
 	my ($rootsection) = $section =~ m:([^/]*):;
 	if (not $root_sections_hash{$rootsection}) {
 	    if (not $rootsection =~ m/$pkg/i) {
-		tag "menu-item-creates-new-root-section", "$rootsection /usr/lib/menu/$menufile:$linecount";
+		tag "menu-item-creates-new-root-section", "$rootsection $fullname:$linecount";
 	    }
 	} else {
 	    # Check to see if the section is valid.
@@ -424,18 +433,18 @@
 		}
 	    }
 	    if (! $ok) {
-		tag "menu-item-creates-new-section", "$vals{section} /usr/lib/menu/$menufile:$linecount";
+		tag "menu-item-creates-new-section", "$vals{section} $fullname:$linecount";
 	    }
 	}
 }
 
 
 sub VerifyIcon {
-    my ($menufile, $linecount, $icon, $size) = @_;
+    my ($menufile, $fullname, $linecount, $icon, $size) = @_;
     local *IN;
 
     if ($icon eq 'none') {
-	tag "menu-item-uses-icon-none", "/usr/lib/menu/$menufile:$linecount";
+	tag "menu-item-uses-icon-none", "$fullname:$linecount";
 	return;
     }
     

Modified: trunk/checks/menus
===================================================================
--- trunk/checks/menus	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/checks/menus	2005-06-17 00:19:29 UTC (rev 416)
@@ -80,16 +80,20 @@
 
     if ($perm =~ m,^-,o) { # file checks
 	# menu file?
-	if ($file =~ m,^usr/lib/menu/\S,o) { # correct permissions?
+	if ($file =~ m,^usr/(lib|share)/menu/\S,o) { # correct permissions?
 	    if ($perm =~ m,x,o) {
-		tag "executable-in-usr-lib-menu", sprintf("$file %04o",$operm);
+		tag "executable-menu-file", sprintf("$file %04o",$operm);
 	    }
 
-	    next if $file eq 'usr/lib/menu/README';
+	    next if $file =~ m,^usr/(lib|share)/menu/README$,;
 
+	    if ($file =~ m,^usr/lib/,o) {
+		tag "menu-file-in-usr-lib", $file;
+	    }
+
 	    $menu_file = $file;
 
-	    if ($file eq 'usr/lib/menu/menu' and $pkg ne 'menu') {
+	    if ($file =~ m,usr/(lib|share)/menu/menu$,o and $pkg ne 'menu') {
 		tag "bad-menu-file-name", $file;
 	    }
 	}

Modified: trunk/checks/menus.desc
===================================================================
--- trunk/checks/menus.desc	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/checks/menus.desc	2005-06-17 00:19:29 UTC (rev 416)
@@ -67,12 +67,18 @@
 Info: The postrm script calls the <tt>install-docs</tt> command. Usually,
  this command should be called from the <tt>prerm</tt> maintainer script.
 
-Tag: executable-in-usr-lib-menu
+Tag: executable-menu-file
 Type: warning
-Info: Files in <tt>/usr/lib/menu</tt> should normally not be marked as
- executables. You only need to do this if your package has to generate
- menu entries dynamically.
+Info: Menu files should normally not be marked as executables. You only
+ need to do this if your package has to generate menu entries dynamically.
 
+Tag: menu-file-in-usr-lib
+Type: warning
+Info: As of menu, version 2.1.25, /usr/lib/menu as location for menu
+ files is deprecated (but still works perfectly). Menu files should
+ now be placed in /usr/share/menu instead. Only menu files that are
+ actually binary executables still need to go to /usr/lib/menu.
+
 Tag: executable-in-usr-share-docbase
 Type: error
 Info: Files in <tt>/usr/share/doc-base</tt> may not be marked as executables.

Modified: trunk/collection/menu-files
===================================================================
--- trunk/collection/menu-files	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/collection/menu-files	2005-06-17 00:19:29 UTC (rev 416)
@@ -35,14 +35,25 @@
 	or fail("cannot rm old menu directory");
 }
 
-if (-d "unpacked/usr/lib/menu") {
-    spawn('cp', '-a', 'unpacked/usr/lib/menu', 'menu') == 0
-	or fail("cannot copy unpacked/usr/lib/menu directory");
+mkdir("menu", 0777) or fail("cannot mkdir menu: $!");
+
+if (-d "unpacked/usr/lib/menu") {    
+    spawn('cp', '-a', 'unpacked/usr/lib/menu', 'menu/lib') == 0
+	or fail("cannot copy unpacked/usr/lib/menu/ directory");
 } else {
     # no menu directory
-    mkdir("menu", 0777) or fail("cannot mkdir menu: $!");
+    mkdir("menu/lib", 0777) or fail("cannot mkdir menu/lib: $!");
 }
 
+if (-d "unpacked/usr/share/menu") {    
+    spawn('cp', '-a', 'unpacked/usr/share/menu', 'menu/share') == 0
+	or fail("cannot copy unpacked/usr/share/menu directory");
+} else {
+    # no menu directory
+    mkdir("menu/share", 0777) or fail("cannot mkdir menu/share: $!");
+}
+
+
 exit 0;
 
 # -----------------------------------

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/debian/changelog	2005-06-17 00:19:29 UTC (rev 416)
@@ -2,8 +2,18 @@
 
   * checks/conffiles:
     + [JvW] Warn on /var files being a conffile too (Closes: #293443)
+  * checks/menus:
+    + [FL] New check menu-file-in-usr-lib because /usr/lib/menu is
+      deprecated
+    + [FL] Also find menu files in /usr/share/menu (Closes: #314187)
+    + [FL] Rename executable-in-usr-lib-menu to executable-menu-file
+  * checks/menu-format:
+    + [FL] Adapt to changes in collections/menu-files
 
- -- Jeroen van Wolffelaar <jeroen@wolffelaar.nl>  Tue, 12 Apr 2005 23:12:36 +0200
+  * collections/menu-files:
+    + [FL] Also collect files from /usr/share/menu
+  
+ -- Frank Lichtenheld <djpig@debian.org>  Fri, 17 Jun 2005 02:17:52 +0200
 
 lintian (1.23.8) unstable; urgency=low
 

Modified: trunk/testset/binary/debian/rules
===================================================================
--- trunk/testset/binary/debian/rules	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/testset/binary/debian/rules	2005-06-17 00:19:29 UTC (rev 416)
@@ -19,8 +19,10 @@
 	install -s -m 755 hello-static $(tmp)/usr/bin/static-hello
 	install -d $(tmp)/usr/share/doc/binary
 	install -m 644 INSTALL $(tmp)/usr/share/doc/binary
+	install -d $(tmp)/usr/share/menu
 	install -d $(tmp)/usr/lib/menu
 	install -d $(tmp)/usr/share/binary
+	install -m 644 debian/menu $(tmp)/usr/share/menu/binary
 	install -m 644 debian/menu $(tmp)/usr/lib/menu/binary
 	install -m 644 debian/README.Debian $(tmp)/usr/share/doc/binary
 	install -m 644 debian/copyright $(tmp)/usr/share/doc/binary

Modified: trunk/testset/filenames/debian/rules
===================================================================
--- trunk/testset/filenames/debian/rules	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/testset/filenames/debian/rules	2005-06-17 00:19:29 UTC (rev 416)
@@ -38,8 +38,11 @@
 	touch debian/tmp/usr/lib/filenames/readonly/test
 
 	install -d debian/tmp/usr/lib/menu
+	install -d debian/tmp/usr/share/menu
 	touch debian/tmp/usr/lib/menu/README
+	touch debian/tmp/usr/share/menu/README
 	touch debian/tmp/usr/lib/menu/menu
+	touch debian/tmp/usr/share/menu/menu
 	chmod 644 debian/tmp/usr/lib/menu/*
 
 	install -d debian/tmp/usr/lib/perl5/foo

Modified: trunk/testset/tags.binary
===================================================================
--- trunk/testset/tags.binary	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/testset/tags.binary	2005-06-17 00:19:29 UTC (rev 416)
@@ -2,14 +2,20 @@
 E: binary: debian-changelog-file-missing
 E: binary: file-directly-in-usr-share usr/share/baz
 E: binary: menu-item-missing-required-tag section /usr/lib/menu/binary:1
+E: binary: menu-item-missing-required-tag section /usr/share/menu/binary:1
 E: binary: non-wm-in-windowmanager-menu-section x11 /usr/lib/menu/binary:4
+E: binary: non-wm-in-windowmanager-menu-section x11 /usr/share/menu/binary:4
 E: binary: postinst-does-not-call-updatemenus usr/lib/menu/binary
 E: binary: postrm-does-not-call-updatemenus usr/lib/menu/binary
 E: binary: statically-linked-binary ./usr/bin/static-hello
 E: binary: su-to-root-with-usr-bin /usr/lib/menu/binary:5
+E: binary: su-to-root-with-usr-bin /usr/share/menu/binary:5
 E: binary: su-to-root-without--c /usr/lib/menu/binary:2
 E: binary: su-to-root-without--c /usr/lib/menu/binary:3
+E: binary: su-to-root-without--c /usr/share/menu/binary:2
+E: binary: su-to-root-without--c /usr/share/menu/binary:3
 E: binary: su-to-root-without-usr-sbin /usr/lib/menu/binary:4
+E: binary: su-to-root-without-usr-sbin /usr/share/menu/binary:4
 E: binary: suidregister-used-in-maintainer-script postinst
 E: binary: unstripped-binary-or-object ./usr/bin/hello
 I: binary: arch-dep-package-has-big-usr-share
@@ -25,8 +31,13 @@
 W: binary: file-in-unusual-dir usr/bar
 W: binary: invalid-date-in-changelog The, 15 Apr 2004 23:33:51 +0200
 W: binary: menu-command-not-in-package /usr/lib/menu/binary:6 /imnothere
+W: binary: menu-command-not-in-package /usr/share/menu/binary:6 /imnothere
+W: binary: menu-file-in-usr-lib usr/lib/menu/binary
 W: binary: menu-item-needs-tag-has-unknown-value wm /usr/lib/menu/binary:5
+W: binary: menu-item-needs-tag-has-unknown-value wm /usr/share/menu/binary:5
 W: binary: package-contains-hardlink usr/bar2 -> usr/share/baz
 W: binary: package-contains-upstream-install-documentation usr/share/doc/binary/INSTALL
 W: binary: unquoted-string-in-menu-item /usr/lib/menu/binary needs:1
 W: binary: unquoted-string-in-menu-item /usr/lib/menu/binary needs:2
+W: binary: unquoted-string-in-menu-item /usr/share/menu/binary needs:1
+W: binary: unquoted-string-in-menu-item /usr/share/menu/binary needs:2

Modified: trunk/testset/tags.filenames
===================================================================
--- trunk/testset/tags.filenames	2005-04-12 23:21:38 UTC (rev 415)
+++ trunk/testset/tags.filenames	2005-06-17 00:19:29 UTC (rev 416)
@@ -1,4 +1,5 @@
 E: filenames: bad-menu-file-name usr/lib/menu/menu
+E: filenames: bad-menu-file-name usr/share/menu/menu
 E: filenames: lengthy-symlink usr/lib/filenames/symlink4wrong ../filenames/symlink2
 E: filenames: lengthy-symlink usr/share/doc/filenames/version.txt.gz ../filenames/doc/version6.txt.gz
 E: filenames: no-copyright-file
@@ -7,8 +8,8 @@
 E: filenames: package-installs-file-to-usr-something-x11 usr/bin/X11/
 E: filenames: package-installs-file-to-usr-something-x11 usr/bin/X11/testxbin
 E: filenames: package-installs-packlist usr/lib/perl5/foo/.packlist
-E: filenames: postinst-does-not-call-updatemenus usr/lib/menu/menu
-E: filenames: postrm-does-not-call-updatemenus usr/lib/menu/menu
+E: filenames: postinst-does-not-call-updatemenus usr/share/menu/menu
+E: filenames: postrm-does-not-call-updatemenus usr/share/menu/menu
 E: filenames: symlink-contains-spurious-segments usr/lib/filenames/symlink5wrong ../menu/../somethingelse
 E: filenames: symlink-contains-spurious-segments usr/lib/filenames/symlink6wrong ./file4
 E: filenames: symlink-contains-spurious-segments usr/lib/filenames/symlink7wrong ../menu/./something
@@ -41,6 +42,7 @@
 W: filenames: file-in-unusual-dir files/Maelstrom Sound
 W: filenames: file-in-unusual-dir files/Maelstrom Sound.mine
 W: filenames: file-in-unusual-dir files/svn-commit.tmp
+W: filenames: menu-file-in-usr-lib usr/lib/menu/menu
 W: filenames: no-priority-field
 W: filenames: no-section-field
 W: filenames: non-standard-dir-perm usr/lib/filenames/readonly/ 0555 != 0755



Reply to: