From bbb5e55abd0e628a5b0dae90d5eace0a2483f1fc Mon Sep 17 00:00:00 2001 From: Zhang Xiao Date: Mon, 12 Mar 2018 02:12:58 -0700 Subject: python3: fix file conflict when multilib enabled Config file python3.5m-config conflicts between 32 and 64 bit packages. Use update-alternatives to add base_libdir as suffix to avoid it. [YOCTO #12511] Signed-off-by: Zhang Xiao Signed-off-by: Richard Purdie --- meta/recipes-devtools/python/python3_3.5.5.bb | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'meta/recipes-devtools/python') diff --git a/meta/recipes-devtools/python/python3_3.5.5.bb b/meta/recipes-devtools/python/python3_3.5.5.bb index 4dae4fa4c6..50f63e39c1 100644 --- a/meta/recipes-devtools/python/python3_3.5.5.bb +++ b/meta/recipes-devtools/python/python3_3.5.5.bb @@ -4,7 +4,7 @@ DEPENDS = "python3-native libffi bzip2 gdbm openssl sqlite3 zlib virtual/libintl PR = "${INC_PR}.0" PYTHON_MAJMIN = "3.5" -PYTHON_BINABI= "${PYTHON_MAJMIN}m" +PYTHON_BINABI = "${PYTHON_MAJMIN}m" DISTRO_SRC_URI ?= "file://sitecustomize.py" DISTRO_SRC_URI_linuxstdbase = "" SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.xz \ @@ -48,7 +48,13 @@ UPSTREAM_CHECK_REGEX = "[Pp]ython-(?P\d+(\.\d+)+).tar" S = "${WORKDIR}/Python-${PV}" -inherit autotools multilib_header python3native pkgconfig +inherit autotools multilib_header python3native pkgconfig update-alternatives + +MULTILIB_SUFFIX = "${@d.getVar('base_libdir',1).split('/')[-1]}" + +ALTERNATIVE_${PN}-dev = "python-config" +ALTERNATIVE_LINK_NAME[python-config] = "${bindir}/python${PYTHON_BINABI}-config" +ALTERNATIVE_TARGET[python-config] = "${bindir}/python${PYTHON_BINABI}-config-${MULTILIB_SUFFIX}" CONFIGUREOPTS += " --with-system-ffi " @@ -207,6 +213,8 @@ py_package_preprocess () { ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} \ -c "from py_compile import compile; compile('./${libdir}/python${PYTHON_MAJMIN}/_sysconfigdata.py', optimize=2)" cd - + + mv ${PKGD}/${bindir}/python3.5m-config ${PKGD}/${bindir}/python3.5m-config-${MULTILIB_SUFFIX} } # manual dependency additions -- cgit 1.2.3-korg