From d4d9aa02eaacfd22deb9ea2766776a76c9c76e62 Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Mon, 20 Feb 2023 18:31:29 -0800 Subject: package.bbclase: Add check for /build in copydebugsources() This is needed when the SDK or eSDK is installed in a /build top level directory as it conflicts with the build directory within the existing /usr/src/debug/build (which is really a link). Rename it and then do the copy, this is not an issue with master currently due to some other changes that occurred in master. Fixes: [YOCTO #15026] (From OE-Core rev: 80839835ec9fcb63069289225a3c1af257ffdef7) Signed-off-by: Saul Wold Signed-off-by: Steve Sakoman Signed-off-by: Richard Purdie --- meta/classes/package.bbclass | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 8b11fdd155..2950218145 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -636,6 +636,13 @@ def copydebugsources(debugsrcdir, sources, d): # Same check as above for externalsrc if workdir not in sdir: if os.path.exists(dvar + debugsrcdir + sdir): + # Special case for /build since we need to move into + # /usr/src/debug/build so rename sdir to build.build + if sdir.find("/build") == 0: + cmd = "mv %s%s%s %s%s%s" % (dvar, debugsrcdir, "/build", dvar, debugsrcdir, "/build.build") + subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT) + sdir = sdir.replace("/build", "/build.build", 1) + cmd = "mv %s%s%s/* %s%s" % (dvar, debugsrcdir, sdir, dvar,debugsrcdir) subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT) -- cgit v1.2.3-54-g00ecf