| { |
| "$schema": "http://json-schema.org/draft-07/schema#", |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/sdk_element" |
| }, |
| { |
| "additionalProperties": false, |
| "properties": { |
| "name": { |
| "description": "Always 'sysroot'", |
| "enum": [ |
| "sysroot" |
| ], |
| "type": "string" |
| }, |
| "type": { |
| "allOf": [ |
| { |
| "$ref": "common.json#/definitions/kind" |
| }, |
| { |
| "enum": [ |
| "sysroot" |
| ] |
| } |
| ] |
| }, |
| "ifs_files": { |
| "description": "List of LLVM IFS files used to describe the ABIs of libraries in the sysroot", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "versions": { |
| "additionalProperties": false, |
| "description": "The various versions of the sysroot, per architecture", |
| "properties": { |
| "arm64": { |
| "$ref": "#/definitions/version", |
| "description": "arm64 version" |
| }, |
| "riscv64": { |
| "$ref": "#/definitions/version", |
| "description": "riscv64 version" |
| }, |
| "x64": { |
| "$ref": "#/definitions/version", |
| "description": "x64 version" |
| } |
| }, |
| "type": "object" |
| }, |
| "variants": { |
| "additionalProperties": false, |
| "description": "The various variants of the sysroot, per architecture and API level", |
| "items": { |
| "$ref": "#/definitions/variant" |
| }, |
| "type": "array" |
| } |
| }, |
| "required": [ |
| "name", |
| "type" |
| ] |
| } |
| ], |
| "definitions": { |
| "version": { |
| "additionalProperties": false, |
| "description": "Sysroot files for a given architecture", |
| "properties": { |
| "debug_libs": { |
| "description": "List of libraries for debugging", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "dist_dir": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the base directory for prebuilt libraries" |
| }, |
| "dist_libs": { |
| "description": "List of libraries for inclusion in packages", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "headers": { |
| "description": "List of public headers", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "include_dir": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the base directory for includes" |
| }, |
| "link_libs": { |
| "description": "List of link-time libraries", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "root": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the root of the sysroot" |
| } |
| }, |
| "required": [ |
| "root", |
| "headers", |
| "include_dir", |
| "link_libs", |
| "dist_libs", |
| "debug_libs", |
| "dist_dir" |
| ], |
| "type": "object" |
| }, |
| "variant": { |
| "additionalProperties": false, |
| "description": "Sysroot files for a given architecture and API level", |
| "properties": { |
| "constraints": { |
| "additionalProperties": false, |
| "description": "The architecture and API level information", |
| "properties": { |
| "api_level": { |
| "description": "The API level this package is built against. Either a positive integer less than 2147483648 (0x80000000) or the string name of a special API level.", |
| "type": [ |
| "integer", |
| "string" |
| ], |
| "minimum": 1, |
| "maximum": 2147483647, |
| "minLength": 3 |
| }, |
| "arch": { |
| "$ref": "common.json#/definitions/target_arch", |
| "description": "architecture" |
| } |
| }, |
| "type": "object" |
| }, |
| "values": { |
| "additionalProperties": false, |
| "description": "sysroot files for a given constraint", |
| "properties": { |
| "sysroot_dir": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the base directory for prebuilt libraries" |
| }, |
| "dist_libs": { |
| "description": "List of libraries for inclusion in packages", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "headers": { |
| "description": "List of public headers", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "include_dir": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the base directory for includes" |
| }, |
| "link_libs": { |
| "description": "List of link-time libraries", |
| "items": { |
| "$ref": "common.json#/definitions/file" |
| }, |
| "type": "array" |
| }, |
| "root": { |
| "$ref": "common.json#/definitions/file", |
| "description": "Path to the root of the sysroot" |
| } |
| }, |
| "required": [ |
| "root", |
| "headers", |
| "include_dir", |
| "link_libs", |
| "dist_libs", |
| "debug_libs", |
| "sysroot_dir" |
| ], |
| "type": "object" |
| } |
| }, |
| "required": [ |
| "constraints", |
| "values" |
| ], |
| "type": "object" |
| } |
| }, |
| "description": "The sysroot", |
| "id": "http://fuchsia.com/schemas/sdk/sysroot.json", |
| "type": "object" |
| } |