{"SPDXID": "SPDXRef-DOCUMENT", "creationInfo": {"comment": "This document was created by analyzing recipe files during the build.", "created": "2026-06-06T17:35:54Z", "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-hardware-interface-c89fd6ab-17c1-5be2-a703-e9ed15914305", "externalDocumentRefs": [{"checksum": {"algorithm": "SHA1", "checksumValue": "a9f7edfb0cbbeee074f1ac0e9518328781f93324"}, "externalDocumentId": "DocumentRef-dependency-recipe-ament-cmake-gen-version-h-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-ament-cmake-gen-version-h-native-519a4ced-87cd-5090-9764-2f1681586c17"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "e90d06557686cb42028d7e81d693be6b77e2e086"}, "externalDocumentId": "DocumentRef-dependency-recipe-ament-cmake-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-ament-cmake-native-5827e19d-4e41-5d66-9c63-c9239ae6b979"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "7186e5afc5f24a602b336c2101822c7ebce9a140"}, "externalDocumentId": "DocumentRef-dependency-recipe-ament-cmake-ros-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-ament-cmake-ros-native-947b9849-7b9d-56e7-b306-ec0fe08a640f"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "ed83dea8c3c24de75fe6ce36d13e204cd852f860"}, "externalDocumentId": "DocumentRef-dependency-recipe-backward-ros", "spdxDocument": "http://spdx.org/spdxdocs/recipe-backward-ros-c61a12c8-b1ca-5de9-b21b-b8cc0618d68c"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "f0796aefa93d21b0d2c084318f61c7e6e5c8a6ca"}, "externalDocumentId": "DocumentRef-dependency-recipe-cmake-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-cmake-native-065aeeea-e673-57cc-a9f5-a3fe1fc2b3ea"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "b1586e62908d6450a27e102a62d64a467e07cd0e"}, "externalDocumentId": "DocumentRef-dependency-recipe-control-msgs", "spdxDocument": "http://spdx.org/spdxdocs/recipe-control-msgs-768fea6c-60ae-5d75-893b-fd0c211bee02"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "b385241af0c132ca1cc8b224eed552e989ae12a2"}, "externalDocumentId": "DocumentRef-dependency-recipe-fmt", "spdxDocument": "http://spdx.org/spdxdocs/recipe-fmt-41672a23-bc25-5ae7-b133-e8835a061be1"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "a83405ea025123029d43ab36677485cd5279dacd"}, "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": "0bb0487ed47429f07c86ab04339beb233aec53cd"}, "externalDocumentId": "DocumentRef-dependency-recipe-gcc-runtime", "spdxDocument": "http://spdx.org/spdxdocs/recipe-gcc-runtime-a8177036-816d-5f00-a030-969647302050"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "219f035f963e9a5e5d4dca825b7c6c98abe90006"}, "externalDocumentId": "DocumentRef-dependency-recipe-glibc", "spdxDocument": "http://spdx.org/spdxdocs/recipe-glibc-8ec5f1d4-204b-530d-8854-79bbb314d6d7"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "ff2a007d9a184ee27bf31c7334e348be566837d7"}, "externalDocumentId": "DocumentRef-dependency-recipe-joint-limits", "spdxDocument": "http://spdx.org/spdxdocs/recipe-joint-limits-f351e3d1-bdf8-5ac0-9691-e16eec3cd306"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "72cb5f8682d4965579b4b465c318b4029c25d2c2"}, "externalDocumentId": "DocumentRef-dependency-recipe-libtinyxml2", "spdxDocument": "http://spdx.org/spdxdocs/recipe-libtinyxml2-fe92fedb-7c90-5983-8859-54342bdfa776"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "16db96a9e88d5d9d9ae831e8e615ee7b7935ac6e"}, "externalDocumentId": "DocumentRef-dependency-recipe-lifecycle-msgs", "spdxDocument": "http://spdx.org/spdxdocs/recipe-lifecycle-msgs-9273a700-e0ce-5bc3-8b7d-1d2247b44a5a"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "3b7db7ac65611b7588f2300e62131d14c582cdc7"}, "externalDocumentId": "DocumentRef-dependency-recipe-ninja-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-ninja-native-69509a4d-51be-58e4-8b69-f8cab885e13f"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "6d92c0da4b9bf6a0f95c835ecf5788f95e14a1a3"}, "externalDocumentId": "DocumentRef-dependency-recipe-pal-statistics", "spdxDocument": "http://spdx.org/spdxdocs/recipe-pal-statistics-e2a22028-bc1f-56ab-8cc9-e1831ee285d3"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "144e9895acdd06c5b6f8fb943e0c7ce5287f4e87"}, "externalDocumentId": "DocumentRef-dependency-recipe-pkgconfig-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-pkgconfig-native-f02bc6f9-93d3-5de4-bfc1-f49135872105"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "8b15a08c44b81cf64bfb89600f1ef7453654b45f"}, "externalDocumentId": "DocumentRef-dependency-recipe-pluginlib", "spdxDocument": "http://spdx.org/spdxdocs/recipe-pluginlib-4ebd9b99-8def-5878-8790-40f01eb26281"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "f90579f5c654469ab91c721e665cf8f1533c8f2e"}, "externalDocumentId": "DocumentRef-dependency-recipe-python3-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-python3-native-34cc7325-70e1-5a3a-873a-66b0c1f8d193"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "93e724ee06fe046ca258a7d2ed2afeb2ba619557"}, "externalDocumentId": "DocumentRef-dependency-recipe-python3-numpy-native", "spdxDocument": "http://spdx.org/spdxdocs/recipe-python3-numpy-native-6dcb99cf-20ea-5ed6-aae2-e78d77432ea5"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "c5741b4d74ec0bdcd0cd7bd174c8407562319923"}, "externalDocumentId": "DocumentRef-dependency-recipe-rclcpp-lifecycle", "spdxDocument": "http://spdx.org/spdxdocs/recipe-rclcpp-lifecycle-6cb167d2-e907-516e-99ac-f2e645d07326"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "3492d9e8f69664574ca98801673f3a6069d2e893"}, "externalDocumentId": "DocumentRef-dependency-recipe-rcpputils", "spdxDocument": "http://spdx.org/spdxdocs/recipe-rcpputils-17a63f6a-913c-5ae4-9851-342ae7fd63d0"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "7a8e7efc4a1646cf31a5dbaa63a1849de41038af"}, "externalDocumentId": "DocumentRef-dependency-recipe-rcutils", "spdxDocument": "http://spdx.org/spdxdocs/recipe-rcutils-2d03d6a8-3cec-5750-a76d-b01aaa9dd5b8"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "f7642f3693879dbbc7fb59576b43b58b3650ea4a"}, "externalDocumentId": "DocumentRef-dependency-recipe-realtime-tools", "spdxDocument": "http://spdx.org/spdxdocs/recipe-realtime-tools-643f34e0-6808-5195-a888-ee19a9c86f0e"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "4ba5c72aeb2f16ed8384a4ee2800bf6964125334"}, "externalDocumentId": "DocumentRef-dependency-recipe-ros2-control-cmake", "spdxDocument": "http://spdx.org/spdxdocs/recipe-ros2-control-cmake-3befae27-9dc1-5311-8123-4365d38fe012"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "6ce4e107e5dec938e9e1c7ac7b8ad368f05127b7"}, "externalDocumentId": "DocumentRef-dependency-recipe-sdformat-urdf", "spdxDocument": "http://spdx.org/spdxdocs/recipe-sdformat-urdf-f45439b8-1fc3-54ba-b463-48ecb82ca52f"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "80b6ee2d92cd0b32130f43355a008ca6bcf14719"}, "externalDocumentId": "DocumentRef-dependency-recipe-tinyxml2-vendor", "spdxDocument": "http://spdx.org/spdxdocs/recipe-tinyxml2-vendor-a36dfded-3601-5288-993f-d2c48cc47680"}, {"checksum": {"algorithm": "SHA1", "checksumValue": "32c738b6cf9bacb4a10bf8fb557ebf7b129e64ac"}, "externalDocumentId": "DocumentRef-dependency-recipe-urdf", "spdxDocument": "http://spdx.org/spdxdocs/recipe-urdf-a87ada7d-3aa4-5379-921a-3bbf28c72480"}], "name": "recipe-hardware-interface", "packages": [{"SPDXID": "SPDXRef-Recipe-hardware-interface", "copyrightText": "NOASSERTION", "description": "Base classes for hardware abstraction and tooling for them", "downloadLocation": "NOASSERTION", "externalRefs": [{"referenceCategory": "SECURITY", "referenceLocator": "cpe:2.3:*:*:hardware-interface:4.44.0-1:*:*:*:*:*:*:*", "referenceType": "http://spdx.org/rdf/references/cpe23Type"}], "homepage": "https://wiki.ros.org", "licenseConcluded": "NOASSERTION", "licenseDeclared": "Apache-2.0", "licenseInfoFromFiles": ["NOASSERTION"], "name": "hardware-interface", "summary": "hardware-interface version 4.44.0-1-r0", "supplier": "Organization: OpenEmbedded ()", "versionInfo": "4.44.0-1"}, {"SPDXID": "SPDXRef-Download-hardware-interface-1", "copyrightText": "NOASSERTION", "downloadLocation": "git+https://github.com/ros2-gbp/ros2_control-release@5a27b3b1e4301b5253f4248b884c39640b54fa13", "licenseConcluded": "NOASSERTION", "licenseDeclared": "NOASSERTION", "licenseInfoFromFiles": ["NOASSERTION"], "name": "hardware-interface-source-1", "supplier": "NOASSERTION"}], "relationships": [{"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "DESCRIBES", "spdxElementId": "SPDXRef-DOCUMENT"}, {"relatedSpdxElement": "SPDXRef-Download-hardware-interface-1", "relationshipType": "DESCRIBES", "spdxElementId": "SPDXRef-DOCUMENT"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "SPDXRef-Download-hardware-interface-1"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-ament-cmake-gen-version-h-native:SPDXRef-Recipe-ament-cmake-gen-version-h-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-ament-cmake-native:SPDXRef-Recipe-ament-cmake-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-ament-cmake-ros-native:SPDXRef-Recipe-ament-cmake-ros-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-backward-ros:SPDXRef-Recipe-backward-ros"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-cmake-native:SPDXRef-Recipe-cmake-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-control-msgs:SPDXRef-Recipe-control-msgs"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-fmt:SPDXRef-Recipe-fmt"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-gcc-cross-aarch64:SPDXRef-Recipe-gcc-cross-aarch64"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-gcc-runtime:SPDXRef-Recipe-gcc-runtime"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-glibc:SPDXRef-Recipe-glibc"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-joint-limits:SPDXRef-Recipe-joint-limits"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-libtinyxml2:SPDXRef-Recipe-libtinyxml2"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-lifecycle-msgs:SPDXRef-Recipe-lifecycle-msgs"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-ninja-native:SPDXRef-Recipe-ninja-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-pal-statistics:SPDXRef-Recipe-pal-statistics"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-pkgconfig-native:SPDXRef-Recipe-pkgconfig-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-pluginlib:SPDXRef-Recipe-pluginlib"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-python3-native:SPDXRef-Recipe-python3-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-python3-numpy-native:SPDXRef-Recipe-python3-numpy-native"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-rclcpp-lifecycle:SPDXRef-Recipe-rclcpp-lifecycle"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-rcpputils:SPDXRef-Recipe-rcpputils"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-rcutils:SPDXRef-Recipe-rcutils"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-realtime-tools:SPDXRef-Recipe-realtime-tools"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-ros2-control-cmake:SPDXRef-Recipe-ros2-control-cmake"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-sdformat-urdf:SPDXRef-Recipe-sdformat-urdf"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-tinyxml2-vendor:SPDXRef-Recipe-tinyxml2-vendor"}, {"relatedSpdxElement": "SPDXRef-Recipe-hardware-interface", "relationshipType": "BUILD_DEPENDENCY_OF", "spdxElementId": "DocumentRef-dependency-recipe-urdf:SPDXRef-Recipe-urdf"}], "spdxVersion": "SPDX-2.2"}