feat(build): add flat-bin kind and FAT [archive] packing for OS-dev

This commit is contained in:
2026-07-21 17:42:50 +08:00
parent 9d030cba0c
commit a9dd8c1631
32 changed files with 1295 additions and 75 deletions

View File

@@ -36,6 +36,7 @@ const VALID_KINDS: &[&str] = &[
"elf",
"none",
"custom",
"flat-bin",
];
#[derive(Debug)]
@@ -102,6 +103,27 @@ pub struct DcrConfig {
pub toolchain: Option<ToolchainConfig>,
#[serde(default)]
pub workspace: BTreeMap<String, WorkspaceMemberConfig>,
#[serde(default)]
pub archive: Option<ArchiveConfig>,
}
#[allow(dead_code)]
#[derive(Debug, Clone, Deserialize)]
pub struct ArchiveConfig {
pub output: String,
pub format: String,
pub size: Option<String>,
pub offset: Option<String>,
pub label: Option<String>,
pub bootsector: Option<String>,
#[serde(default)]
pub layout: Vec<ArchiveLayout>,
}
#[derive(Debug, Clone, Deserialize)]
pub struct ArchiveLayout {
pub from: String,
pub to: String,
}
#[derive(Debug, Clone, Deserialize)]