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

Martin Hundebøll mnhu at prevas.dk
Mon Feb 5 12:51:09 UTC 2018



On 2018-02-05 13:49, Richard Purdie wrote:
> 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?

Bind is clever enough to avoid installing it in that case...

// Martin



More information about the Openembedded-core mailing list