package "elp" {
    version "0.7.0"
    description "Engram Language Protocol — bidirectional engine mapping between Engram semantic forms and natural language surface text. 31 languages."
    edition "2026"
}

build {
    entry "src/elp.el"

    // Compilation order (dependency order):
    //   language-profile  (no deps)
    //   vocabulary        (no deps)
    //   morphology        (depends on: language-profile)
    //   morphology-es     (depends on: morphology)  Spanish
    //   morphology-fr     (depends on: morphology)  French
    //   morphology-de     (depends on: morphology)  German
    //   morphology-ru     (depends on: morphology)  Russian
    //   morphology-ja     (depends on: morphology)  Japanese
    //   morphology-fi     (depends on: morphology)  Finnish
    //   morphology-ar     (depends on: morphology)  Arabic
    //   morphology-hi     (depends on: morphology)  Hindi
    //   morphology-sw     (depends on: morphology)  Swahili
    //   morphology-la     (depends on: morphology)  Latin
    //   morphology-he     (depends on: morphology)  Hebrew
    //   morphology-grc    (depends on: morphology)  Ancient Greek
    //   morphology-ang    (depends on: morphology)  Old English
    //   morphology-sa     (depends on: morphology)  Sanskrit
    //   morphology-got    (depends on: morphology)  Gothic
    //   morphology-non    (depends on: morphology)  Old Norse
    //   morphology-enm    (depends on: morphology)  Middle English
    //   morphology-pi     (depends on: morphology)  Pali
    //   morphology-fro    (depends on: morphology)  Old French
    //   morphology-goh    (depends on: morphology)  Old High German
    //   morphology-sga    (depends on: morphology)  Old Irish
    //   morphology-txb    (depends on: morphology)  Tocharian B
    //   morphology-peo    (depends on: morphology)  Old Persian
    //   morphology-akk    (depends on: morphology)  Akkadian
    //   morphology-uga    (depends on: morphology)  Ugaritic
    //   morphology-egy    (depends on: morphology)  Ancient Egyptian
    //   morphology-sux    (depends on: morphology)  Sumerian
    //   morphology-gez    (depends on: morphology)  Ge'ez (Classical Ethiopic)
    //   morphology-cop    (depends on: morphology)  Coptic (Sahidic)
    //   grammar           (depends on: language-profile)
    //   realizer          (depends on: morphology, grammar, language-profile)
    //   semantics         (depends on: grammar, realizer, language-profile)
    //   elp               (depends on: semantics, realizer)
    sources [
        "src/language-profile.el",
        "src/vocabulary.el",
        "src/morphology.el",
        "src/morphology-es.el",
        "src/morphology-fr.el",
        "src/morphology-de.el",
        "src/morphology-ru.el",
        "src/morphology-ja.el",
        "src/morphology-fi.el",
        "src/morphology-ar.el",
        "src/morphology-hi.el",
        "src/morphology-sw.el",
        "src/morphology-la.el",
        "src/morphology-he.el",
        "src/morphology-grc.el",
        "src/morphology-ang.el",
        "src/morphology-sa.el",
        "src/morphology-got.el",
        "src/morphology-non.el",
        "src/morphology-enm.el",
        "src/morphology-pi.el",
        "src/morphology-fro.el",
        "src/morphology-goh.el",
        "src/morphology-sga.el",
        "src/morphology-txb.el",
        "src/morphology-peo.el",
        "src/morphology-akk.el",
        "src/morphology-uga.el",
        "src/morphology-egy.el",
        "src/morphology-sux.el",
        "src/morphology-gez.el",
        "src/morphology-cop.el",
        "src/grammar.el",
        "src/realizer.el",
        "src/semantics.el",
        "src/comprehend.el",
        "src/propositions.el",
        "src/multilingual.el",
        "src/self_region.el",
        "src/dialogue.el",
        "src/elp.el",
    ]
}
