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" |
Patrick Williams | 7784c42 | 2022-11-17 07:29:11 -0600 | [diff] [blame^] | 11 | LIC_FILES_CHKSUM = "file://LICENSE;md5=32c0d09a0641daf4903e5d61cc8f23a8" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 12 | |
Andrew Geissler | 87f5cff | 2022-09-30 13:13:31 -0500 | [diff] [blame] | 13 | SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BPN}-${PV}.tar.gz \ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 14 | file://not-win32.patch \ |
Andrew Geissler | 09209ee | 2020-12-13 08:44:15 -0600 | [diff] [blame] | 15 | file://0001-arm-sysv-reverted-clang-VFP-mitigation.patch \ |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 16 | " |
Patrick Williams | 7784c42 | 2022-11-17 07:29:11 -0600 | [diff] [blame^] | 17 | SRC_URI[sha256sum] = "d66c56ad259a82cf2a9dfc408b32bf5da52371500b84745f7fb8b645712df676" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 18 | |
Andrew Geissler | 5f35090 | 2021-07-23 13:09:54 -0400 | [diff] [blame] | 19 | EXTRA_OECONF += "--disable-builddir --disable-exec-static-tramp" |
Andrew Geissler | 615f2f1 | 2022-07-15 14:00:58 -0500 | [diff] [blame] | 20 | EXTRA_OECONF:class-native += "--with-gcc-arch=generic" |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 21 | EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'" |
Andrew Geissler | 87f5cff | 2022-09-30 13:13:31 -0500 | [diff] [blame] | 22 | inherit autotools texinfo multilib_header github-releases |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 23 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 24 | do_install:append() { |
Andrew Geissler | 635e0e4 | 2020-08-21 15:58:33 -0500 | [diff] [blame] | 25 | oe_multilib_header ffi.h ffitarget.h |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 26 | } |
| 27 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 28 | FILES:${PN}-dev += "${libdir}/libffi-${PV}" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 29 | |
| 30 | # Doesn't compile in MIPS16e mode due to use of hand-written |
| 31 | # assembly |
| 32 | MIPS_INSTRUCTION_SET = "mips" |
| 33 | |
| 34 | BBCLASSEXTEND = "native nativesdk" |