From 26f8060c3475ec988194b2163e422ba4e776fd8b Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Thu, 19 Feb 2015 16:39:53 +0000 Subject: [PATCH] classes/externalsrc: add workaround for recipes that use SRCPV in PV Here we set SRC_URI to blank, however doing so means that the function that is called when you expand the default value of SRCPV (i.e. bb.fetch2.get_srcrev()) will fail, so any recipe that references SRCPV in PV couldn't previously be used with externalsrc. (At some point we may fix the function to work in the externalsrc case, but then we would also need to ensure that ${B} did not change as a result of PV changing any time the HEAD revision changes in the external source tree, or you'll lose any intermediate build artifacts.) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- meta/classes/externalsrc.bbclass | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass index e372392801..234bd8dedd 100644 --- a/meta/classes/externalsrc.bbclass +++ b/meta/classes/externalsrc.bbclass @@ -37,6 +37,10 @@ python () { d.setVar('B', '${WORKDIR}/${BPN}-${PV}/') d.setVar('SRC_URI', '') + if '{SRCPV}' in d.getVar('PV', False): + # Dummy value because the default function can't be called with blank SRC_URI + d.setVar('SRCPV', '999') + tasks = filter(lambda k: d.getVarFlag(k, "task"), d.keys()) for task in tasks: -- 2.40.1