Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | SUMMARY = "A portable foreign function interface library" |
| 2 | HOMEPAGE = "http://sourceware.org/libffi/" |
| 3 | DESCRIPTION = "The `libffi' library provides a portable, high level programming interface to various calling \ |
| 4 | conventions. This allows a programmer to call any function specified by a call interface description at run \ |
| 5 | time. FFI stands for Foreign Function Interface. A foreign function interface is the popular name for the \ |
| 6 | interface that allows code written in one language to call code written in another language. The `libffi' \ |
| 7 | library really only provides the lowest, machine dependent layer of a fully featured foreign function interface. \ |
| 8 | A layer must exist above `libffi' that handles type conversions for values passed between the two languages." |
| 9 | |
| 10 | LICENSE = "MIT" |
| 11 | LIC_FILES_CHKSUM = "file://LICENSE;md5=492385fe22195952f5b9b197868ba268" |
| 12 | |
| 13 | SRC_URI = "https://github.com/libffi/libffi/releases/download/v${PV}/${BPN}-${PV}.tar.gz \ |
| 14 | file://not-win32.patch \ |
| 15 | file://0001-Fixed-missed-ifndef-for-__mips_soft_float.patch \ |
Andrew Geissler | 09209ee | 2020-12-13 08:44:15 -0600 | [diff] [blame^] | 16 | file://0001-arm-sysv-reverted-clang-VFP-mitigation.patch \ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 17 | file://0001-powerpc-fix-build-failure-on-power7-and-older-532.patch \ |
| 18 | file://0001-Address-platforms-with-no-__int128.patch \ |
| 19 | file://0001-Address-platforms-with-no-__int128-part2.patch \ |
| 20 | file://0001-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch \ |
| 21 | " |
| 22 | SRC_URI[md5sum] = "6313289e32f1d38a9df4770b014a2ca7" |
| 23 | SRC_URI[sha256sum] = "72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056" |
| 24 | UPSTREAM_CHECK_URI = "https://github.com/libffi/libffi/releases/" |
| 25 | UPSTREAM_CHECK_REGEX = "libffi-(?P<pver>\d+(\.\d+)+)\.tar" |
| 26 | |
| 27 | EXTRA_OECONF += "--disable-builddir" |
| 28 | EXTRA_OEMAKE_class-target = "LIBTOOLFLAGS='--tag=CC'" |
| 29 | inherit autotools texinfo multilib_header |
| 30 | |
| 31 | do_install_append() { |
Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame] | 32 | oe_multilib_header ffi.h ffitarget.h |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 33 | } |
| 34 | |
| 35 | FILES_${PN}-dev += "${libdir}/libffi-${PV}" |
| 36 | |
| 37 | # Doesn't compile in MIPS16e mode due to use of hand-written |
| 38 | # assembly |
| 39 | MIPS_INSTRUCTION_SET = "mips" |
| 40 | |
| 41 | BBCLASSEXTEND = "native nativesdk" |
| 42 | |