mirror of
https://github.com/microsoft/regorus.git
synced 2026-08-05 02:16:11 +00:00
no_std support (#232)
- Disable default features in dependencies - Use anyhow::Error::msg to map errors. Note: anyhow will itself be removed later. - lazy_static/spin_no_std used in no_std environments - ensure_no_std binary is built to target thumbv7m-none-eabi to ensure that there are no std dependencies. thumbv7m-none-eabi target has no std support. - The opa-no-std feature enables only those Regorus features that work with no_std. - Enable tests with no_std - Update sizes of regorus binary in README.md - Ensure that regorus example can be built with only std - Ensure that regorus example can be built with no_std Signed-off-by: Anand Krishnamoorthi <anakrish@microsoft.com>
This commit is contained in:
committed by
GitHub
parent
01fc234a33
commit
e86b590f91
@@ -277,6 +277,35 @@ fn yaml_test_impl(file: &str) -> Result<()> {
|
||||
let yaml_str = std::fs::read_to_string(file)?;
|
||||
let test: YamlTest = serde_yaml::from_str(&yaml_str)?;
|
||||
|
||||
#[cfg(not(feature = "std"))]
|
||||
{
|
||||
// Skip tests that depend on bultins that need std feature.
|
||||
let skip = [
|
||||
"intn.yaml",
|
||||
"is_valid.yaml",
|
||||
"add_date.yaml",
|
||||
"date.yaml",
|
||||
"clock.yaml",
|
||||
"compare.yaml",
|
||||
"diff.yaml",
|
||||
"format.yaml",
|
||||
"now_ns.yaml",
|
||||
"parse_duration_ns.yaml",
|
||||
"parse_ns.yaml",
|
||||
"parse_rfc3339_ns.yaml",
|
||||
"weekday.yaml",
|
||||
"generate.yaml",
|
||||
"parse.yaml",
|
||||
"tests.yaml",
|
||||
];
|
||||
for s in skip {
|
||||
if file.contains(s) {
|
||||
std::println!("skipped {file} in no_std mode.");
|
||||
return Ok(());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
std::println!("running {file}");
|
||||
|
||||
for case in test.cases {
|
||||
|
||||
Reference in New Issue
Block a user