SHA256
1
0
forked from pool/rpmlint
rpmlint/suse-version.diff

51 lines
2.2 KiB
Diff

From: Some One <nobody@opensuse.org>
Date: Thu, 9 Apr 2015 14:55:37 +0200
Subject: [PATCH] suse-version.diff
===================================================================
---
SpecCheck.py | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
Index: rpmlint-rpmlint-1.10/SpecCheck.py
===================================================================
--- rpmlint-rpmlint-1.10.orig/SpecCheck.py
+++ rpmlint-rpmlint-1.10/SpecCheck.py
@@ -51,6 +51,7 @@ packager_regex = re_tag_compile('Package
buildarch_regex = re_tag_compile('BuildArch(?:itectures)?')
buildprereq_regex = re_tag_compile('BuildPreReq')
prereq_regex = re_tag_compile(r'PreReq(\(.*\))')
+suse_version_regex = re.compile(r'%suse_version\s*[<>=]+\s*(\d+)')
make_check_regex = re.compile(r'(^|\s|%{?__)make}?\s+(check|test)')
rm_regex = re.compile(r'(^|\s)((.*/)?rm|%{?__rm}?) ')
@@ -391,6 +392,12 @@ class SpecCheck(AbstractCheck.AbstractCh
if not res.group(1).startswith('%'):
printWarning(pkg, 'hardcoded-prefix-tag', res.group(1))
+ res = suse_version_regex.search(line)
+ if res and int(res.group(1)) > 0 and int(res.group(1)) < 1315:
+ printWarning(pkg, "obsolete-suse-version-check", res.group(1))
+ elif res and int(res.group(1)) > 1550:
+ printError(pkg, "invalid-suse-version-check", res.group(1))
+
res = prereq_regex.search(line)
if res:
printError(pkg, 'prereq-use', res.group(2))
@@ -806,6 +813,15 @@ architecture independent or if some othe
in some editors but can lead to obscure errors. It should be replaced by a
regular space.''',
+'obsolete-suse-version-check',
+'''The specfile contains a comparison of %suse_version against a suse release
+that is no longer in maintenance. Consider removing obsolete parts of your
+spec file to make it more readable.''',
+
+'invalid-suse-version-check',
+'''The specfile contains a comparison of %suse_version against a suse release
+that does not exist. Please double check.''',
+
'non-standard-group',
'''The value of the Group tag in the package is not valid. Valid groups are:
"%s".''' % '", "'.join(VALID_GROUPS),