[oe-commits] Lukas Bulwahn : distutils: Replacing path to native python by path to python in the image to support python packages with console-script setup

git at git.openembedded.org git at git.openembedded.org
Mon Dec 17 17:24:17 UTC 2012


Module: openembedded-core.git
Branch: master
Commit: 11229def87d048c51190b9bd275c73d1f8bf6007
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=11229def87d048c51190b9bd275c73d1f8bf6007

Author: Lukas Bulwahn <lukas.bulwahn at bmw-carit.de>
Date:   Thu Dec 13 17:55:38 2012 +0100

distutils: Replacing path to native python by path to python in the image to support python packages with console-script setup

When using distutils for a python package based on a python-setuptools
installation script that sets up a console script, the header
of the console script created by setuptools points to the
python-native path.

The console scripts are commonly executed in the image, but not
in the sysroot environment. Therefore, the header of the
console scripts should point to the python interpreter in the
image.

Setuptools does not allow to set the path of the python
interpreter via some command-line argument.
Hence after the installation script ran, the distutils
class replaces the path in the console script files created by
the installation.

Signed-off-by: Lukas Bulwahn <Lukas.Bulwahn at oss.bmw-carit.de>

sgw - added \ to protect the space.

Signed-off-by: Saul Wold <sgw at linux.intel.com>

---

 meta/classes/distutils.bbclass |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass
index 552e5f3..a0e1f50 100644
--- a/meta/classes/distutils.bbclass
+++ b/meta/classes/distutils.bbclass
@@ -47,12 +47,14 @@ distutils_do_install() {
 
         if test -e ${D}${bindir} ; then	
             for i in ${D}${bindir}/* ; do \
+                sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
                 sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
             done
         fi
 
         if test -e ${D}${sbindir}; then
             for i in ${D}${sbindir}/* ; do \
+                sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${bindir}/env\ python:g $i
                 sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
             done
         fi





More information about the Openembedded-commits mailing list