1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
{:paths ["src"]
;; glimmer-vidya is a backend for glimmer: glimmer owns the reactive core
;; (ratom, component model, reconciler) and knows nothing about any toolkit;
;; this project supplies the widgets, painting and the frame loop by way of
;; Vidya's retained-tree C ABI, and registers them through glimmer.backend.
:deps {jolt-lang/glimmer {:git/url "https://github.com/jolt-lang/glimmer"
:git/tag "v0.1.0"
:git/sha "5581c331c51aff989259b9e8e92ec920fe5e6741"}}
;; libvidya, built from ../ffi (the Rust/egui implementation). Only that
;; backend implements the tree ABI this project binds — the C/raylib build of
;; libvidya exports vidya.h alone, so it is deliberately NOT interchangeable
;; here, unlike for ../jolt. Put the built library on the search path:
;; just ffi
;; LD_LIBRARY_PATH=../build jolt counter
:jolt/native [{:name "vidya"
:darwin ["libvidya.dylib"]
:linux ["libvidya.so"]}]
:aliases {:test {:extra-paths ["test"]
:main-opts ["-m" "glimmer-vidya.test-runner"]}
:counter {:extra-paths ["examples"]
:main-opts ["-m" "glimmer-vidya.counter"]}
:showcase {:extra-paths ["examples"]
:main-opts ["-m" "glimmer-vidya.showcase"]}
:smoke {:extra-paths ["examples"]
:main-opts ["-m" "glimmer-vidya.smoke"]}
:repl-ui {:extra-paths ["examples"]
:main-opts ["-m" "glimmer-vidya.repl"]}}
:tasks {test "jolt -M:test"
counter "jolt -M:counter"
showcase "jolt -M:showcase"
smoke "jolt -M:smoke"
repl-ui "jolt -M:repl-ui"}}
|