2009-09-16 18:41:21 +02:00
|
|
|
Index: FilesCheck.py
|
|
|
|
===================================================================
|
|
|
|
--- FilesCheck.py.orig
|
2008-04-17 04:52:37 +02:00
|
|
|
+++ FilesCheck.py
|
2010-10-14 14:32:03 +02:00
|
|
|
@@ -653,6 +653,7 @@ bin_regex = re.compile('^/(?:usr/(?:s?bi
|
2009-08-21 18:19:06 +02:00
|
|
|
includefile_regex = re.compile('\.(c|h)(pp|xx)?$', re.IGNORECASE)
|
|
|
|
develfile_regex = re.compile('\.(a|cmxa?|mli?)$')
|
|
|
|
buildconfigfile_regex = re.compile('(\.pc|/bin/.+-config)$')
|
|
|
|
+docdir_examples_regex = re.compile('^/usr/(?:share/doc/packages|lib(?:64))/[^/]+/(?:example|demo|script|contrib)')
|
|
|
|
# room for improvement with catching more -R, but also for false positives...
|
|
|
|
buildconfig_rpath_regex = re.compile('(?:-rpath|Wl,-R)\\b')
|
|
|
|
sofile_regex = re.compile('/lib(64)?/(.+/)?lib[^/]+\.so$')
|
2011-04-21 12:12:02 +02:00
|
|
|
@@ -1188,7 +1189,7 @@ class FilesCheck(AbstractCheck.AbstractC
|
2008-04-17 04:52:37 +02:00
|
|
|
includefile_regex.search(f) or \
|
2009-08-21 18:19:06 +02:00
|
|
|
develfile_regex.search(f) or \
|
2008-04-17 04:52:37 +02:00
|
|
|
logrotate_regex.search(f)
|
|
|
|
- if nonexec_file:
|
|
|
|
+ if nonexec_file and not docdir_examples_regex.search(f):
|
|
|
|
printWarning(pkg, 'spurious-executable-perm', f)
|
2010-10-14 14:32:03 +02:00
|
|
|
elif f.startswith('/etc/') and f not in config_files and \
|
|
|
|
f not in ghost_files:
|
2011-04-21 12:12:02 +02:00
|
|
|
@@ -1553,7 +1554,10 @@ included in your package.''',
|
2008-04-17 04:52:37 +02:00
|
|
|
'spurious-executable-perm',
|
|
|
|
'''The file is installed with executable permissions, but was identified as one
|
|
|
|
that probably should not be executable. Verify if the executable bits are
|
|
|
|
-desired, and remove if not.''',
|
|
|
|
+desired, and remove if not.
|
|
|
|
+NOTE: example scripts should be packaged under %docdir/examples, which will avoid
|
|
|
|
+this warning.
|
|
|
|
+''',
|
|
|
|
|
|
|
|
'world-writable',
|
|
|
|
'''A file or directory in the package is installed with world writable
|