From 8314590f099ec3e0592355b192ef80a2e71daac0 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 9 Mar 2013 22:03:59 -0800 Subject: classes/distutils: Introduce PYTHON_PN This is needed to accomodate python3 alongside python2 (From OE-Core rev: ae931c2cf9e48e1fb74b4b727dbf668ea880023f) Signed-off-by: Khem Raj Signed-off-by: Richard Purdie --- meta/classes/distutils-base.bbclass | 5 ++--- meta/classes/distutils-native-base.bbclass | 4 ++-- meta/classes/distutils.bbclass | 23 ++++++++++++----------- meta/classes/python-dir.bbclass | 1 + meta/classes/pythonnative.bbclass | 9 ++++++--- 5 files changed, 23 insertions(+), 19 deletions(-) (limited to 'meta') diff --git a/meta/classes/distutils-base.bbclass b/meta/classes/distutils-base.bbclass index 3b43e7629f..aa18e8b292 100644 --- a/meta/classes/distutils-base.bbclass +++ b/meta/classes/distutils-base.bbclass @@ -1,5 +1,4 @@ -DEPENDS += "${@["python-native python", ""][(d.getVar('PACKAGES', True) == '')]}" -RDEPENDS_${PN} += "${@['', 'python-core']['${CLASSOVERRIDE}' == 'class-target']}" +DEPENDS += "${@["${PYTHON_PN}-native ${PYTHON_PN}", ""][(d.getVar('PACKAGES', True) == '')]}" +RDEPENDS_${PN} += "${@['', '${PYTHON_PN}-core']['${CLASSOVERRIDE}' == 'class-target']}" inherit distutils-common-base pythonnative - diff --git a/meta/classes/distutils-native-base.bbclass b/meta/classes/distutils-native-base.bbclass index ceda512e39..509cb9551a 100644 --- a/meta/classes/distutils-native-base.bbclass +++ b/meta/classes/distutils-native-base.bbclass @@ -1,3 +1,3 @@ -DEPENDS += "${@["python-native", ""][(d.getVar('PACKAGES', True) == '')]}" - inherit distutils-common-base + +DEPENDS += "${@["${PYTHON_PN}-native", ""][(d.getVar('PACKAGES', True) == '')]}" diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass index 80f6df8ed8..f3da023942 100644 --- a/meta/classes/distutils.bbclass +++ b/meta/classes/distutils.bbclass @@ -11,15 +11,15 @@ distutils_do_compile() { STAGING_INCDIR=${STAGING_INCDIR} \ STAGING_LIBDIR=${STAGING_LIBDIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python-native/python setup.py build ${DISTUTILS_BUILD_ARGS} || \ - bbfatal "python setup.py build_ext execution failed." + ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py build ${DISTUTILS_BUILD_ARGS} || \ + bbfatal "${PYTHON_PN} setup.py build_ext execution failed." } distutils_stage_headers() { install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python-native/python setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \ - bbfatal "python setup.py install_headers execution failed." + ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install_headers ${DISTUTILS_STAGE_HEADERS_ARGS} || \ + bbfatal "${PYTHON_PN} setup.py install_headers execution failed." } distutils_stage_all() { @@ -28,21 +28,22 @@ distutils_stage_all() { install -d ${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python-native/python setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ - bbfatal "python setup.py install (stage) execution failed." + ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ + bbfatal "${PYTHON_PN} setup.py install (stage) execution failed." } distutils_do_install() { install -d ${D}${PYTHON_SITEPACKAGES_DIR} STAGING_INCDIR=${STAGING_INCDIR} \ STAGING_LIBDIR=${STAGING_LIBDIR} \ - PYTHONPATH=${D}/${PYTHON_SITEPACKAGES_DIR} \ + PYTHONPATH=${D}${PYTHON_SITEPACKAGES_DIR} \ BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python-native/python setup.py install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} || \ - bbfatal "python setup.py install execution failed." + ${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN} setup.py install --install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${DISTUTILS_INSTALL_ARGS} || \ + bbfatal "${PYTHON_PN} setup.py install execution failed." - for i in `find ${D} -name "*.py"` ; do \ - sed -i -e s:${D}::g $i + # support filenames with *spaces* + find ${D} -name "*.py" -print0 | while read -d $'\0' i ; do \ + sed -i -e s:${D}::g "$i" done if test -e ${D}${bindir} ; then diff --git a/meta/classes/python-dir.bbclass b/meta/classes/python-dir.bbclass index 0b6a33c2ed..b4b5ab0eab 100644 --- a/meta/classes/python-dir.bbclass +++ b/meta/classes/python-dir.bbclass @@ -1,3 +1,4 @@ PYTHON_BASEVERSION ?= "2.7" PYTHON_DIR = "python${PYTHON_BASEVERSION}" +PYTHON_PN = "python${@'' if '${PYTHON_BASEVERSION}'.startswith('2') else '3'}" PYTHON_SITEPACKAGES_DIR = "${libdir}/${PYTHON_DIR}/site-packages" diff --git a/meta/classes/pythonnative.bbclass b/meta/classes/pythonnative.bbclass index 7886207d06..fdd22bbc86 100644 --- a/meta/classes/pythonnative.bbclass +++ b/meta/classes/pythonnative.bbclass @@ -1,3 +1,6 @@ -PYTHON="${STAGING_BINDIR_NATIVE}/python-native/python" -EXTRANATIVEPATH += "python-native" -DEPENDS += " python-native " + +inherit python-dir + +PYTHON="${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}" +EXTRANATIVEPATH += "${PYTHON_PN}-native" +DEPENDS += " ${PYTHON_PN}-native " -- cgit v1.2.3-54-g00ecf