[OE-core] [PATCH 1/2] base: decode SRC_URI before adding implicit fetch dependencies
Burton, Ross
ross.burton at intel.com
Mon Nov 23 10:35:19 UTC 2015
These don't actually work, v2 incoming.
Ross
On 21 November 2015 at 18:44, Ross Burton <ross.burton at intel.com> wrote:
> To avoid false positives such as a SRC_URI for http://foo.xz/foo.zip
> gaining a
> dependnecy on xz-native decode the URI so that precise tests can be done.
>
> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
> meta/classes/base.bbclass | 25 ++++++++++++-------------
> 1 file changed, 12 insertions(+), 13 deletions(-)
>
> diff --git a/meta/classes/base.bbclass b/meta/classes/base.bbclass
> index eb5edef..c7db81a 100644
> --- a/meta/classes/base.bbclass
> +++ b/meta/classes/base.bbclass
> @@ -527,38 +527,37 @@ python () {
> bb.note("INCLUDING " + pn + " as buildable despite
> INCOMPATIBLE_LICENSE because it has been whitelisted for HOSTTOOLS")
>
> srcuri = d.getVar('SRC_URI', True)
> + (scheme, _ , path) = bb.fetch.decodeurl(srcuri)[:3]
> # Svn packages should DEPEND on subversion-native
> - if "svn://" in srcuri:
> + if scheme == "svn":
> d.appendVarFlag('do_fetch', 'depends', '
> subversion-native:do_populate_sysroot')
>
> # Git packages should DEPEND on git-native
> - if "git://" in srcuri:
> + elif scheme == "git":
> d.appendVarFlag('do_fetch', 'depends', '
> git-native:do_populate_sysroot')
>
> # Mercurial packages should DEPEND on mercurial-native
> - elif "hg://" in srcuri:
> + elif scheme == "hg":
> d.appendVarFlag('do_fetch', 'depends', '
> mercurial-native:do_populate_sysroot')
>
> # OSC packages should DEPEND on osc-native
> - elif "osc://" in srcuri:
> + elif scheme == "osc"
> d.appendVarFlag('do_fetch', 'depends', '
> osc-native:do_populate_sysroot')
>
> - # *.lz4 should depends on lz4-native for unpacking
> - # Not endswith because of "*.patch.lz4;patch=1". Need
> bb.fetch.decodeurl in future
> - if '.lz4' in srcuri:
> + # *.lz4 should DEPEND on lz4-native for unpacking
> + if path.endswith('.lz4'):
> d.appendVarFlag('do_unpack', 'depends', '
> lz4-native:do_populate_sysroot')
>
> - # *.xz should depends on xz-native for unpacking
> - # Not endswith because of "*.patch.xz;patch=1". Need
> bb.fetch.decodeurl in future
> - if '.xz' in srcuri:
> + # *.xz should DEPEND on xz-native for unpacking
> + elif path.endswith('.xz'):
> d.appendVarFlag('do_unpack', 'depends', '
> xz-native:do_populate_sysroot')
>
> - # unzip-native should already be staged before unpacking ZIP recipes
> - if ".zip" in srcuri:
> + # .zip should DEPEND on unzip-native for unpacking
> + elif path.endswith('.zip'):
> d.appendVarFlag('do_unpack', 'depends', '
> unzip-native:do_populate_sysroot')
>
> # file is needed by rpm2cpio.sh
> - if ".src.rpm" in srcuri:
> + elif path.endswith('.src.rpm'):
> d.appendVarFlag('do_unpack', 'depends', '
> file-native:do_populate_sysroot')
>
> set_packagetriplet(d)
> --
> 2.4.9 (Apple Git-60)
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20151123/26358391/attachment-0002.html>
More information about the Openembedded-core
mailing list