summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python_2.6.5.bb
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:14:24 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-27 15:29:45 +0100
commit29d6678fd546377459ef75cf54abeef5b969b5cf (patch)
tree8edd65790e37a00d01c3f203f773fe4b5012db18 /meta/recipes-devtools/python/python_2.6.5.bb
parentda49de6885ee1bc424e70bc02f21f6ab920efb55 (diff)
downloadpoky-29d6678fd546377459ef75cf54abeef5b969b5cf.tar.gz
Major layout change to the packages directory
Having one monolithic packages directory makes it hard to find things and is generally overwhelming. This commit splits it into several logical sections roughly based on function, recipes.txt gives more information about the classifications used. The opportunity is also used to switch from "packages" to "recipes" as used in OpenEmbedded as the term "packages" can be confusing to people and has many different meanings. Not all recipes have been classified yet, this is just a first pass at separating things out. Some packages are moved to meta-extras as they're no longer actively used or maintained. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-devtools/python/python_2.6.5.bb')
-rw-r--r--meta/recipes-devtools/python/python_2.6.5.bb121
1 files changed, 121 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python_2.6.5.bb b/meta/recipes-devtools/python/python_2.6.5.bb
new file mode 100644
index 0000000000..9658fd48dc
--- /dev/null
+++ b/meta/recipes-devtools/python/python_2.6.5.bb
@@ -0,0 +1,121 @@
1require python.inc
2DEPENDS = "python-native db gdbm openssl readline sqlite3 zlib"
3DEPENDS_sharprom = "python-native db readline zlib gdbm openssl"
4# set to .0 on every increase of INC_PR
5PR = "${INC_PR}.2"
6
7SRC_URI = "\
8 http://www.python.org/ftp/python/${PV}/Python-${PV}.tar.bz2 \
9 file://00-fix-bindir-libdir-for-cross.patch \
10 file://01-use-proper-tools-for-cross-build.patch \
11 file://02-remove-test-for-cross.patch \
12 file://03-fix-tkinter-detection.patch \
13 file://04-default-is-optimized.patch \
14 file://05-enable-ctypes-cross-build.patch \
15 file://99-ignore-optimization-flag.patch \
16 file://sitecustomize.py \
17"
18S = "${WORKDIR}/Python-${PV}"
19
20inherit autotools
21
22# The 3 lines below are copied from the libffi recipe, ctypes ships its own copy of the libffi sources
23#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :(
24TARGET_CC_ARCH_append_armv6 = " -D__SOFTFP__"
25TARGET_CC_ARCH_append_armv7a = " -D__SOFTFP__"
26
27do_configure_prepend() {
28 autoreconf -Wcross --verbose --install --force --exclude=autopoint Modules/_ctypes/libffi || oenote "_ctypes failed to autoreconf"
29}
30
31#
32# Copy config.h and an appropriate Makefile for distutils.sysconfig,
33# which laters uses the information out of these to compile extensions
34#
35do_compile_prepend() {
36 install -d ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
37 install -d ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
38 install -m 0644 pyconfig.h ${STAGING_INCDIR}/python${PYTHON_MAJMIN}/
39 install -m 0644 Makefile Makefile.orig
40 install -m 0644 Makefile Makefile.backup
41 sed -e 's,${includedir},${STAGING_INCDIR},' < Makefile.backup > Makefile
42 install -m 0644 Makefile Makefile.backup
43 sed -e 's,${libdir},${STAGING_LIBDIR},' < Makefile.backup > Makefile
44 install -m 0644 Makefile ${STAGING_LIBDIR}/python${PYTHON_MAJMIN}/config/
45}
46
47do_compile() {
48 oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
49 HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
50 STAGING_LIBDIR=${STAGING_LIBDIR} \
51 STAGING_INCDIR=${STAGING_INCDIR} \
52 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
53 OPT="${CFLAGS}" libpython${PYTHON_MAJMIN}.so
54
55 oe_libinstall -so libpython${PYTHON_MAJMIN} ${STAGING_LIBDIR}
56
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 OPT="${CFLAGS}"
63}
64
65do_install() {
66 install -m 0644 Makefile.orig Makefile
67
68 oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/pgen \
69 HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python \
70 STAGING_LIBDIR=${STAGING_LIBDIR} \
71 STAGING_INCDIR=${STAGING_INCDIR} \
72 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
73 DESTDIR=${D} LIBDIR=${libdir} install
74
75 install -m 0644 ${WORKDIR}/sitecustomize.py ${D}/${libdir}/python${PYTHON_MAJMIN}
76
77 # remove hardcoded ccache, see http://bugs.openembedded.net/show_bug.cgi?id=4144
78 sed -i -e s,ccache,'$(CCACHE)', ${D}/${libdir}/python${PYTHON_MAJMIN}/config/Makefile
79}
80
81require python-${PYTHON_MAJMIN}-manifest.inc
82
83# manual dependency additions
84RPROVIDES_python-core = "python"
85RRECOMMENDS_python-core = "python-readline"
86RRECOMMENDS_python-crypt = "openssl"
87
88# add sitecustomize
89FILES_python-core += "${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py"
90# ship 2to3
91FILES_python-core += "${bindir}/2to3"
92
93# package libpython2
94PACKAGES =+ "libpython2"
95FILES_libpython2 = "${libdir}/libpython*.so*"
96
97# additional stuff -dev
98
99FILES_${PN}-dev = "\
100 ${includedir} \
101 ${libdir}/lib*${SOLIBSDEV} \
102 ${libdir}/*.la \
103 ${libdir}/*.a \
104 ${libdir}/*.o \
105 ${libdir}/pkgconfig \
106 ${base_libdir}/*.a \
107 ${base_libdir}/*.o \
108 ${datadir}/aclocal \
109 ${datadir}/pkgconfig \
110"
111
112# catch debug extensions (isn't that already in python-core-dbg?)
113FILES_python-dbg += "${libdir}/python${PYTHON_MAJMIN}/lib-dynload/.debug"
114
115# catch all the rest (unsorted)
116PACKAGES += "python-misc"
117FILES_python-misc = "${libdir}/python${PYTHON_MAJMIN}"
118
119# catch manpage
120PACKAGES += "python-man"
121FILES_python-man = "${datadir}/man"