summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/distutils-base.bbclass6
-rw-r--r--meta/classes/distutils.bbclass46
2 files changed, 43 insertions, 9 deletions
diff --git a/meta/classes/distutils-base.bbclass b/meta/classes/distutils-base.bbclass
index c3f325768d..5150be76b9 100644
--- a/meta/classes/distutils-base.bbclass
+++ b/meta/classes/distutils-base.bbclass
@@ -5,14 +5,14 @@ RDEPENDS += "python-core"
5def python_dir(d): 5def python_dir(d):
6 import os, bb 6 import os, bb
7 staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 ) 7 staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 )
8 if os.path.exists( "%s/python2.3" % staging_incdir ): return "python2.3"
9 if os.path.exists( "%s/python2.4" % staging_incdir ): return "python2.4"
10 if os.path.exists( "%s/python2.5" % staging_incdir ): return "python2.5" 8 if os.path.exists( "%s/python2.5" % staging_incdir ): return "python2.5"
9 if os.path.exists( "%s/python2.4" % staging_incdir ): return "python2.4"
10 if os.path.exists( "%s/python2.3" % staging_incdir ): return "python2.3"
11 raise "No Python in STAGING_INCDIR. Forgot to build python-native ?" 11 raise "No Python in STAGING_INCDIR. Forgot to build python-native ?"
12 12
13PYTHON_DIR = "${@python_dir(d)}" 13PYTHON_DIR = "${@python_dir(d)}"
14FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" 14FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"
15FILES_${PN}-dbg = "${libdir}/${PYTHON_DIR}/site-packages/.debug \ 15FILES_${PN}-dbg = "${libdir}/${PYTHON_DIR}/site-packages/.debug \
16 ${libdir}/${PYTHON_DIR}/site-packages/./*/debug \ 16 ${libdir}/${PYTHON_DIR}/site-packages/*/.debug \
17 ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug" 17 ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug"
18 18
diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass
index 5f57a9ea19..c07a9911cd 100644
--- a/meta/classes/distutils.bbclass
+++ b/meta/classes/distutils.bbclass
@@ -1,15 +1,49 @@
1inherit distutils-base 1inherit distutils-base
2 2
3distutils_do_compile() { 3distutils_do_compile() {
4 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ 4 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
5 ${STAGING_BINDIR_NATIVE}/python setup.py build || \ 5 ${STAGING_BINDIR_NATIVE}/python setup.py build || \
6 oefatal "python setup.py build execution failed." 6 oefatal "python setup.py build_ext execution failed."
7}
8
9distutils_stage_headers() {
10 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
11 ${STAGING_BINDIR_NATIVE}/python setup.py install_headers --install-dir=${STAGING_INCDIR}/${PYTHON_DIR} || \
12 oefatal "python setup.py install_headers execution failed."
13}
14
15distutils_stage_all() {
16 install -d ${STAGING_INCDIR}/../${PYTHON_DIR}/site-packages
17 PYTHONPATH=${STAGING_INCDIR}/../${PYTHON_DIR}/site-packages \
18 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
19 ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${STAGING_INCDIR}/.. --install-data=${STAGING_INCDIR}/../share || \
20 oefatal "python setup.py install (stage) execution failed."
7} 21}
8 22
9distutils_do_install() { 23distutils_do_install() {
10 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ 24 install -d ${D}${libdir}/${PYTHON_DIR}/site-packages
11 ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}/${prefix} --install-data=${D}/${datadir} || \ 25 PYTHONPATH=${D}/${libdir}/${PYTHON_DIR}/site-packages \
12 oefatal "python setup.py install execution failed." 26 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
27 ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}/${prefix} --install-data=${D}/${datadir} || \
28 oefatal "python setup.py install execution failed."
29
30 for i in `find ${D} -name "*.py"` ; do \
31 sed -i -e s:${D}::g $i
32 done
33
34 if test -e ${D}${bindir} ; then
35 for i in ${D}${bindir}/* ; do \
36 sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
37 done
38 fi
39
40 if test -e ${D}${sbindir} ; then
41 for i in ${D}${sbindir}/* ; do \
42 sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i
43 done
44 fi
45
46 rm -f ${D}${libdir}/${PYTHON_DIR}/site-packages/easy-install.pth
13} 47}
14 48
15EXPORT_FUNCTIONS do_compile do_install 49EXPORT_FUNCTIONS do_compile do_install