Refactor builds to use target profiles and discovery; remove architecture checker
This commit is contained in:
1 parent
6a1eb5e2ac
commit
7a6be7f66e
15 files changed
+238
-232
No files matched your search
+18
-2
@@ -337,8 +337,6 @@ dependencies. The x86-64 bootstrap retains its explicit startup sequence.
|
||||
Unused working-directory wrappers moved from `io.stdio` into `io.directory`,
|
||||
which explicitly depends on VFS. Existing in-repository callers need no changes.
|
||||
|
||||
Every normal build runs `toolchain/check_arch_boundaries.py` to reject CPU
|
||||
conditionals in shared units and direct architecture imports in migrated units.
|
||||
Existing `DEBUG_LMM` allocator guards and architecture-local fault-injection
|
||||
build flags remain; these are feature/test options, not architecture selection.
|
||||
|
||||
@@ -351,3 +349,21 @@ The final adapter build also passes the 6 GiB VirtualBox bootstrap, including
|
||||
physical memory above 4 GiB and all 162 string, 17 console, 15 descriptor,
|
||||
and 17 lifecycle/container checks. VM RAM and optical media were restored;
|
||||
the VM is powered off.
|
||||
|
||||
Source search paths are discovered recursively from shared roots and the selected
|
||||
architecture tree, with other architectures excluded. Both targets use the same
|
||||
compiler invocation; `target.sh` loads compiler options and entry points from
|
||||
`toolchain/targets/<architecture>.sh`.
|
||||
Directory arguments are NUL-delimited, sorted, and passed as an array so new
|
||||
subdirectories and spaces in names do not require compile-script edits. Full
|
||||
i386 and x86-64 builds pass using this discovery path.
|
||||
|
||||
All shared build steps now consume the selected profile: pipeline stages,
|
||||
assembler format and source roots, C/Pascal compiler options, linker format,
|
||||
entry points, output locations, optional compiler runtime, and image validation.
|
||||
`target.sh` loads the profile by filename instead of keeping an architecture
|
||||
switch. Assembly files, object files, and static libraries are discovered;
|
||||
the configured assembly entry is linked first to preserve the Multiboot header.
|
||||
Initialization-table, icon, LVGL, version, and checksum generation use target
|
||||
settings too. Full i386 and x86-64 builds and VirtualBox boot checks validate
|
||||
this pipeline; the i386 boot includes normal mounts and existing storage tests.
|
||||
Reference in new issue
Block a user