Skip to contentSkip to conversation

bind: fix python3 dependencies

PATCH In review Dan McGregor 2 participants 7 messages Nov 27, 2017 – Nov 29, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 bind: fix python3 dependencies

From: Dan McGregor <[email protected]>

Add missing python3 dependency, and use python3 from the build system.

---
 meta/recipes-connectivity/bind/bind_9.10.6.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/recipes-connectivity/bind/bind_9.10.6.bb +2 -2
index 8b8835ba80..0cf572af26 100644
@@ -5,7 +5,7 @@ SECTION = "console/network"
 LICENSE = "ISC & BSD"
 LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=dba46507446198119bcde32a4feaab43"
 
-DEPENDS = "openssl libcap"
+DEPENDS = "openssl libcap python3"
 
 SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.gz \
            file://conf.patch \
@@ -38,7 +38,7 @@ 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 python3-dir python3native
 
 export PYTHON_SITEPACKAGES_DIR
 
Signature · 1 line
2.15.0.106.g7bc77766e
#1 lore raw

meta/recipes-connectivity/bind/bind_9.10.6.bb SECTION = "console/network"

Quoted 6 lines · Dan McGregor

Add missing python3 dependency, and use python3 from the build system.

meta/recipes-connectivity/bind/bind_9.10.6.bb +2 -2
-DEPENDS = "openssl libcap"
+DEPENDS = "openssl libcap python3"
-inherit autotools update-rc.d systemd useradd pkgconfig python3-dir
+inherit autotools update-rc.d systemd useradd pkgconfig python3-dir python3native

This should have a more specific explanation. Namely:

1) why is target python3 needed at build time (if not, it should be in RDEPENDS of a specific package)

2) why is native python3 needed, and host python3 is not enough.

Alex

#2 lore raw
Quoted 13 lines · Alexander Kanavin
Quoted 8 lines · Dan McGregor

Add missing python3 dependency, and use python3 from the build system.

meta/recipes-connectivity/bind/bind_9.10.6.bb +2 -2
-DEPENDS = "openssl libcap"
+DEPENDS = "openssl libcap python3"
-inherit autotools update-rc.d systemd useradd pkgconfig python3-dir
+inherit autotools update-rc.d systemd useradd pkgconfig python3-dir

python3native

This should have a more specific explanation. Namely:

Quoted 2 lines

1) why is target python3 needed at build time (if not, it should be in RDEPENDS of a specific package)

It's already in RDEPENDS as python3-core. It's needed at build time so that the python component build of bind can find python in the sysroot. Without this change I get:

| error: invalid Python installation: unable to open /usr/lib/python3.5/config-3.5m/Makefile (No such file or directory)

With only inherit python3native I get:

| error: invalid Python installation: unable to open <recipe sysroot>/usr/lib64/python3.5/config-3.5m/Makefile (No such file or directory)

Quoted 2 lines

2) why is native python3 needed, and host python3 is not enough.

Host python3 gives me the error above. Possibly my host's python3 is broken, but it's a Poky build appliance with multilib enabled.

I'll make it more explicit in my commit message.

Thanks.

Quoted 3 lines

Alex

#3 lore raw
Quoted 6 lines · Dan McGregor
Quoted 1 line

2) why is native python3 needed, and host python3 is not enough.

Host python3 gives me the error above. Possibly my host's python3 is broken, but it's a Poky build appliance with multilib enabled.

I'll make it more explicit in my commit message.

Note that bind is built by yocto autobuilder many times a day, in multiple configurations (including multilib). And no one else has reported the issue. It does seem to me that the patch is working around a problem that is somehow specific to your setup, and is not a common issue.

Can you dig a bit deeper and find out the root cause of the error message you are getting without this patch please? Try also with a plain poky checkout, and see if the issue disappears there.

Alex

#4 lore raw
Quoted 8 lines · Alexander Kanavin
Quoted 7 lines · Dan McGregor
Quoted 2 lines

2) why is native python3 needed, and host python3 is not enough.

Host python3 gives me the error above. Possibly my host's python3 is broken, but it's a Poky build appliance with multilib enabled.

Quoted 8 lines
Quoted 1 line

I'll make it more explicit in my commit message.

Note that bind is built by yocto autobuilder many times a day, in multiple configurations (including multilib). And no one else has reported the issue. It does seem to me that the patch is working around a problem that is somehow specific to your setup, and is not a common issue.

Oh I'm sure it's specific to my organisation now. The issue is in distutils on the host, it doesn't like being installed in /usr/lib64, so I'll make a patch for that soon. I still don't like relying on host tools for the python stuff, though.

Quoted 3 lines

Can you dig a bit deeper and find out the root cause of the error message you are getting without this patch please? Try also with a plain poky checkout, and see if the issue disappears there.

Yeah, as I said above python3 distutils seems to be broken when multilib is enabled. I'll fix that and send a patch later today or tomorrow.

Quoted 3 lines

Alex

#5 lore raw
Quoted 7 lines · Dan McGregor
Quoted 3 lines

Can you dig a bit deeper and find out the root cause of the error message you are getting without this patch please? Try also with a plain poky checkout, and see if the issue disappears there.

Yeah, as I said above python3 distutils seems to be broken when multilib is enabled. I'll fix that and send a patch later today or tomorrow.

Just wondering, do you have this fix in your setup?

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=3d29214b20433a506a3d59cdc08fc1a9be09a5a0

Alex

#6 lore raw
Quoted 7 lines · Alexander Kanavin
Quoted 6 lines · Dan McGregor
Quoted 4 lines

Can you dig a bit deeper and find out the root cause of the error message you are getting without this patch please? Try also with a plain poky checkout, and see if the issue disappears there.

Quoted 9 lines
Quoted 3 lines

Yeah, as I said above python3 distutils seems to be broken when multilib is enabled. I'll fix that and send a patch later today or tomorrow.

Just wondering, do you have this fix in your setup?

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=3d29214b20433a506a3d59cdc08fc1a9be09a5a0

I do. I found that distutils isn't patched in there, it's still hardcoded.

Quoted 1 line

Alex