[][src]Crate fel4_config

Structs

Fel4Config

Fel4 configuration for a particular target, platform, and build profile tuple resolved from a FullFel4Target

FlatTomlProperty

A single toml key-value pair where the value only includes non-nestable structures

FullFel4Manifest

The full content of a fel4 manifest

FullFel4Target

The full content of a target within a fel4 manifest

Enums

BuildProfile
CmakeConfigurationError
ConfigError

All the things that could go wrong when reading fel4 configuration data

FlatTomlValue

A subset of toml::Value that only includes non-nestable structures

ManifestDiscoveryError

Things that can go wrong when trying to rely on environment variables to locate the fel4 manifest and its parameterization.

SupportedPlatform
SupportedTarget

Functions

configure_cmake_build

Configure a seL4_kernel CMake build configuration with data derived from the fel4.toml manifest

configure_cmake_build_from_env

Configure a seL4_kernel CMake build configuration with data derived from the fel4.toml manifest and choice environment variables.

contains_only_whitelisted_property_names

Check an iterator to see if any of its contents are not found in the whitelist of allowed properties. Returns Ok(()) if everything in the iterator is on the whitelist. If a string is found to be not on the whitelist, it is returned as the data in the Err()

get_exemplar_default_toml

Convenience function for getting a quick-working fel4.toml example

get_fel4_config

Load, parse, and resolve a Fel4Config

get_full_manifest

Retrieve the complete contents of the fel4 toml from a file

infer_manifest_location_from_env

Read environment variables to discover the information necessary to read and resolve a Fel4Config

is_supported_target_platform_pair

Returns true if the target and platform are supported to work together Returns false if the pairing is nonsenical or not supported

parse_full_manifest

Retrieve the complete contents of the fel4 toml from a string

resolve_fel4_config

Resolve and validate a particular Fel4 configuration for the given BuildProfile and the selected_target and selected_platform found in the FullFel4Manifest

toml_to_full_manifest

Parse the complete contents of the fel4 toml