]> code.ossystems Code Review - openembedded-core.git/commitdiff
oelint.bbclass: make oelint bbclass work
authorChong Lu <Chong.Lu@windriver.com>
Fri, 1 Aug 2014 09:03:36 +0000 (17:03 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 6 Aug 2014 09:22:21 +0000 (10:22 +0100)
Remove LICENSE, MAINTAINER, PRIORITY and valid SECTION checking.
Convert tab indentation into four-space.

[YOCTO #5427]

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/oelint.bbclass

index f2e7540dcfeb9aca620d95d8d423ac3ef6b31553..d14e3783f3d1769ece5e5fb7de0c073b35604b1c 100644 (file)
 addtask lint before do_fetch
 do_lint[nostamp] = "1"
 python do_lint() {
-       def testVar(var, explain=None):
-               try:
-                       s = d[var]
-                       return s["content"]
-               except KeyError:
-                       bb.error("%s is not set" % var)
-                       if explain: bb.note(explain)
-                       return None
-
-
-       ##############################
-       # Test that DESCRIPTION exists
-       #
-       testVar("DESCRIPTION")
-
-
-       ##############################
-       # Test that HOMEPAGE exists
-       #
-       s = testVar("HOMEPAGE")
-       if s=="unknown":
-               bb.error("HOMEPAGE is not set")
-       elif not s.startswith("http://"):
-               bb.error("HOMEPAGE doesn't start with http://")
-
-
-
-       ##############################
-       # Test for valid LICENSE
-       #
-       valid_licenses = {
-               "GPL-2"         : "GPLv2",
-               "GPL LGPL FDL"  : True,
-               "GPL PSF"       : True,
-               "GPL/QPL"       : True,
-               "GPL"           : True,
-               "GPLv2"         : True,
-               "IBM"           : True,
-               "LGPL GPL"      : True,
-               "LGPL"          : True,
-               "MIT"           : True,
-               "OSL"           : True,
-               "Perl"          : True,
-               "Public Domain" : True,
-               "QPL"           : "GPL/QPL",
-               }
-       s = testVar("LICENSE")
-       if s=="unknown":
-               bb.error("LICENSE is not set")
-       elif s.startswith("Vendor"):
-               pass
-       else:
-               try:
-                       newlic = valid_licenses[s]
-                       if newlic == False:
-                               bb.note("LICENSE '%s' is not recommended" % s)
-                       elif newlic != True:
-                               bb.note("LICENSE '%s' is not recommended, better use '%s'" % (s, newsect))
-               except:
-                       bb.note("LICENSE '%s' is not recommended" % s)
-
-
-       ##############################
-       # Test for valid MAINTAINER
-       #
-       s = testVar("MAINTAINER")
-       if s=="OpenEmbedded Team <openembedded-devel@openembedded.org>":
-               bb.error("explicit MAINTAINER is missing, using default")
-       elif s and s.find("@") == -1:
-               bb.error("You forgot to put an e-mail address into MAINTAINER")
-
-
-       ##############################
-       # Test for valid SECTION
-       #
-       # if Correct section: True      section name is valid
-       #                     False     section name is invalid, no suggestion
-       #                     string    section name is invalid, better name suggested
-       #
-       valid_sections = {
-               # Current Section         Correct section
-               "apps"                  : True,
-               "audio"                 : True,
-               "base"                  : True,
-               "console/games"         : True,
-               "console/net"           : "console/network",
-               "console/network"       : True,
-               "console/utils"         : True,
-               "devel"                 : True,
-               "developing"            : "devel",
-               "devel/python"          : True,
-               "fonts"                 : True,
-               "games"                 : True,
-               "games/libs"            : True,
-               "gnome/base"            : True,
-               "gnome/libs"            : True,
-               "gpe"                   : True,
-               "gpe/libs"              : True,
-               "gui"                   : False,
-               "libc"                  : "libs",
-               "libs"                  : True,
-               "libs/net"              : True,
-               "multimedia"            : True,
-               "net"                   : "network",
-               "NET"                   : "network",
-               "network"               : True,
-               "opie/applets"          : True,
-               "opie/applications"     : True,
-               "opie/base"             : True,
-               "opie/codecs"           : True,
-               "opie/decorations"      : True,
-               "opie/fontfactories"    : True,
-               "opie/fonts"            : True,
-               "opie/games"            : True,
-               "opie/help"             : True,
-               "opie/inputmethods"     : True,
-               "opie/libs"             : True,
-               "opie/multimedia"       : True,
-               "opie/pim"              : True,
-               "opie/setting"          : "opie/settings",
-               "opie/settings"         : True,
-               "opie/Shell"            : False,
-               "opie/styles"           : True,
-               "opie/today"            : True,
-               "scientific"            : True,
-               "utils"                 : True,
-               "x11"                   : True,
-               "x11/libs"              : True,
-               "x11/wm"                : True,
-               }
-       s = testVar("SECTION")
-       if s:
-               try:
-                       newsect = valid_sections[s]
-                       if newsect == False:
-                               bb.note("SECTION '%s' is not recommended" % s)
-                       elif newsect != True:
-                               bb.note("SECTION '%s' is not recommended, better use '%s'" % (s, newsect))
-               except:
-                       bb.note("SECTION '%s' is not recommended" % s)
-
-               if not s.islower():
-                       bb.error("SECTION should only use lower case")
-
-
-
-       
-       ##############################
-       # Test for valid PRIORITY
-       #
-       valid_priorities = {
-               "standard"              : True,
-               "required"              : True,
-               "optional"              : True,
-               "extra"                 : True,
-               }
-       s = testVar("PRIORITY")
-       if s:
-               try:
-                       newprio = valid_priorities[s]
-                       if newprio == False:
-                               bb.note("PRIORITY '%s' is not recommended" % s)
-                       elif newprio != True:
-                               bb.note("PRIORITY '%s' is not recommended, better use '%s'" % (s, newprio))
-               except:
-                       bb.note("PRIORITY '%s' is not recommended" % s)
-
-               if not s.islower():
-                       bb.error("PRIORITY should only use lower case")
-       
+    pkgname = d.getVar("PN", True)
+
+    ##############################
+    # Test that DESCRIPTION exists
+    #
+    description = d.getVar("DESCRIPTION")
+    if description[1:10] == '{SUMMARY}':
+        bb.warn("%s: DESCRIPTION is not set" % pkgname)
+
+
+    ##############################
+    # Test that HOMEPAGE exists
+    #
+    homepage = d.getVar("HOMEPAGE")
+    if homepage == '':
+        bb.warn("%s: HOMEPAGE is not set" % pkgname)
+    elif not homepage.startswith("http://") and not homepage.startswith("https://"):
+        bb.warn("%s: HOMEPAGE doesn't start with http:// or https://" % pkgname)
+
+
+    ##############################
+    # Test for valid SECTION
+    #
+    section = d.getVar("SECTION")
+    if section == '':
+        bb.warn("%s: SECTION is not set" % pkgname)
+    elif not section.islower():
+        bb.warn("%s: SECTION should only use lower case" % pkgname)
 }