nandi/jolt-nativepublic Fork 0
aabacba05769796ca2b8dde03e3f925d33ba6653
Commits
Clone
git clone https://git.rickub.com/nandi/jolt-native.git
git clone ssh://git@rickub.com/nandi/jolt-native.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Build libvidya for the phone, and hold the glue that boots it d942053 · on aabacba05769796ca2b8dde03e3f925d33ba6653 · nandi · 19d ago
BUCK · 40 lines · 1.2 KBPython Blame HistoryRaw
 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
37
38
39
40
# Both shared objects, in one directory, under the names jolt's `:jolt/native`
# looks for. `just build` copies this directory's contents where a consumer
# points LD_LIBRARY_PATH.
genrule(
    name = "libvidya",
    out = "libvidya.so",
    cmd = "cp $(location //crates/jolt-vidya:vidya-ffi[shared]) $OUT",
    visibility = ["PUBLIC"],
)

genrule(
    name = "libjoltmoq",
    out = "libjoltmoq.so",
    cmd = "cp $(location //crates/jolt-moq:jolt-moq[shared]) $OUT",
    visibility = ["PUBLIC"],
)

filegroup(
    name = "libs",
    srcs = [":libjoltmoq", ":libvidya"],
    visibility = ["PUBLIC"],
)

# The same C ABI, cross-compiled for the phone. The sources and the deps are
# the ones above; only the target configuration moves, which is what
# configured_alias is for — build scripts and proc macros still run on the
# host. There is no Android libjoltmoq: the media plane is V4L2 and PipeWire.
configured_alias(
    name = "vidya-ffi-android",
    actual = "//crates/jolt-vidya:vidya-ffi",
    platform = "//platforms:android-arm64",
    visibility = ["PUBLIC"],
)

genrule(
    name = "libvidya-android",
    out = "libvidya.so",
    cmd = "cp $(location :vidya-ffi-android[shared]) $OUT",
    visibility = ["PUBLIC"],
)