diff options
author | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
---|---|---|
committer | Denys Dmytriyenko <denis@denix.org> | 2009-03-17 14:32:59 -0400 |
commit | 709c4d66e0b107ca606941b988bad717c0b45d9b (patch) | |
tree | 37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/libffi/libffi_2.0+gcc4.3.2.bb | |
parent | fa6cd5a3b993f16c27de4ff82b42684516d433ba (diff) |
rename packages/ to recipes/ per earlier agreement
See links below for more details:
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326
http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816
Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Acked-by: Mike Westerhof <mwester@dls.net>
Acked-by: Philip Balister <philip@balister.org>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Marcin Juszkiewicz <hrw@openembedded.org>
Acked-by: Koen Kooi <koen@openembedded.org>
Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/libffi/libffi_2.0+gcc4.3.2.bb')
-rw-r--r-- | recipes/libffi/libffi_2.0+gcc4.3.2.bb | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/recipes/libffi/libffi_2.0+gcc4.3.2.bb b/recipes/libffi/libffi_2.0+gcc4.3.2.bb new file mode 100644 index 0000000000..5a2ae1ae9b --- /dev/null +++ b/recipes/libffi/libffi_2.0+gcc4.3.2.bb @@ -0,0 +1,87 @@ +require packages/gcc/gcc-common.inc +SECTION = "libs" +DESCRIPTION = "Foreign Function Interface library" +LICENSE = "libffi" +PRIORITY = "optional" + +inherit autotools gettext + +PR = "r1" + +PACKAGES = "${PN}-dbg ${PN} ${PN}-dev" + +FILES_${PN} = "${libdir}/libffi.so.*" + +FILES_${PN}-dev = "${includedir}/${TARGET_SYS}/ffi* \ + ${libdir}/libffi.a \ + ${libdir}/libffi.la \ + ${libdir}/libffi.so" + +GCC_VER = "${@bb.data.getVar('PV',d,1).split('gcc')[1]}" + +SRC_URI = "${GNU_MIRROR}/gcc/gcc-${GCC_VER}/gcc-${GCC_VER}.tar.bz2 \ + " + +MIRRORS_prepend () { +${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ +${GNU_MIRROR}/gcc/ http://mirrors.rcn.net/pub/sourceware/gcc/releases/ +} + +S = "${WORKDIR}/gcc-${GCC_VER}/libffi" +B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" + +EXTRA_OECONF = "--with-gnu-ld \ + --enable-shared \ + --enable-target-optspace \ + --enable-languages=c,c++,f77 \ + --enable-threads=posix \ + --enable-multilib \ + --enable-c99 \ + --enable-long-long \ + --enable-symvers=gnu \ + --program-prefix=${TARGET_PREFIX} \ + ${EXTRA_OECONF_FPU} \ + ${EXTRA_OECONF_PATHS}" + +EXTRA_OECONF_PATHS = "--with-local-prefix=${prefix}/local \ + --with-gxx-include-dir=${includedir}/c++/${PV}" + +# Build uclibc compilers without cxa_atexit support +EXTRA_OECONF_append_linux = " --enable-__cxa_atexit" +EXTRA_OECONF_append_linux-gnueabi = " --enable-__cxa_atexit" +EXTRA_OECONF_append_linux-uclibc = " --disable-__cxa_atexit" +EXTRA_OECONF_append_linux-uclibcgnueabi = " --disable-__cxa_atexit" +EXTRA_OECONF_FPU = "${@get_gcc_fpu_setting(bb, d)}" + +#Somehow gcc doesn't set __SOFTFP__ when passing -mfloatabi=softp :( +TARGET_CC_ARCH_append_armv6 = " -D__SOFTFP__" +TARGET_CC_ARCH_append_armv7a = " -D__SOFTFP__" + + +do_configure () { + (cd ${S}/.. && gnu-configize) || die "failure running gnu-configize" + oe_runconf +} + +do_install_append() { + install_libffi_headers +} + +# Separate function which can be disabled in the -native recipe. +install_libffi_headers() { + # follow Debian and move this to $includedir/${TARGET_SYS} + install -d ${D}${includedir}/${TARGET_SYS} + mv ${D}${libdir}/gcc/${TARGET_SYS}/${GCC_VER}/include/ffitarget.h ${D}${includedir}/${TARGET_SYS} + mv ${D}${libdir}/gcc/${TARGET_SYS}/${GCC_VER}/include/ffi.h ${D}${includedir}/${TARGET_SYS} +} + +ffi_include = "ffi.h ffitarget.h" + +do_stage () { + oe_libinstall -so -C .libs libffi ${STAGING_LIBDIR} + + mkdir -p ${STAGING_INCDIR}/ + for i in ${ffi_include}; do + install -m 0644 include/$i ${STAGING_INCDIR}/ + done +} |