From 1a210e6374b2e8140373fcb715b19d1d8c6b4b3e Mon Sep 17 00:00:00 2001 From: Mariano Lopez Date: Thu, 19 Nov 2015 08:05:46 +0000 Subject: license.bbclass: Write recipeinfo file in license folder Currently there is no way to get the recipe version when creating the rootfs. It is needed because the manifest file for the image has to contain this important piece of information. This change writes a new file in the license folder for every recipe. This file is called "recipeinfo" and have the information used to write the manifest file for the recipes deployed next to the image. [YOCTO #6772] (From OE-Core rev: 2d97d82fb51281fe130e8d135f3cf9a78423dd94) Signed-off-by: Mariano Lopez Signed-off-by: Richard Purdie --- meta/classes/license.bbclass | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'meta/classes') diff --git a/meta/classes/license.bbclass b/meta/classes/license.bbclass index 8ad4614d61..17ae82d2c5 100644 --- a/meta/classes/license.bbclass +++ b/meta/classes/license.bbclass @@ -142,6 +142,10 @@ python do_populate_lic() { # The base directory we wrangle licenses to destdir = os.path.join(d.getVar('LICSSTATEDIR', True), d.getVar('PN', True)) copy_license_files(lic_files_paths, destdir) + info = get_recipe_info(d) + with open(os.path.join(destdir, "recipeinfo"), "w") as f: + for key in sorted(info.keys()): + f.write("%s: %s\n" % (key, info[key])) } # it would be better to copy them in do_install_append, but find_license_filesa is python @@ -156,6 +160,13 @@ python perform_packagecopy_prepend () { add_package_and_files(d) } +def get_recipe_info(d): + info = {} + info["PV"] = d.getVar("PV", True) + info["PR"] = d.getVar("PR", True) + info["LICENSE"] = d.getVar("LICENSE", True) + return info + def add_package_and_files(d): packages = d.getVar('PACKAGES', True) files = d.getVar('LICENSE_FILES_DIRECTORY', True) -- cgit v1.2.3-54-g00ecf