87#define SBOM_FIELD( key, value ) "\"" key "\":" value
90#define SBOM_STRING( key, value ) SBOM_FIELD ( key, "\"" value "\"" )
93#define SBOM_PACKAGE( spdxid, name, supplier, version ) \
95 SBOM_STRING ( "SPDXID", spdxid ) "," \
96 SBOM_STRING ( "name", name ) "," \
97 SBOM_STRING ( "supplier", supplier ) "," \
98 SBOM_STRING ( "versionInfo", version ) \
102#define SBOM_MANIFEST( name, supplier, version ) \
104 SBOM_STRING ( "name", name ) "," \
105 SBOM_FIELD ( "files", "[]" ) "," \
106 SBOM_FIELD ( "relationships", "[]" ) "," \
107 SBOM_FIELD ( "packages", "[" \
108 SBOM_PACKAGE ( "", name, supplier, version ) \
113#define __sbom __attribute__ (( section ( ".sbom" ), aligned ( 512 ) ))
115extern const char sbom[]
__sbom;
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
#define __sbom
Mark variable as being in the ".sbom" section.