diff options
| author | Richard Purdie <richard@rex.(none)> | 2009-12-05 23:18:02 +0000 |
|---|---|---|
| committer | Richard Purdie <richard@rex.(none)> | 2009-12-05 23:18:02 +0000 |
| commit | 288e62a22115a32effc65efa7c2d6ef2867d0b91 (patch) | |
| tree | e316e1034e26300b44f7cdfc297b73727f3242f3 | |
| parent | c7d4ad8e9dce735cf52caaf38afe2392301b2536 (diff) | |
| download | poky-288e62a22115a32effc65efa7c2d6ef2867d0b91.tar.gz | |
distutils: Sync with OE.dev
Signed-off-by: Richard Purdie <richard@rex.(none)>
| -rw-r--r-- | meta/classes/distutils-base.bbclass | 14 | ||||
| -rw-r--r-- | meta/classes/distutils-common-base.bbclass | 30 | ||||
| -rw-r--r-- | meta/classes/distutils-native-base.bbclass | 3 | ||||
| -rw-r--r-- | meta/classes/distutils.bbclass | 13 |
4 files changed, 44 insertions, 16 deletions
diff --git a/meta/classes/distutils-base.bbclass b/meta/classes/distutils-base.bbclass index 5d6d9981e0..2e151ded38 100644 --- a/meta/classes/distutils-base.bbclass +++ b/meta/classes/distutils-base.bbclass | |||
| @@ -1,17 +1,5 @@ | |||
| 1 | EXTRA_OEMAKE = "" | ||
| 2 | DEPENDS += "${@["python-native python", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" | 1 | DEPENDS += "${@["python-native python", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" |
| 3 | RDEPENDS += "python-core" | 2 | RDEPENDS += "python-core" |
| 4 | 3 | ||
| 5 | def python_dir(d): | 4 | inherit distutils-common-base |
| 6 | staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 ) | ||
| 7 | if os.path.exists( "%s/python2.5" % staging_incdir ): return "python2.5" | ||
| 8 | if os.path.exists( "%s/python2.4" % staging_incdir ): return "python2.4" | ||
| 9 | if os.path.exists( "%s/python2.3" % staging_incdir ): return "python2.3" | ||
| 10 | raise "No Python in STAGING_INCDIR. Forgot to build python-native ?" | ||
| 11 | |||
| 12 | PYTHON_DIR = "${@python_dir(d)}" | ||
| 13 | FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" | ||
| 14 | FILES_${PN}-dbg = "${libdir}/${PYTHON_DIR}/site-packages/.debug \ | ||
| 15 | ${libdir}/${PYTHON_DIR}/site-packages/*/.debug \ | ||
| 16 | ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug" | ||
| 17 | 5 | ||
diff --git a/meta/classes/distutils-common-base.bbclass b/meta/classes/distutils-common-base.bbclass new file mode 100644 index 0000000000..01bf9eaeba --- /dev/null +++ b/meta/classes/distutils-common-base.bbclass | |||
| @@ -0,0 +1,30 @@ | |||
| 1 | EXTRA_OEMAKE = "" | ||
| 2 | |||
| 3 | export STAGING_INCDIR | ||
| 4 | export STAGING_LIBDIR | ||
| 5 | |||
| 6 | def python_dir(d): | ||
| 7 | import os, bb | ||
| 8 | staging_incdir = bb.data.getVar( "STAGING_INCDIR", d, 1 ) | ||
| 9 | for majmin in "2.6 2.5 2.4 2.3".split(): | ||
| 10 | if os.path.exists( "%s/python%s" % ( staging_incdir, majmin ) ): return "python%s" % majmin | ||
| 11 | if not "python-native" in bb.data.getVar( "DEPENDS", d, 1 ).split(): | ||
| 12 | raise "No Python in STAGING_INCDIR. Forgot to build python-native ?" | ||
| 13 | return "INVALID" | ||
| 14 | |||
| 15 | PYTHON_DIR = "${@python_dir(d)}" | ||
| 16 | |||
| 17 | PACKAGES = "${PN}-dev ${PN}-dbg ${PN}-doc ${PN}" | ||
| 18 | |||
| 19 | FILES_${PN} = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*" | ||
| 20 | |||
| 21 | FILES_${PN}-dev += "\ | ||
| 22 | ${datadir}/pkgconfig \ | ||
| 23 | ${libdir}/pkgconfig \ | ||
| 24 | ${libdir}/${PYTHON_DIR}/site-packages/*.la \ | ||
| 25 | " | ||
| 26 | FILES_${PN}-dbg = "\ | ||
| 27 | ${libdir}/${PYTHON_DIR}/site-packages/.debug \ | ||
| 28 | ${libdir}/${PYTHON_DIR}/site-packages/*/.debug \ | ||
| 29 | ${libdir}/${PYTHON_DIR}/site-packages/*/*/.debug \ | ||
| 30 | " | ||
diff --git a/meta/classes/distutils-native-base.bbclass b/meta/classes/distutils-native-base.bbclass new file mode 100644 index 0000000000..2703fe0740 --- /dev/null +++ b/meta/classes/distutils-native-base.bbclass | |||
| @@ -0,0 +1,3 @@ | |||
| 1 | DEPENDS += "${@["python-native", ""][(bb.data.getVar('PACKAGES', d, 1) == '')]}" | ||
| 2 | |||
| 3 | inherit distutils-common-base | ||
diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass index 0b9bdfe1a9..245ef7d859 100644 --- a/meta/classes/distutils.bbclass +++ b/meta/classes/distutils.bbclass | |||
| @@ -25,10 +25,10 @@ distutils_stage_headers() { | |||
| 25 | } | 25 | } |
| 26 | 26 | ||
| 27 | distutils_stage_all() { | 27 | distutils_stage_all() { |
| 28 | install -d ${STAGING_DIR_HOST}${prefix}/${PYTHON_DIR}/site-packages | ||
| 29 | STAGING_INCDIR=${STAGING_INCDIR} \ | 28 | STAGING_INCDIR=${STAGING_INCDIR} \ |
| 30 | STAGING_LIBDIR=${STAGING_LIBDIR} \ | 29 | STAGING_LIBDIR=${STAGING_LIBDIR} \ |
| 31 | PYTHONPATH=${STAGING_DIR_HOST}${prefix}/${PYTHON_DIR}/site-packages \ | 30 | install -d ${STAGING_DIR_HOST}${libdir}/${PYTHON_DIR}/site-packages |
| 31 | PYTHONPATH=${STAGING_DIR_HOST}${libdir}/${PYTHON_DIR}/site-packages \ | ||
| 32 | BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ | 32 | BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \ |
| 33 | ${STAGING_BINDIR_NATIVE}/python setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ | 33 | ${STAGING_BINDIR_NATIVE}/python setup.py install ${DISTUTILS_STAGE_ALL_ARGS} || \ |
| 34 | oefatal "python setup.py install (stage) execution failed." | 34 | oefatal "python setup.py install (stage) execution failed." |
| @@ -60,7 +60,14 @@ distutils_do_install() { | |||
| 60 | fi | 60 | fi |
| 61 | 61 | ||
| 62 | rm -f ${D}${libdir}/${PYTHON_DIR}/site-packages/easy-install.pth | 62 | rm -f ${D}${libdir}/${PYTHON_DIR}/site-packages/easy-install.pth |
| 63 | 63 | ||
| 64 | # | ||
| 65 | # FIXME: Bandaid against wrong datadir computation | ||
| 66 | # | ||
| 67 | if test -e ${D}${datadir}/share; then | ||
| 68 | mv -f ${D}${datadir}/share/* ${D}${datadir}/ | ||
| 69 | fi | ||
| 70 | |||
| 64 | find ${D}${libdir}/${PYTHON_DIR}/site-packages -iname '*.pyo' -exec rm {} \; | 71 | find ${D}${libdir}/${PYTHON_DIR}/site-packages -iname '*.pyo' -exec rm {} \; |
| 65 | } | 72 | } |
| 66 | 73 | ||
