Improved package file read using oe.packagedata.read_pkgdatafile instead of doing itself.
Signed-off-by: Aníbal Limón <[email protected]> --- meta/classes/license.bbclass | 23 +++++------------------ 1 file changed, 5 insertions(+), 18 deletions(-) diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass index f2dd0eb..d462b0a 100644 --- a/meta/classes/license.bbclass +++ b/meta/classes/license.bbclass @@ -28,6 +28,7 @@ python write_package_manifest() { python license_create_manifest() { import re import oe.license + import oe.packagedata bad_licenses = (d.getVar("INCOMPATIBLE_LICENSE", True) or "").split() bad_licenses = map(lambda l: canonical_license(d, l), bad_licenses) @@ -84,25 +85,11 @@ python license_create_manifest() { for pkg in pkg_list: pkg_info = os.path.join(d.getVar('PKGDATA_DIR', True), 'runtime-reverse', pkg) - with open(pkg_info, "r") as pkg_info_file: - pkg_dic[pkg] = {} + pkg_lic_name = "LICENSE_" + os.path.basename(os.readlink(pkg_info)) - pkg_lic_name = os.path.basename(os.readlink(pkg_info)) - - for line in pkg_info_file.read().split("\n"): - if re.match("^PN: .*$", line): - pkg_dic[pkg]["PN"] = re.search("PN: (.*)$", line).group(1) - - if re.match("^PV: .*$", line): - pkg_dic[pkg]["PV"] = re.search("PV: (.*)$", line).group(1) - - if re.match("^LICENSE_%s: (.*)$" % re.escape(pkg_lic_name) - , line): - pkg_dic[pkg]["LICENSE"] = re.search("^LICENSE_%s: (.*)$" - % pkg_lic_name, line).group(1) - elif re.match("^LICENSE: (.*)$", line): - pkg_dic[pkg]["LICENSE"] = re.search("^LICENSE: (.*)$", - line).group(1) + pkg_dic[pkg] = oe.packagedata.read_pkgdatafile(pkg_info) + if not "LICENSE" in pkg_dic[pkg].keys(): + pkg_dic[pkg]["LICENSE"] = pkg_dic[pkg][pkg_lic_name] license_manifest = os.path.join(d.getVar('LICENSE_DIRECTORY', True), d.getVar('IMAGE_NAME', True), 'license.manifest') -- 1.9.1 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
