From 4547232c71590797af75b59a9890d38b61ff7890 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 16 Jun 2025 11:49:57 +0200 Subject: recipetool/devtool: calculate source paths relative to UNPACKDIR Now that recipes default to S in UNPACKDIR, recipetool and devtool should do the same. There was some discussion about changing devtool to simply setting UNPACKDIR via bbappend to a workspace and running unpack task directly; currently it has a bunch of convoluted path calculations, substitutions, moving source trees around and and special casing (devtool-source.bbclass in particular is an unpleasant hack). This should definitely be done; but right now we can simply tweak existing code which at least doesn't make it worse. (From OE-Core rev: c326ca8aeb2bf0f7719e43921d10efd5dedc7b2a) Signed-off-by: Alexander Kanavin Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- meta/classes/devtool-source.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'meta/classes/devtool-source.bbclass') diff --git a/meta/classes/devtool-source.bbclass b/meta/classes/devtool-source.bbclass index 9762003ba7..2e0070486b 100644 --- a/meta/classes/devtool-source.bbclass +++ b/meta/classes/devtool-source.bbclass @@ -92,9 +92,9 @@ python devtool_post_unpack() { for fname in local_files: f.write('%s\n' % fname) - if os.path.dirname(srcsubdir) != workdir: + if srcsubdir.startswith(unpackdir) and os.path.dirname(srcsubdir) != unpackdir: # Handle if S is set to a subdirectory of the source - srcsubdir = os.path.join(workdir, os.path.relpath(srcsubdir, workdir).split(os.sep)[0]) + srcsubdir = os.path.normpath(os.path.join(unpackdir, os.path.relpath(srcsubdir, unpackdir).split(os.sep)[0])) scriptutils.git_convert_standalone_clone(srcsubdir) -- cgit v1.2.3-54-g00ecf