; A documented one-shot, not part of the build's normal product (spec §4.5):
; converts lectio's tridentine-calendar.ini into data/ef/sanctoral.sexp. Run
; via `dune exec tools/bootstrap_sanctoral.exe -- <source.ini> <dest.sexp>`.
; `unix` is the OCaml distribution's bundled library (already in the switch,
; not a new opam dependency) -- used only here, never by the kernel, to shell
; out to `sha256sum` for the provenance header; the kernel itself never reads
; the environment or a clock.
(executable
 (name bootstrap_sanctoral)
 (libraries colitur_kernel rite_ef unix sexplib))

; Converts lectio's tridentine-lectionary.ini into data/ef/lectionary.sexp.
; Run via `dune exec tools/bootstrap_lectionary.exe -- <source.ini> <dest.sexp>`.
; Same `unix` usage as bootstrap_sanctoral above: shells out to `sha256sum`
; for the provenance header only, never a new opam dependency.
;
; `rite_ef` added (task 8 fix round 1, coordinator review, Critical 2):
; the generator's own [assert_reachable] sweeps Rite_ef.Temporal_ef.temporal
; directly to catch a translation table entry that names a slug colitur
; never actually computes -- no new dependency, bootstrap_sanctoral above
; already links this same library for the identical "code, not data" reason.
(executable
 (name bootstrap_lectionary)
 (libraries colitur_kernel rite_ef unix sexplib))
