Index: FilesCheck.py =================================================================== RCS file: /cooker/soft/rpmlint/FilesCheck.py,v retrieving revision 1.87 diff -u -r1.87 FilesCheck.py --- FilesCheck.py 17 Jun 2005 09:48:34 -0000 1.87 +++ FilesCheck.py 6 Jul 2005 14:19:21 -0000 @@ -186,6 +186,7 @@ shellbang_regex=re.compile('^#!\s*(\S*)') interpreter_regex=re.compile('^/(usr/)?s?bin/[^/]+$') script_regex=re.compile('^/((usr/)?s?bin|etc/(rc.d/init.d|profile.d|X11/xinit.d|cron.(hourly|daily|monthly|weekly)))/') +libtool_archive_regex=re.compile('\.la$') for idx in range(0, len(dangling_exceptions)): dangling_exceptions[idx][0]=re.compile(dangling_exceptions[idx][0]) @@ -552,10 +553,10 @@ if res: if not interpreter_regex.search(res.group(1)): printError(pkg, 'wrong-script-interpreter', f, '"' + res.group(1) + '"') - else: + elif not (lib_path_regex.search(f) and libtool_archive_regex.search(f)): printError(pkg, 'script-without-shellbang', f) - if mode & 0111 == 0: + if mode & 0111 == 0 and not doc_regex.search(f): printError(pkg, 'non-executable-script', f, oct(perm)) if line.endswith('\r\n'): printError(pkg, 'wrong-script-end-of-line-encoding', f)