]> code.ossystems Code Review - openembedded-core.git/commitdiff
sanity: TMPDIR ABI change for kernel process
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 11 Dec 2014 14:36:05 +0000 (14:36 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 20 Dec 2014 11:24:04 +0000 (11:24 +0000)
The kernel source is being moved into the sysroot, to do this and
preserve previous builds, we need to change the TMPDIR ABI and
provide a function to uninstall all kernels from the sysroot.

This change adds code to do that and increases the ABI number.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/sanity.bbclass
meta/conf/abi_version.conf

index 5be5efb8a477b549a6ea8eff88a82e552a41d9d9..2f75558104c2e1621232bd16d9617708b9b991ec 100644 (file)
@@ -519,6 +519,16 @@ def sanity_handle_abichanges(status, d):
             status.addresult("Your configuration is using stamp files including the sstate hash but your build directory was built with stamp files that do not include this.\nTo continue, either rebuild or switch back to the OEBasic signature handler with BB_SIGNATURE_HANDLER = 'OEBasic'.\n")
         elif (abi != current_abi and current_abi == "9"):
             status.addresult("The layout of the TMPDIR STAMPS directory has changed. Please clean out TMPDIR and rebuild (sstate will be still be valid and reused)\n")
+        elif (abi != current_abi and current_abi == "10" and (abi == "8" or abi == "9")):
+            bb.note("Converting staging layout from version 8/9 to layout version 10")
+            cmd = d.expand("grep -r -l sysroot-providers/virtual_kernel ${SSTATE_MANIFESTS}")
+            ret, result = oe.utils.getstatusoutput(cmd)
+            result = result.split()
+            for f in result:
+                bb.note("Uninstalling manifest file %s" % f)
+                sstate_clean_manifest(f, d)
+            with open(abifile, "w") as f:
+                f.write(current_abi)
         elif (abi != current_abi):
             # Code to convert from one ABI to another could go here if possible.
             status.addresult("Error, TMPDIR has changed its layout version number (%s to %s) and you need to either rebuild, revert or adjust it at your own risk.\n" % (abi, current_abi))
index e8cf9a312742efea57fb8a415940924a39bd11ac..2867850688461e598dd7917bd8c9debb5f042b15 100644 (file)
@@ -4,4 +4,4 @@
 # that breaks the format and have been previously discussed on the mailing list 
 # with general agreement from the core team.
 #
-OELAYOUT_ABI = "9"
+OELAYOUT_ABI = "10"