{"SPDXID": "SPDXRef-DOCUMENT", "creationInfo": {"comment": "This document was created by analyzing recipe files during the build.", "created": "2025-12-07T04:23:47Z", "creators": ["Tool: OpenEmbedded Core create-spdx.bbclass", "Organization: OpenEmbedded ()", "Person: N/A ()"], "licenseListVersion": "3.14"}, "dataLicense": "CC0-1.0", "documentNamespace": "http://spdx.org/spdxdocs/recipe-libffi-e07aad0a-60d0-5af2-87c1-57fff6c9f659", "externalDocumentRefs": [{"checksum": {"algorithm": "SHA1", "checksumValue": "ef15beb3544d5b862badf573941da02572ad858a"}, "externalDocumentId": "DocumentRef-dependency-recipe-autoconf-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-autoconf-native-124e4a29-7bee-575a-9a44-2226fa6af9c9"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "a5c07f1d16b5d858d23ab875d72ebd497b91c8f2"}, "externalDocumentId": "DocumentRef-dependency-recipe-automake-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-automake-native-e3046935-37af-5c2e-b371-e883e5ef1216"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "ec0a1b656c95c793c6db74286cbdb192799b431b"}, "externalDocumentId": "DocumentRef-dependency-recipe-gcc-cross-aarch64", "spdxDocument": "http://spdx.org/spdxdocs/recipe-gcc-cross-aarch64-e05122e2-842a-5b45-a068-7a450933ae13"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "03f366603b514f06cf6c9da472e5ccf84b4cb49b"}, "externalDocumentId": "DocumentRef-dependency-recipe-gcc-runtime", "spdxDocument": "http://spdx.org/spdxdocs/recipe-gcc-runtime-a8177036-816d-5f00-a030-969647302050"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "df73de343349e165d92f43ef314c7bb7fd0fab8f"}, "externalDocumentId": "DocumentRef-dependency-recipe-glibc", "spdxDocument": "http://spdx.org/spdxdocs/recipe-glibc-8ec5f1d4-204b-530d-8854-79bbb314d6d7"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "549f4cc98e713c492117f533ca2c58f2fe9072f8"}, "externalDocumentId": "DocumentRef-dependency-recipe-libtool-cross", "spdxDocument": "http://spdx.org/spdxdocs/recipe-libtool-cross-07500b21-b619-56d3-838e-16ca401a612f"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "81c866e6fb3a1dbe2f0de101bbd8502675950493"}, "externalDocumentId": "DocumentRef-dependency-recipe-libtool-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-libtool-native-af5e5210-5bed-5317-878d-15206849f191"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "49533ed9300b032ee0fdef8731386f290c543a20"}, "externalDocumentId": "DocumentRef-dependency-recipe-texinfo-dummy-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-texinfo-dummy-native-cb9012ff-d8d8-5775-98c1-f58ed5fb9573"}], "name": "recipe-libffi", "packages": [{"SPDXID": "SPDXRef-Recipe-libffi", "copyrightText": "NOASSERTION", "description": "The `libffi' library provides a portable, high level programming interface to various calling conventions.  This allows a programmer to call any function specified by a call interface description at run time. FFI stands for Foreign Function Interface.  A foreign function interface is the popular name for the interface that allows code written in one language to call code written in another language.  The `libffi' library really only provides the lowest, machine dependent layer of a fully featured foreign function interface.  A layer must exist above `libffi' that handles type conversions for values passed between the two languages.", "downloadLocation": "NOASSERTION", "externalRefs": [{"referenceCategory": "SECURITY", "referenceLocator": "cpe:2.3:*:*:libffi:3.4.6:*:*:*:*:*:*:*", "referenceType": "http://spdx.org/rdf/references/cpe23Type"}], "homepage": "http://sourceware.org/libffi/", "licenseConcluded": "NOASSERTION", "licenseDeclared": "MIT", "licenseInfoFromFiles": ["NOASSERTION"], "name": "libffi", "summary": "A portable foreign function interface library", "supplier": "Organization: OpenEmbedded ()", "versionInfo": "3.4.6"}, {"SPDXID": "SPDXRef-Download-libffi-1", "checksums": [{"algorithm": "SHA256", "checksumValue": "b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e"}], "copyrightText": "NOASSERTION", "downloadLocation": "https://github.com/libffi/libffi/releases//download/v3.4.6/libffi-3.4.6.tar.gz", "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "licenseInfoFromFiles": ["NOASSERTION"], "name": "libffi-source-1", "supplier": "NOASSERTION"}], "relationships": [{"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "DESCRIBES", "spdxElementId": "SPDXRef-DOCUMENT"}, {"relatedSpdxElement": "SPDXRef-Download-libffi-1", "relationshipType": "DESCRIBES", "spdxElementId": "SPDXRef-DOCUMENT"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "SPDXRef-Download-libffi-1"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-autoconf-native:SPDXRef-Recipe-autoconf-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-automake-native:SPDXRef-Recipe-automake-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-gcc-cross-aarch64:SPDXRef-Recipe-gcc-cross-aarch64"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-gcc-runtime:SPDXRef-Recipe-gcc-runtime"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-glibc:SPDXRef-Recipe-glibc"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-libtool-cross:SPDXRef-Recipe-libtool-cross"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-libtool-native:SPDXRef-Recipe-libtool-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-libffi", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-texinfo-dummy-native:SPDXRef-Recipe-texinfo-dummy-native"}], "spdxVersion": "SPDX-2.2"}