Merge pull request 'singleton: guard the state, not the program's name' (#157) from fix/singleton-guards-the-state into dev
El SDK CI - dev / build-and-test (push) Failing after 11m15s
El SDK CI - dev / build-and-test (push) Failing after 11m15s
This commit was merged in pull request #157.
This commit is contained in:
+11
-7
@@ -125,14 +125,18 @@ After changing any `.el` source in `el-compiler/src/` (run from the `lang/` dir)
|
||||
```bash
|
||||
# 1. Stage2: current elc compiles the (modified) compiler to C
|
||||
./dist/platform/elc elc-cli.el > elc-new.c
|
||||
# 2. Build the new compiler. The C link target is el_runtime.c — it holds the
|
||||
# engram store + http/json/state impls the compiler output calls. el_runtime.c
|
||||
# self-hosts elc on its own; el_seed.c is the (aspirational) seed layer and does
|
||||
# NOT compile standalone under clang (missing prototypes for the el_runtime.c
|
||||
# symbols it wraps — see caveat below), so link el_runtime.c here.
|
||||
cc -std=c11 -I runtime -lcurl -lpthread \
|
||||
# 2. Build the new compiler. Link the WHOLE runtime set, not el_runtime.c alone:
|
||||
# el_runtime.c calls into engram_store / engram_vindex / eg_cosine_batch and
|
||||
# wraps el_seed.c, so a one-file link fails at `ld` with undefined symbols
|
||||
# (verified 2026-08-16 — the previous single-file line in this doc is stale).
|
||||
cc -std=c11 -O2 -I runtime -I$(brew --prefix openssl@3)/include \
|
||||
-L$(brew --prefix openssl@3)/lib \
|
||||
-o dist/platform/elc-new \
|
||||
elc-new.c runtime/el_runtime.c
|
||||
elc-new.c runtime/el_runtime.c runtime/el_seed.c \
|
||||
runtime/engram_cognition.c runtime/engram_geometry.c runtime/engram_reason.c \
|
||||
runtime/engram_store.c runtime/engram_verify.c runtime/engram_vindex.c \
|
||||
runtime/eg_cosine_batch.c runtime/eg_cosine_batch_strategy_cpu.c \
|
||||
-lcurl -lssl -lcrypto -lpthread -lm
|
||||
# 3. Verify self-hosting FIXPOINT (stage3 == stage2 output, byte-identical):
|
||||
./dist/platform/elc-new elc-cli.el > elc-verify.c
|
||||
diff elc-new.c elc-verify.c # must be identical
|
||||
|
||||
Reference in New Issue
Block a user