exfat.zig is a near-clone of fat.zig — the reuse the architecture promised, now real: same IpcBlock DMA-bounce wrapper, same acquire-volume-by-hello to the volume manager, same content-conditional boot rewrites (resolve /system/configuration to decide the system volume), all differences confined to the engine it wraps. That the harness's Server(engine.FileSystem) compiles is the proof the exFAT engine meets the same pub-fn contract as FAT — a comptime check, not a hope. The exfat package (build.zig + build.zig.zon) mirrors fat's: it ships in production_ship, its on-disk + engine host tests run through the root test aggregate (replacing the temporary standalone entry), and the root zon declares it. build + zig build test + bounds all green.
17 lines
692 B
Zig
17 lines
692 B
Zig
.{
|
|
.name = .exfat,
|
|
.version = "0.0.0",
|
|
.fingerprint = 0x5eafdf02d20f93dd, // Changing this has security and trust implications.
|
|
.minimum_zig_version = "0.16.0",
|
|
.dependencies = .{
|
|
// build-support supplies the shared recipe; kernel is implicit in
|
|
// every binary (the root shim + link script live there). The rest
|
|
// are exactly the homes of this binary's declared imports.
|
|
.@"build-support" = .{ .path = "../../../build-support" },
|
|
.kernel = .{ .path = "../../../library/kernel" },
|
|
.device = .{ .path = "../../../library/device" },
|
|
.protocol = .{ .path = "../../../library/protocol" },
|
|
},
|
|
.paths = .{""},
|
|
}
|