[OE-core] [PATCH v3] python*-setuptools: add separate packages for pkg_resources module
Luca Boccassi
luca.boccassi at gmail.com
Tue May 21 12:35:22 UTC 2019
On Tue, 2019-05-21 at 13:34 +0100, luca.boccassi at gmail.com wrote:
> From: Luca Boccassi <
> luca.boccassi at microsoft.com
> >
>
> The pkg_resources Python module is useful by itself, for example for
> automatic loading of resources shipped in a Python package.
> Add separate packages for it, so that users can depend on them
> individually and avoid pulling in the entire setuptools, which
> include scripts to download other packages, which might not be
> desired on minimal images.
>
> Other distributions like Debian and Ubuntu already split setuptools
> and pkg-resources in this way.
>
> The setuptools packages now depend on the new pkg-resources packages,
> to avoid regressions for other packages that depend on them
> already.
>
> Signed-off-by: Luca Boccassi <
> luca.boccassi at microsoft.com
> >
> ---
>
> v2: restrict new RDEPENDS to class-target. As advised by Alexander,
> bitbake
> cannot resolve native rdeps that mention package names rather
> than
> recipe names.
> v3: manually add RPROVIDES to the native class instead of restricting
> the
> RDEPENDS to the target class as a better workaround. Also
> document why
> the package is being split.
>
> meta/recipes-devtools/python/python-setuptools.inc | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/meta/recipes-devtools/python/python-setuptools.inc
> b/meta/recipes-devtools/python/python-setuptools.inc
> index 357aa07086..f49e078697 100644
> --- a/meta/recipes-devtools/python/python-setuptools.inc
> +++ b/meta/recipes-devtools/python/python-setuptools.inc
> @@ -37,3 +37,14 @@ do_install_prepend() {
> }
>
> BBCLASSEXTEND = "native nativesdk"
> +
> +# The pkg-resources module can be used by itself, without the
> package downloader
> +# and easy_install. Ship it in a separate package so that it can be
> used by
> +# minimal distributions.
> +PACKAGES =+ "${PYTHON_PN}-pkg-resources "
> +FILES_${PYTHON_PN}-pkg-resources =
> "${PYTHON_SITEPACKAGES_DIR}/pkg_resources/*"
> +# Due to the way OE-Core implemented native recipes, the native
> class cannot
> +# have a dependency on something that is not a recipe name. Work
> around that by
> +# manually setting RPROVIDES.
> +RDEPENDS_${PN}_append = " ${PYTHON_PN}-pkg-resources"
> +RPROVIDES_append_class-native = " ${PYTHON_PN}-pkg-resources-native"
>
Sorry, wrong in-reply-to, resending.
--
Kind regards,
Luca Boccassi
More information about the Openembedded-core
mailing list