{"@context":"https://spdx.org/rdf/3.0.1/spdx-context.jsonld","@graph":[{"type":"CreationInfo","@id":"_:CreationInfo0","created":"2011-04-05T23:00:00Z","createdBy":["http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/agent/OpenEmbedded"],"createdUsing":["http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/tool/oe-spdx-creator_1_0"],"specVersion":"3.0.1"},{"type":"CreationInfo","@id":"_:CreationInfo1","created":"2025-08-02T06:58:39Z","createdBy":["http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/agent/OpenEmbedded"],"createdUsing":["http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/tool/oe-spdx-creator_1_0"],"specVersion":"3.0.1"},{"type":"Organization","spdxId":"http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/agent/OpenEmbedded","creationInfo":"_:CreationInfo0","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias"}],"name":"OpenEmbedded"},{"type":"Tool","spdxId":"http://spdx.org/spdxdocs/bitbake-addba517-4804-5ae3-87c2-0c3a1a5812ba/bitbake/tool/oe-spdx-creator_1_0","creationInfo":"_:CreationInfo0","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias"}],"name":"oe-spdx-creator 1.0"},{"type":"SpdxDocument","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/document/package-libffi8","creationInfo":"_:CreationInfo1","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/doc/libffi/package-libffi8/libffi/UNIHASH/document/package-libffi8"}],"name":"package-libffi8","profileConformance":["build","core","security","simpleLicensing","software"],"rootElement":["http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8"]},{"type":"software_Package","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8","creationInfo":"_:CreationInfo1","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.","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/by-doc-hash/22b513149a2c83cb93f1d4933ebcba3398023f1a1caf3ef2701e753cdc248293/libffi/UNIHASH/package/libffi8"}],"externalIdentifier":[{"type":"ExternalIdentifier","externalIdentifierType":"cpe23","identifier":"cpe:2.3:*:*:libffi:3.5.2:*:*:*:*:*:*:*"}],"name":"libffi8","summary":"A portable foreign function interface library","software_primaryPurpose":"install","software_homePage":"http://sourceware.org/libffi/","software_packageVersion":"3.5.2"},{"type":"software_File","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8/file/1","creationInfo":"_:CreationInfo1","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/by-doc-hash/22b513149a2c83cb93f1d4933ebcba3398023f1a1caf3ef2701e753cdc248293/libffi/UNIHASH/package/libffi8/file/1"}],"name":"usr/lib/libffi.so.8.2.0","verifiedUsing":[{"type":"Hash","algorithm":"sha256","hashValue":"2c0047ba3922ffb1d8a7ecbd5e43547837790608ca6607a638d8930225613210"}]},{"type":"Relationship","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/relationship/14ebd41c3f03e5ef1f3b98aecbf36ca5","creationInfo":"_:CreationInfo1","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/by-doc-hash/22b513149a2c83cb93f1d4933ebcba3398023f1a1caf3ef2701e753cdc248293/libffi/UNIHASH/relationship/14ebd41c3f03e5ef1f3b98aecbf36ca5"}],"from":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8","relationshipType":"hasDeclaredLicense","to":["http://spdxdocs.org/openembedded-alias/by-doc-hash/453e114d99514524567d884088993a8a10cbb32a550d82c94b132f44aae74ce8/libffi/UNIHASH/license/3_27_0/MIT"]},{"type":"LifecycleScopedRelationship","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/relationship/7db0b6427a099ff590a9782e7fd2f2fa","creationInfo":"_:CreationInfo1","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/by-doc-hash/22b513149a2c83cb93f1d4933ebcba3398023f1a1caf3ef2701e753cdc248293/libffi/UNIHASH/relationship/7db0b6427a099ff590a9782e7fd2f2fa"}],"from":"http://spdxdocs.org/openembedded-alias/by-doc-hash/453e114d99514524567d884088993a8a10cbb32a550d82c94b132f44aae74ce8/libffi/UNIHASH/build/recipe","relationshipType":"hasOutput","to":["http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8"],"scope":"build"},{"type":"Relationship","spdxId":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/relationship/ed6b7cd7794a79a4b8a2565811795bff","creationInfo":"_:CreationInfo1","extension":[{"type":"https://rdf.openembedded.org/spdx/3.0/id-alias","https://rdf.openembedded.org/spdx/3.0/alias":"http://spdxdocs.org/openembedded-alias/by-doc-hash/22b513149a2c83cb93f1d4933ebcba3398023f1a1caf3ef2701e753cdc248293/libffi/UNIHASH/relationship/ed6b7cd7794a79a4b8a2565811795bff"}],"from":"http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8","relationshipType":"contains","to":["http://spdx.org/spdxdocs/libffi-ca19a601-2f55-55a5-8304-8a0aefc05528/dd81795fa2c2d8c232155f71fdd465c745ff50e52659b6f2d447825538907462/package/libffi8/file/1"]}]}