]> code.ossystems Code Review - openembedded-core.git/commitdiff
distutils: Replacing path to native python by path to python in the image to support...
authorLukas Bulwahn <lukas.bulwahn@bmw-carit.de>
Thu, 13 Dec 2012 16:55:38 +0000 (17:55 +0100)
committerRoss Burton <ross.burton@intel.com>
Tue, 23 Apr 2013 09:35:27 +0000 (10:35 +0100)
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@oss.bmw-carit.de>
sgw - added \ to protect the space.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
meta/classes/distutils.bbclass

index c73b24f2738bc550e21a6543ea7140a37129b8c2..38548493366f1c880d0aec1ba27218a9115afce3 100644 (file)
@@ -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