diff options
author | Joshua Lock <josh@linux.intel.com> | 2010-07-13 13:29:23 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-07-24 00:46:57 +0100 |
commit | 9fcba301febcfce937b3d0890d4ba3b43369fcd6 (patch) | |
tree | 6835e8e023dd9a075a8eac705e6b0f3f468969c1 /meta | |
parent | a4fb2c9666129c0df55f871ddc7bb989909cd31f (diff) | |
download | poky-9fcba301febcfce937b3d0890d4ba3b43369fcd6.tar.gz |
libpcre: move from meta-moblin to meta and update to 8.10
Move the libpcre from meta-moblin, update to the latest release and enable
native build.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/packages/libpcre/files/pcre-cross.patch | 25 | ||||
-rw-r--r-- | meta/packages/libpcre/libpcre_8.10.bb | 53 |
2 files changed, 78 insertions, 0 deletions
diff --git a/meta/packages/libpcre/files/pcre-cross.patch b/meta/packages/libpcre/files/pcre-cross.patch new file mode 100644 index 0000000000..0626fb347a --- /dev/null +++ b/meta/packages/libpcre/files/pcre-cross.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | To be upstreamable, this patch requires check for *_FOR_BUILD, otherwise | ||
2 | it needs to pass special variables. | ||
3 | |||
4 | It would be nice to implement per-target compiler specification to | ||
5 | automake, as it is done for linker. | ||
6 | |||
7 | Even better it would be nice to implement native build time targets in | ||
8 | automake. | ||
9 | |||
10 | Index: pcre-7.6/Makefile.am | ||
11 | =================================================================== | ||
12 | --- pcre-7.6.orig/Makefile.am 2008-01-23 17:58:28.000000000 +0000 | ||
13 | +++ pcre-7.6/Makefile.am 2008-04-03 22:32:00.000000000 +0000 | ||
14 | @@ -147,6 +147,11 @@ | ||
15 | |||
16 | noinst_PROGRAMS += dftables | ||
17 | dftables_SOURCES = dftables.c | ||
18 | +dftables_LINK = $(LINK_FOR_BUILD) -o $@ | ||
19 | +dftables_LDFLAGS = $(LDFLAGS_FOR_BUILD) | ||
20 | + | ||
21 | +dftables.o: $(srcdir)/dftables.c | ||
22 | + $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) -o $@ $(srcdir)/dftables.c | ||
23 | |||
24 | pcre_chartables.c: dftables$(EXEEXT) | ||
25 | ./dftables$(EXEEXT) $@ | ||
diff --git a/meta/packages/libpcre/libpcre_8.10.bb b/meta/packages/libpcre/libpcre_8.10.bb new file mode 100644 index 0000000000..840d74a658 --- /dev/null +++ b/meta/packages/libpcre/libpcre_8.10.bb | |||
@@ -0,0 +1,53 @@ | |||
1 | DESCRIPTION = "Perl-compatible regular expression library. PCRE has its own native \ | ||
2 | API, but a set of 'wrapper' functions that are based on the POSIX API \ | ||
3 | are also supplied in the library libpcreposix. Note that this just \ | ||
4 | provides a POSIX calling interface to PCRE; the regular expressions \ | ||
5 | themselves still follow Perl syntax and semantics. The header file for \ | ||
6 | the POSIX-style functions is called pcreposix.h." | ||
7 | SECTION = "devel" | ||
8 | PR = "r4" | ||
9 | LICENSE = "BSD" | ||
10 | SRC_URI = "${SOURCEFORGE_MIRROR}/pcre/pcre-${PV}.tar.bz2 \ | ||
11 | file://pcre-cross.patch;patch=1" | ||
12 | S = "${WORKDIR}/pcre-${PV}" | ||
13 | |||
14 | PROVIDES = "pcre" | ||
15 | |||
16 | inherit autotools binconfig | ||
17 | |||
18 | PARALLEL_MAKE = "" | ||
19 | |||
20 | CFLAGS_append = " -D_REENTRANT" | ||
21 | CXXFLAGS_powerpc += "-lstdc++" | ||
22 | EXTRA_OECONF = " --with-link-size=2 --enable-newline-is-lf --with-match-limit=10000000 --enable-rebuild-chartables --enable-utf8" | ||
23 | |||
24 | do_compile () { | ||
25 | # stop libtool from trying to link with host libraries - fix from #33 | ||
26 | # this resolve build problem on amd64 - #1015 | ||
27 | if [ -e ${S}/${TARGET_SYS}-libtool ] ; then | ||
28 | sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool | ||
29 | else | ||
30 | ln -sf ${S}/libtool ${S}/${TARGET_SYS}-libtool | ||
31 | sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool | ||
32 | fi | ||
33 | |||
34 | # The generation of dftables can lead to timestamp problems with ccache | ||
35 | # because the generated config.h seems newer. It is sufficient to ensure that the | ||
36 | # attempt to build dftables inside make will actually work (foo_FOR_BUILD is | ||
37 | # only used for this). | ||
38 | oe_runmake CC_FOR_BUILD="${BUILD_CC}" CFLAGS_FOR_BUILD="-DLINK_SIZE=2 -I${S}/include" LINK_FOR_BUILD="${BUILD_CC} -L${S}/lib" | ||
39 | } | ||
40 | |||
41 | python populate_packages_prepend () { | ||
42 | pcre_libdir = bb.data.expand('${libdir}', d) | ||
43 | pcre_libdir_dbg = bb.data.expand('${libdir}/.debug', d) | ||
44 | do_split_packages(d, pcre_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev', allow_links=True) | ||
45 | do_split_packages(d, pcre_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') | ||
46 | do_split_packages(d, pcre_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') | ||
47 | do_split_packages(d, pcre_libdir, '^lib(.*)\.so\.*', 'lib%s', 'libpcre %s library', extra_depends='', allow_links=True) | ||
48 | } | ||
49 | |||
50 | FILES_${PN} = "${libdir}/libpcre.so.*" | ||
51 | FILES_${PN}-dev += "${bindir}/*" | ||
52 | |||
53 | BBCLASSEXTEND = "native" | ||