Skip to content

Latest commit

 

History

History
26 lines (17 loc) · 2.24 KB

rustc.md

File metadata and controls

26 lines (17 loc) · 2.24 KB

cdx:rustc Namespace Taxonomy

This namespace is used for recording information that is used by the Rust compiler, rustc, irrespective of the build system. For properties specific to the Rust build system, Cargo, please refer to the cargo namespace.

Boolean value are true or false. Case sensitive.

Target triple string is a case-sensitive string matching one of the Rust compilation target triples, e.g. x86_64-unknown-linux-gnu. All known targets are documented here and the list evolves over time, with targets being both added and removed. The list of target triples supported by the installed version of the Rust compiler can be obtained by running rustc --print=target-list.

Namespace Description
cdx:rustc:sbom Namespace for information about the SBOM. MAY only appear in the $.metadata field, and not in any other fields.

cdx:rustc:sbom Namespace Taxonomy

Namespace Description
cdx:rustc:sbom:target Records the information about the build target described by the SBOM.

cdx:rustc:sbom:target Namespace Taxonomy

Property Description
cdx:rustc:sbom:target:triple Target triple string. Its presence indicates that the list of dependency packages in the $.components field will only include dependencies used for this target, matching the dependencies of the compiled binary for this target.
This property may appear multiple times, e.g. when describing MacOS fat binaries that merge builds for several different architectures into a single file, or to record the list of specific platforms considered when producing the SBOM without actually performing a build.
Mutually exclusive with cdx:rustc:sbom:target:all_targets.
cdx:rustc:sbom:target:all_targets Boolean value indicating that the SBOM includes dependency packages from all possible targets in the $.components field, rather than for a single specific target.
Mutually exclusive with cdx:rustc:sbom:target:triple. MAY appear at most once.

If neither :triple nor :all_targets properties are present, the platform coverage of the SBOM SHOULD be assumed to be unknown.