From: Ross Burton Date: Tue, 15 Mar 2022 16:23:43 +0000 (+0000) Subject: devupstream: fix handling of SRC_URI X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~4759 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d0edb03088d0d1c20c899daed1bb3a7110b19670;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git devupstream: fix handling of SRC_URI As the class handler runs before overrides are actually applied we need to check both SRC_URI:class-devupstream and SRC_URI, otherwise the automatic assignment of S="${WORKDIR}/git" for git repositories does not work if the base recipe uses http: but :class-devupstream has a git:// entry instead. Also, there's no need to set S:class-devupstream, we can just assign to S here. Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/classes/devupstream.bbclass b/meta/classes/devupstream.bbclass index facc46f3af8..ba6dc4136c1 100644 --- a/meta/classes/devupstream.bbclass +++ b/meta/classes/devupstream.bbclass @@ -30,10 +30,11 @@ python devupstream_virtclass_handler () { # Develpment releases are never preferred by default d.setVar("DEFAULT_PREFERENCE", "-1") - uri = bb.fetch2.URI(d.getVar("SRC_URI").split()[0]) + src_uri = d.getVar("SRC_URI:class-devupstream") or d.getVar("SRC_URI") + uri = bb.fetch2.URI(src_uri.split()[0]) if uri.scheme == "git" and not d.getVar("S:class-devupstream"): - d.setVar("S:class-devupstream", "${WORKDIR}/git") + d.setVar("S", "${WORKDIR}/git") # Modify the PV if the recipe hasn't already overridden it pv = d.getVar("PV")