Merge branch 'opendreambox' of /home/tmbinc/openembedded.git/ into opendreambox
[vuplus_openembedded] / packages / libffi / libffi_2.0+gcc4.3.2.bb
1 SECTION = "libs"
2 DESCRIPTION = "Foreign Function Interface library"
3 LICENSE = "libffi"
4 PRIORITY = "optional"
5
6 inherit autotools gettext
7
8 PACKAGES = "${PN}-dbg ${PN} ${PN}-dev"
9
10 FILES_${PN} = "${libdir}/libffi.so.*"
11
12 FILES_${PN}-dev = "${includedir}/ffi* \
13                    ${libdir}/libffi.a \
14                    ${libdir}/libffi.la \
15                    ${libdir}/libffi.so"
16
17 GCC_VER = "${@bb.data.getVar('PV',d,1).split('gcc')[1]}"
18
19 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${GCC_VER}/gcc-${GCC_VER}.tar.bz2 \
20            "
21
22 MIRRORS_prepend () {
23 ${GNU_MIRROR}/gcc/      http://gcc.get-software.com/releases/
24 ${GNU_MIRROR}/gcc/      http://mirrors.rcn.net/pub/sourceware/gcc/releases/
25 }
26
27 S = "${WORKDIR}/gcc-${GCC_VER}/libffi"
28 B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
29
30 EXTRA_OECONF = "--with-gnu-ld \
31                 --enable-shared \
32                 --enable-target-optspace \
33                 --enable-languages=c,c++,f77 \
34                 --enable-threads=posix \
35                 --enable-multilib \
36                 --enable-c99 \
37                 --enable-long-long \
38                 --enable-symvers=gnu \
39                 --program-prefix=${TARGET_PREFIX} \
40                 ${EXTRA_OECONF_PATHS}"
41
42 EXTRA_OECONF_PATHS = "--with-local-prefix=${prefix}/local \
43                       --with-gxx-include-dir=${includedir}/c++/${PV}"
44
45 do_configure () {
46         (cd ${S}/.. && gnu-configize) || die "failure running gnu-configize"
47         oe_runconf
48 }
49
50 do_install_append() {
51         # follow debian and move this to $includedir
52         mv ${D}${libdir}/gcc/${TARGET_SYS}/${GCC_VER}/include/libffi/ffitarget.h ${D}${includedir}/
53 }
54
55 ffi_include = "ffi.h ffitarget.h"
56
57 do_stage () {
58         oe_libinstall -so -C .libs libffi ${STAGING_LIBDIR}
59
60         mkdir -p ${STAGING_INCDIR}/
61         for i in ${ffi_include}; do
62                 install -m 0644 include/$i ${STAGING_INCDIR}/
63         done
64 }