Automate boot unit inclusion with architecture-aware Moderne analysis
- Replace boot.mgr's static unit list with generated dangling_units.inc - Generate Pascal LSTs and run the dangling-unit recipe before compilation - Exclude Wasuro, inactive architectures, and NOT_DANGLING units - Add ASURO_ARCH selection with an x86 default - Mark unfinished legacy units as NOT_DANGLING - Inherit pinned Moderne tooling in the builder image - Ensure Drone pulls the latest builder image - Document the updated build pipeline in MkDocs Validation: - Full x86 ISO build and VirtualBox boot succeeded - 1,133 kernel tests passed with no failures - x86_64 build failed clearly due to unavailable sources
This commit is contained in:
1 parent
7ed8012c7e
commit
dd3bb1e016
20 files changed
+149
-121
No files matched your search
@@ -19,6 +19,8 @@
|
||||
}
|
||||
unit arch.x86.isr.tmr1;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Unused legacy timer ISR; not part of the kernel boot sequence. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
|
||||
@@ -19,8 +19,10 @@
|
||||
}
|
||||
unit arch.x86.proc.loader;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Unimplemented process-loader stub. }
|
||||
|
||||
interface
|
||||
|
||||
implementation;
|
||||
|
||||
end.
|
||||
end.
|
||||
+3
-101
@@ -71,107 +71,9 @@ procedure run;
|
||||
implementation
|
||||
|
||||
uses
|
||||
io.syslog, boot.splash,
|
||||
|
||||
// Silo units that must be included here to compile
|
||||
driver.storage.boot,
|
||||
test,
|
||||
core,
|
||||
app.wasm,
|
||||
driver.storage.ctl.ahci,
|
||||
core.enc.base64,
|
||||
core.panic,
|
||||
driver.video.bga,
|
||||
arch.x86.bda,
|
||||
arch.x86.panic,
|
||||
core.ds.cfifo,
|
||||
core.ds.cfifols,
|
||||
core.ds.circ,
|
||||
core.gfx.color,
|
||||
arch.x86.proc.sched,
|
||||
arch.x86.cpu,
|
||||
driver.video.desktop,
|
||||
driver.video.doublebuffer,
|
||||
driver.mgr,
|
||||
driver.net.dev.e1000,
|
||||
driver.bus.usb.ehci,
|
||||
driver.storage.fs.fat32,
|
||||
arch.x86.fault,
|
||||
core.ds.fifo,
|
||||
driver.storage.fs.mgr,
|
||||
driver.storage.fs.flatfs,
|
||||
core.gfx.fonts,
|
||||
arch.x86.gdt,
|
||||
driver.video.gpu,
|
||||
svc.gfxd,
|
||||
core.ds.hashmap,
|
||||
arch.x86.idt,
|
||||
arch.x86.isr.ioapic,
|
||||
arch.x86.irq,
|
||||
driver.storage.fs.iso9660,
|
||||
arch.x86.isr,
|
||||
arch.x86.isr.mgr,
|
||||
driver.hid.keyboard,
|
||||
core.ds.lifo,
|
||||
core.ds.lists,
|
||||
memory.heap,
|
||||
driver.video.lvgl,
|
||||
core.ds.maxh,
|
||||
core.enc.md5,
|
||||
core.ds.minh,
|
||||
driver.hid.mouse,
|
||||
arch.x86.multiboot,
|
||||
driver.net,
|
||||
driver.bus.usb.ohci,
|
||||
app.partcmd,
|
||||
driver.bus.pci,
|
||||
arch.x86.memory.physical,
|
||||
core.ds.prio,
|
||||
proc.mgr,
|
||||
app.mgr,
|
||||
driver.hid.ps2.keyboard,
|
||||
driver.hid.ps2.mouse,
|
||||
core.rand,
|
||||
driver.timer.rtc,
|
||||
driver.io.serial,
|
||||
io.stdio,
|
||||
driver.storage.mgr,
|
||||
driver.storage.test,
|
||||
core.strings,
|
||||
driver.exp.testdriver,
|
||||
proc.testprocs,
|
||||
arch.x86.isr.tmr0,
|
||||
debug.tracer,
|
||||
driver.bus.usb.uhci,
|
||||
app.uidebug,
|
||||
driver.bus.usb,
|
||||
driver.hid.usb.keyboard,
|
||||
driver.hid.usb.mouse,
|
||||
driver.storage.ctl.usb,
|
||||
driver.bus.usb.core,
|
||||
svc.usbd,
|
||||
driver.bus.usb.hub,
|
||||
driver.bus.usb.types,
|
||||
core.util,
|
||||
arch.x86.util,
|
||||
arch.x86.v86,
|
||||
driver.video.vesa,
|
||||
driver.storage.vfs,
|
||||
driver.video,
|
||||
arch.x86.memory.virtual,
|
||||
core.enc.fnv1a,
|
||||
core.enc.djb2,
|
||||
core.ds.bloom,
|
||||
app.volcmd,
|
||||
driver.storage.vol.mgr,
|
||||
app.vterminal,
|
||||
wasm,
|
||||
wasm.vm.io,
|
||||
wasm.test,
|
||||
wasm.test.framework,
|
||||
driver.video.windows,
|
||||
driver.bus.usb.xhci,
|
||||
core.fmt.json;
|
||||
io.syslog, boot.splash
|
||||
{$INCLUDE dangling_units.inc}
|
||||
;
|
||||
|
||||
type
|
||||
{ Resolved execution order — indices into Entries[] }
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
}
|
||||
unit driver.storage.ctl.ide.ata;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Part of the unfinished legacy IDE stack. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
@@ -248,4 +250,4 @@ begin
|
||||
pop_trace();
|
||||
end;
|
||||
|
||||
end.
|
||||
end.
|
||||
@@ -24,6 +24,8 @@
|
||||
|
||||
unit driver.storage.ctl.ide.atapi;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Nonfunctional legacy ATAPI driver. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
@@ -445,4 +447,4 @@ end;
|
||||
|
||||
|
||||
|
||||
end.
|
||||
end.
|
||||
@@ -21,6 +21,8 @@
|
||||
}
|
||||
unit driver.storage.ctl.ide;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Unfinished legacy IDE stack; requires removed console/terminal units. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
|
||||
@@ -19,6 +19,8 @@
|
||||
}
|
||||
unit driver.storage.fs.asfs;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Incomplete legacy filesystem; requires removed storagemanagement API. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
@@ -121,4 +123,6 @@ end;
|
||||
|
||||
|
||||
procedure detect_volumes(disk : PStorage_Device) begin
|
||||
end;
|
||||
end;
|
||||
|
||||
end.
|
||||
@@ -19,6 +19,8 @@
|
||||
|
||||
unit driver.storage.vol.table;
|
||||
|
||||
{$DEFINE NOT_DANGLING} { Unimplemented legacy partition-table API; requires removed storagemanagement. }
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
|
||||
Reference in new issue
Block a user