Files
LithosAnanake/tools/README.md
T

38 lines
1.8 KiB
Markdown

# tools/
Build-time and integration-test utilities for the StarForth / LithosAnanke
toolchain.
## Contents
| File | Purpose |
|------|---------|
| `mkcapsule.c` | Assembles `.4th` capsule files into `capsule_generated.c` baked into the kernel image. Invoked automatically by `Makefile.starkernel`. |
| `mkcapsule` | Compiled host binary (rebuilt on demand). |
| `fbtest.c` | Host framebuffer render test — VT100/framebuffer unit tests, no QEMU needed. |
| `pe_reloc_gen.py` | Generates PE32+ relocation tables for the UEFI loader. |
| `svg_to_png.py` | Renders every tracked `.svg` in the repo to a same-named `.png` via headless Chromium; leaves the source `.svg` untouched, run manually. |
| `hermes_smoke.sh` | Hermes v1 hosted smoke test — swaps in the Hermes init capsule and prints values for manual inspection. |
| `hermes_channel_smoke.sh` | Exercises the full Hermes channel-negotiation lifecycle (`CH-REQUEST``CH-ACCEPT``CH-CLOSE` → reap) per the protocol in `.claude/HERMES.md`. |
| `hermes_tripod_smoke.sh` | Full Tripod integration test — exercises all 6 inter-VM message paths using the `DEFER VM-EXEC`/`IS VM-EXEC` dispatcher shim from `init.4th`. |
| `kconfig/` | Vendored Linux kernel Kconfig tooling (`conf`/`mconf`/`qconf`), GPL-2.0. See `tools/kconfig/README.md`. |
## mkcapsule
```bash
# Invoked automatically by the kernel build:
make -f Makefile.starkernel ARCH=amd64 clean qemu
# Manual invocation (for inspection):
./tools/mkcapsule capsules/ build/amd64/kernel/capsule_generated.c
```
Scans `capsules/` for `.4th` files, computes XXHash64 per capsule, assigns
type `(m)` to `init.4th` and `(p)` to everything else.
## See also
- [`capsules/README.md`](../capsules/README.md) — capsule file format and block namespace
- [`Makefile.starkernel`](../Makefile.starkernel) — kernel build system
- [Project root](../README.md)