[OE-core] [PATCH] bind: add packageconfig for python-support

Richard Purdie richard.purdie at linuxfoundation.org
Mon Feb 5 12:49:10 UTC 2018


On Mon, 2018-02-05 at 13:25 +0100, Martin Hundebøll wrote:
> Break the hard runtime dependency on python3-core by adding a
> (default-on) packageconfig option for python.
> 
> Signed-off-by: Martin Hundebøll <mnhu at prevas.dk>
> ---
>  meta/recipes-connectivity/bind/bind_9.10.6.bb | 14 ++++++++++----
>  1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/meta/recipes-connectivity/bind/bind_9.10.6.bb
> b/meta/recipes-connectivity/bind/bind_9.10.6.bb
> index 8b8835ba80..2ec7ab44f0 100644
> --- a/meta/recipes-connectivity/bind/bind_9.10.6.bb
> +++ b/meta/recipes-connectivity/bind/bind_9.10.6.bb
> @@ -38,16 +38,19 @@ EXTRA_OECONF = " ${ENABLE_IPV6} --with-libtool --
> enable-threads \
>                   --with-openssl=${STAGING_LIBDIR}/.. \
>                 "
>  
> -inherit autotools update-rc.d systemd useradd pkgconfig python3-dir
> +inherit autotools update-rc.d systemd useradd pkgconfig
>  
>  export PYTHON_SITEPACKAGES_DIR
>  
>  # PACKAGECONFIGs readline and libedit should NOT be set at same time
> -PACKAGECONFIG ?= "readline"
> +PACKAGECONFIG ?= "readline python"
>  PACKAGECONFIG[httpstats] = "--with-libxml2,--without-
> libxml2,libxml2"
>  PACKAGECONFIG[readline] = "--with-readline=-lreadline,,readline"
>  PACKAGECONFIG[libedit] = "--with-readline=-ledit,,libedit"
>  PACKAGECONFIG[urandom] = "--with-randomdev=/dev/urandom,--with-
> randomdev=/dev/random,,"
> +PACKAGECONFIG[python] = "--with-python=${PYTHON},--without-
> python,python3-core,python3-core"
> +
> +inherit ${@bb.utils.contains('PACKAGECONFIG', 'python',
> 'python3native', '', d)}
>  
>  USERADD_PACKAGES = "${PN}"
>  USERADD_PARAM_${PN} = "--system --home ${localstatedir}/cache/bind
> --no-create-home \
> @@ -60,7 +63,6 @@ SYSTEMD_SERVICE_${PN} = "named.service"
>  
>  PARALLEL_MAKE = ""
>  
> -RDEPENDS_${PN} = "python3-core"
>  RDEPENDS_${PN}-dev = ""
>  
>  PACKAGE_BEFORE_PN += "${PN}-utils"
> @@ -88,7 +90,11 @@ do_install_append() {
>  	install -d "${D}${sysconfdir}/init.d"
>  	install -m 644 ${S}/conf/* "${D}${sysconfdir}/bind/"
>  	install -m 755 "${S}/init.d" "${D}${sysconfdir}/init.d/bind"
> -	sed -i -e '1s,#!.*python3,#! /usr/bin/python3,'
> ${D}${sbindir}/dnssec-coverage ${D}${sbindir}/dnssec-checkds
> +
> +	if [ -n "${@bb.utils.contains('PACKAGECONFIG', 'python',
> 'python', '', d)}" ]; then
> +		sed -i -e '1s,#!.*python3,#! /usr/bin/python3,' \
> +			${D}${sbindir}/dnssec-coverage
> ${D}${sbindir}/dnssec-checkds
> +	fi

Rather than having a broken file, shouldn't it be deleted in the "no
python" case?

Cheers,

Richard
 






More information about the Openembedded-core mailing list