mirror of
https://git.yoctoproject.org/poky
synced 2026-04-23 18:32:12 +02:00
recipeutils: bbappend_recipe: remove old srcuri entry if parameters are different
Currently we do not add a new src_ury entry if the entry already exists AND the parameters are the same. I believe that when an entry already exist with different parameters, we should remove it and add the new entry otherwise we end up with two entries with different parameters (From OE-Core rev: a4628fffcfecb5cd95dc2558dfd39ebd71121eab) Signed-off-by: Julien Stephan <jstephan@baylibre.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
11d4d437d5
commit
165626f7b9
@@ -776,14 +776,22 @@ def bbappend_recipe(rd, destlayerdir, srcfiles, install=None, wildcardver=False,
|
||||
else:
|
||||
srcfile = os.path.basename(newfile)
|
||||
srcurientry = 'file://%s' % srcfile
|
||||
oldentry = None
|
||||
for uri in rd.getVar('SRC_URI').split():
|
||||
if srcurientry in uri:
|
||||
oldentry = uri
|
||||
if params and params[i]:
|
||||
srcurientry = '%s;%s' % (srcurientry, ';'.join('%s=%s' % (k,v) for k,v in params[i].items()))
|
||||
# Double-check it's not there already
|
||||
# FIXME do we care if the entry is added by another bbappend that might go away?
|
||||
if not srcurientry in rd.getVar('SRC_URI').split():
|
||||
if machine:
|
||||
if oldentry:
|
||||
appendline('SRC_URI:remove%s' % appendoverride, '=', ' ' + oldentry)
|
||||
appendline('SRC_URI:append%s' % appendoverride, '=', ' ' + srcurientry)
|
||||
else:
|
||||
if oldentry:
|
||||
appendline('SRC_URI:remove', '=', oldentry)
|
||||
appendline('SRC_URI', '+=', srcurientry)
|
||||
param['path'] = srcfile
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user