Introduce STAGING_BINDIR_CROSS and STAGING_BINDIR_NATIVE as discussed on the mailing...
[vuplus_openembedded] / packages / python / python_2.4.3.bb
1 DESCRIPTION = "Python Programming Language"
2 HOMEPAGE = "http://www.python.org"
3 LICENSE = "PSF"
4 SECTION = "devel/python"
5 PRIORITY = "optional"
6 DEPENDS = "python-native readline zlib gdbm openssl tcl tk"
7 DEPENDS_sharprom = "python-native readline zlib gdbm openssl"
8 PR = "ml8"
9
10 PYTHON_MAJMIN = "2.4"
11
12 SRC_URI = "http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
13            file://bindir-libdir.patch;patch=1 \
14            file://crosscompile.patch;patch=1 \
15            file://fix-tkinter-detection.patch;patch=1 \
16            file://sitebranding.patch;patch=1"
17 S = "${WORKDIR}/Python-${PV}"
18
19 inherit autotools
20
21 EXTRA_OECONF = "--with-threads --with-pymalloc --with-cyclic-gc \
22                 --without-cxx --with-signal-module --with-wctype-functions \
23                 --enable-shared"
24
25 #
26 # copy config.h and an appropriate Makefile for distutils.sysconfig
27 # which laters uses the information out of these to compile extensions
28 #
29 do_compile_prepend() {
30         install -d ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
31         install -d ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
32         install -m 0644 pyconfig.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
33         install -m 0644 Makefile Makefile.orig
34         install -m 0644 Makefile Makefile.backup
35         sed -e 's,${includedir},${STAGING_INCDIR},' < Makefile.backup > Makefile
36         install -m 0644 Makefile Makefile.backup
37         sed -e 's,${libdir},${STAGING_LIBDIR},' < Makefile.backup > Makefile
38         install -m 0644 Makefile ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
39 }
40
41 do_compile() {
42         oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
43                    HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
44                    STAGING_LIBDIR=${STAGING_LIBDIR} \
45                    STAGING_INCDIR=${STAGING_INCDIR} \
46                    BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
47                    OPT="${CFLAGS}"
48 }
49
50 do_stage() {
51         install -m 0644 Include/*.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
52         oe_libinstall -a -so libpython2.4 ${STAGING_LIBDIR}
53 }
54
55 do_install() {
56         install -m 0644 Makefile.orig Makefile
57         oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
58                    HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
59                    STAGING_LIBDIR=${STAGING_LIBDIR} \
60                    STAGING_INCDIR=${STAGING_INCDIR} \
61                    BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
62                    DESTDIR=${D} install
63 }
64
65 require python-${PV}-manifest.inc
66
67 RPROVIDES_python-core = "python"
68 RPROVIDES_python-curses = "python"
69 PACKAGES =+ "libpython2"
70 FILES_libpython2 = "${libdir}/libpython*"