summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorSaul Wold <Saul.Wold@windriver.com>2022-02-03 11:43:48 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-02-23 23:43:42 +0000
commit97586f5d623916a651822cf4b16f982daa40c7b0 (patch)
tree3d2fb09567dd85c75531659258c3ed90275a6a8a /scripts
parent599987e98458e8525c517c56e1712cd76f6b31c0 (diff)
downloadpoky-97586f5d623916a651822cf4b16f982daa40c7b0.tar.gz
recipetool: Fix circular reference in SRC_URI
When creating a new recipe.bb file for a binary, don't use BP which includes the version information, instead use BPN which is just the name base Package Name. Since PB is not specified, it takes the default: PV = "1.0+git${SRCPV}" But SRCPV is defined in terms of the SRC_URI, which leads to infinite recursion (traceback below). Here are the pertinent variables which cause the recursion: SRC_URI = "git://github.com/lvc/abi-dumper;protocol=https;subdir=${BP}" BP = "${BPN}-${PV}" PV = "1.0+git${SRCPV}" SRCPV = "${@bb.fetch2.get_srcrev(d)}" def get_srcrev(d, method_name='sortable_revision'): # ... trimmed scms = [] fetcher = Fetch(d.getVar('SRC_URI').split(), d) # ... trimmed [YOCTO #14040] (From OE-Core rev: 64434ffd6d406e4c3d1e9ca2fb72fa97990346d8) Signed-off-by: Saul Wold <saul.wold@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 3b8d43fc53ee13d39abc3b2a1f706a97fcf752aa) Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/lib/recipetool/create.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/lib/recipetool/create.py b/scripts/lib/recipetool/create.py
index 5b6ac12a92..798cb0cefe 100644
--- a/scripts/lib/recipetool/create.py
+++ b/scripts/lib/recipetool/create.py
@@ -435,7 +435,7 @@ def create_recipe(args):
435 if args.binary: 435 if args.binary:
436 # Assume the archive contains the directory structure verbatim 436 # Assume the archive contains the directory structure verbatim
437 # so we need to extract to a subdirectory 437 # so we need to extract to a subdirectory
438 fetchuri += ';subdir=${BP}' 438 fetchuri += ';subdir=${BPN}'
439 srcuri = fetchuri 439 srcuri = fetchuri
440 rev_re = re.compile(';rev=([^;]+)') 440 rev_re = re.compile(';rev=([^;]+)')
441 res = rev_re.search(srcuri) 441 res = rev_re.search(srcuri)