]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
python3-ctypes: depend on ldconfig only if distro-feature set
authorJörg Sommer <joerg.sommer@navimatix.de>
Fri, 22 Nov 2024 14:39:27 +0000 (15:39 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 23 Nov 2024 14:28:29 +0000 (14:28 +0000)
In the source code is only usage of ldconfig (for Linux) in
Lib/ctypes/util.py:301. This is wrapped in try-execpt which causes
_findSoname_ldconfig return Nothing. This is handled properly in
find_library and other methods to find the library a tried.

So, the code can handle the case of a missing /sbin/ldconfig (BTW:
hard-coded path). When DISTRO_FEATURES does not contain ldconfig some other
services (Systemd) to setup and maintain the ldconfig.cache are not
installed. Hence, this ldconfig pulled in by the ctype dependency is of no
use.

Therefore, do not set the dependency on ldconfig, if the distro-feature is
not set.

Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/python/python3_3.13.0.bb

index 54742f5257b61116a41b6f38f73267e9e956ec54..8db5b813738bc00414a6ed70768e11e2847fbc3a 100644 (file)
@@ -461,7 +461,9 @@ FILES:${PN}-man = "${datadir}/man"
 
 # See https://bugs.python.org/issue18748 and https://bugs.python.org/issue37395
 RDEPENDS:libpython3:append:libc-glibc = " libgcc"
-RDEPENDS:${PN}-ctypes:append:libc-glibc = " ${MLPREFIX}ldconfig"
+RDEPENDS:${PN}-ctypes:append:libc-glibc = "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)} \
+"
 RDEPENDS:${PN}-ptest = "${PN}-modules ${PN}-tests ${PN}-dev ${PN}-zipapp unzip bzip2 libgcc tzdata coreutils sed gcc g++ binutils \
                         locale-base-fr-fr locale-base-en-us locale-base-de-de"
 RDEPENDS:${PN}-ptest:append:libc-glibc = " locale-base-tr-tr"