From 3600fdc734db0d88d138e95073355046a61cc3ee Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Fri, 8 Jun 2007 14:32:52 +0000 Subject: distutils.bbclass: add some magic to remove paths pointing to buildsystems directories --- classes/distutils.bbclass | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'classes/distutils.bbclass') diff --git a/classes/distutils.bbclass b/classes/distutils.bbclass index 5f57a9ea19..db15cebdd7 100644 --- a/classes/distutils.bbclass +++ b/classes/distutils.bbclass @@ -10,6 +10,23 @@ distutils_do_install() { BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}/${prefix} --install-data=${D}/${datadir} || \ oefatal "python setup.py install execution failed." + + for i in `find ${D} -name "*.py"` ; do \ + sed -i -e s:${D}::g $i + done + + if test -e ${D}${bindir} ; then + for i in ${D}${bindir}/* ; do \ + 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}:${bindir}:g $i + done + fi + } EXPORT_FUNCTIONS do_compile do_install -- cgit v1.2.3 From 697093f6bc5ab5d3941cfa68fea21a2ba56def85 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Tue, 24 Jul 2007 01:04:50 +0000 Subject: distutils: set PYTHONPATH and always create the site-packages directory to improve compatibility with certain extension packages --- classes/distutils.bbclass | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'classes/distutils.bbclass') diff --git a/classes/distutils.bbclass b/classes/distutils.bbclass index db15cebdd7..a7efad2e63 100644 --- a/classes/distutils.bbclass +++ b/classes/distutils.bbclass @@ -1,15 +1,17 @@ inherit distutils-base distutils_do_compile() { - BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python setup.py build || \ - oefatal "python setup.py build execution failed." + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ + ${STAGING_BINDIR_NATIVE}/python setup.py build || \ + oefatal "python setup.py build execution failed." } distutils_do_install() { - BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}/${prefix} --install-data=${D}/${datadir} || \ - oefatal "python setup.py install execution failed." + install -d ${D}${libdir}/${PYTHON_DIR}/site-packages + PYTHONPATH=${D}/${libdir}/${PYTHON_DIR}/site-packages \ + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ + ${STAGING_BINDIR_NATIVE}/python setup.py install --prefix=${D}/${prefix} --install-data=${D}/${datadir} || \ + oefatal "python setup.py install execution failed." for i in `find ${D} -name "*.py"` ; do \ sed -i -e s:${D}::g $i -- cgit v1.2.3 From 3d210b79af413e256a792a60c4cd6a1d12514695 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Tue, 24 Jul 2007 02:14:58 +0000 Subject: classes/distutils.bbclass: * split distutils extension building into two parts * specify python-specific include directory during build_ext * add function to stage headers (NOTE: explicity-called, not implicitly) --- classes/distutils.bbclass | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'classes/distutils.bbclass') diff --git a/classes/distutils.bbclass b/classes/distutils.bbclass index a7efad2e63..c9592bd666 100644 --- a/classes/distutils.bbclass +++ b/classes/distutils.bbclass @@ -1,9 +1,18 @@ inherit distutils-base distutils_do_compile() { + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ + ${STAGING_BINDIR_NATIVE}/python setup.py build_ext --include-dirs=${STAGING_INCDIR}/${PYTHON_DIR} || \ + oefatal "python setup.py build_ext execution failed." BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ ${STAGING_BINDIR_NATIVE}/python setup.py build || \ - oefatal "python setup.py build execution failed." + oefatal "python setup.py build_ext execution failed." +} + +distutils_stage_headers() { + BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ + ${STAGING_BINDIR_NATIVE}/python setup.py install_headers --install-dir=${STAGING_INCDIR}/${PYTHON_DIR} || \ + oefatal "python setup.py install execution failed." } distutils_do_install() { -- cgit v1.2.3 From 95518b26ac8b1a412ecbaa96823454d34ea10b53 Mon Sep 17 00:00:00 2001 From: Michael Lauer Date: Tue, 24 Jul 2007 02:21:23 +0000 Subject: classes/distutils.bbclass: back out specifying the include dir, it was a) implicitly specified anyway and b) it breaks builds that add own stuff to it (e.g. '.') --- classes/distutils.bbclass | 3 --- 1 file changed, 3 deletions(-) (limited to 'classes/distutils.bbclass') diff --git a/classes/distutils.bbclass b/classes/distutils.bbclass index c9592bd666..d23c2a3b2e 100644 --- a/classes/distutils.bbclass +++ b/classes/distutils.bbclass @@ -1,9 +1,6 @@ inherit distutils-base distutils_do_compile() { - BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ - ${STAGING_BINDIR_NATIVE}/python setup.py build_ext --include-dirs=${STAGING_INCDIR}/${PYTHON_DIR} || \ - oefatal "python setup.py build_ext execution failed." BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ ${STAGING_BINDIR_NATIVE}/python setup.py build || \ oefatal "python setup.py build_ext execution failed." -- cgit v1.2.3