summaryrefslogtreecommitdiffstats
path: root/scripts/lib
diff options
context:
space:
mode:
authorAlexander Kanavin <alex@linutronix.de>2025-06-16 11:49:51 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-06-20 12:07:26 +0100
commitf59a7df3fe946e2274440275a638a58321842ee9 (patch)
tree6cf875056d11cf09d732b52370e1ad015e301af2 /scripts/lib
parent724b86c08ad914ee2fcb029b15f151fdf6416e6c (diff)
downloadpoky-f59a7df3fe946e2274440275a638a58321842ee9.tar.gz
meta: remove S in recipes that fetch from git via setting BB_GIT_DEFAULT_DESTSUFFIX
Removing all the S = ${WORKDIR}/git assignments works because BB_GIT_DEFAULT_DESTSUFFIX is set to match S from bitbake.conf (which itself is set to match typical tarball releases). A few recipes are setting S to a sub-directory of the git tree and need to be adjusted accordingly. bzip2 recipe is fetching a tarball and separately cloning tests; adjust the recipe to put the latter into 'bzip2-tests', instead of 'git'. devupstream.bbclass no longer needs to rewrite S, and is adjusted accordingly. Adjust scripts/lib/recipetool/append.py to not hardcode 'git' as unpack destination. Adjust kernel-yocto.bbclass to use the git unpack variable instead of hardcoding 'git' (there's also removal of repetition of string constants and a correction of workdir/unpackdir mismatch in one of the if-else branches). Ensure build-appliance-image recipe does not use 'git' as checkout directory for poky repo, but rather explicitly name it 'poky'. Ensure reproducible.py code that looks for git repositories does not hardcode 'git' but uses the destination set by BB_GIT_DEFAULT_DESTSUFFIX. Ensure recipetool does not write out unneeded S settings into newly created recipes that fetch from git. Adjust selftest to not hardcode 'git' as unpack directory. (From OE-Core rev: f80c07019ddadaf9c5fb890faabfda7920ecd15e) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib')
-rw-r--r--scripts/lib/recipetool/append.py4
-rw-r--r--scripts/lib/recipetool/create.py3
2 files changed, 3 insertions, 4 deletions
diff --git a/scripts/lib/recipetool/append.py b/scripts/lib/recipetool/append.py
index 10945d6008..c18926e56c 100644
--- a/scripts/lib/recipetool/append.py
+++ b/scripts/lib/recipetool/append.py
@@ -336,9 +336,9 @@ def appendsrc(args, files, rd, extralines=None):
336 src_destdir = os.path.dirname(srcfile) 336 src_destdir = os.path.dirname(srcfile)
337 if not args.use_workdir: 337 if not args.use_workdir:
338 if rd.getVar('S') == rd.getVar('STAGING_KERNEL_DIR'): 338 if rd.getVar('S') == rd.getVar('STAGING_KERNEL_DIR'):
339 srcdir = os.path.join(workdir, 'git') 339 srcdir = os.path.join(workdir, rd.getVar('BB_GIT_DEFAULT_DESTSUFFIX'))
340 if not bb.data.inherits_class('kernel-yocto', rd): 340 if not bb.data.inherits_class('kernel-yocto', rd):
341 logger.warning('S == STAGING_KERNEL_DIR and non-kernel-yocto, unable to determine path to srcdir, defaulting to ${WORKDIR}/git') 341 logger.warning('S == STAGING_KERNEL_DIR and non-kernel-yocto, unable to determine path to srcdir, defaulting to ${WORKDIR}/${BB_GIT_DEFAULT_DESTSUFFIX}')
342 src_destdir = os.path.join(os.path.relpath(srcdir, workdir), src_destdir) 342 src_destdir = os.path.join(os.path.relpath(srcdir, workdir), src_destdir)
343 src_destdir = os.path.normpath(src_destdir) 343 src_destdir = os.path.normpath(src_destdir)
344 344
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 3c6ef6719f..7080558beb 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -638,7 +638,6 @@ def create_recipe(args):
638 if len(splitline) > 1: 638 if len(splitline) > 1:
639 if splitline[0] == 'origin' and scriptutils.is_src_url(splitline[1]): 639 if splitline[0] == 'origin' and scriptutils.is_src_url(splitline[1]):
640 srcuri = reformat_git_uri(splitline[1]) + ';branch=master' 640 srcuri = reformat_git_uri(splitline[1]) + ';branch=master'
641 srcsubdir = 'git'
642 break 641 break
643 642
644 if args.src_subdir: 643 if args.src_subdir:
@@ -840,7 +839,7 @@ def create_recipe(args):
840 line = line.replace(realpv, '${PV}') 839 line = line.replace(realpv, '${PV}')
841 if pn: 840 if pn:
842 line = line.replace(pn, '${BPN}') 841 line = line.replace(pn, '${BPN}')
843 if line == 'S = "${WORKDIR}/${BPN}-${PV}"': 842 if line == 'S = "${WORKDIR}/${BPN}-${PV}"' or 'tmp-recipetool-' in line:
844 skipblank = True 843 skipblank = True
845 continue 844 continue
846 elif line.startswith('SRC_URI = '): 845 elif line.startswith('SRC_URI = '):