====== Operators ====== * ''='' late evaluation (expand variable when used) * '':='' immediately expand * ''+='' append (with space) * ''=+'' prepend (with space) * ''.='' append (without space) * ''=.'' prepend (without space) * ''?='' assign if no other value was assigned * ''??='' assign if no other value was assigned (lower priority than mentioned above) Rethink usage of ''+='' and similar in local.conf. Example: * If ''+='' is parsed before ''?='', the latter will be omitted. * **Solution**: use ''_append'' to unconditionally appends a value (but add space before value). ====== SRC_URI_append ====== When multiple ''.bbappend''s adds patches, order of patching is wrong. poky/meta/classes/patch.bbclass def src_patches(d, all=False, expand=True): import oe.patch return oe.patch.src_patches(d, all, expand) poky/meta/lib/oe/patch.py def src_patches(d, all=False, expand=True): fetch = bb.fetch2.Fetch([], d) patches = [] sources = [] for url in fetch.urls: local = patch_path(url, fetch, workdir, expand) if not local: if all: local = fetch.localpath(url) sources.append(local) continue ... localurl = bb.fetch.encodeurl(('file', '', local, '', '', patchparm)) patches.append(localurl) if all: return sources return patches