nandi/jolt-nativepublic Fork 0
a9f3673367a8f0d3dd7d6ab1d380484d1df795c1
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.

BUCK · 60 lines · 1.6 KBPython Blame HistoryRaw
Build under buck2, with the toolchain pinned rather than found 460541b nandi 19d ago1# Both shared objects, in one directory, under the names jolt's `:jolt/native`
2# looks for. `just build` copies this directory's contents where a consumer
3# points LD_LIBRARY_PATH.
4genrule(
5 name = "libvidya",
6 out = "libvidya.so",
7 cmd = "cp $(location //crates/jolt-vidya:vidya-ffi[shared]) $OUT",
8 visibility = ["PUBLIC"],
9)
10
11genrule(
12 name = "libjoltmoq",
13 out = "libjoltmoq.so",
14 cmd = "cp $(location //crates/jolt-moq:jolt-moq[shared]) $OUT",
15 visibility = ["PUBLIC"],
16)
17
18filegroup(
19 name = "libs",
20 srcs = [":libjoltmoq", ":libvidya"],
21 visibility = ["PUBLIC"],
22)
Build libvidya for the phone, and hold the glue that boots it d942053 nandi 19d ago23
Let the media plane cross to the phone, camera and all fd0e21a nandi 18d ago24# The same two C ABIs, cross-compiled for the phone. The sources and the deps
25# are the ones above; only the target configuration moves, which is what
26# configured_alias is for — build scripts and proc macros still run on the host.
Build libvidya for the phone, and hold the glue that boots it d942053 nandi 19d ago27configured_alias(
28 name = "vidya-ffi-android",
29 actual = "//crates/jolt-vidya:vidya-ffi",
30 platform = "//platforms:android-arm64",
31 visibility = ["PUBLIC"],
32)
33
34genrule(
35 name = "libvidya-android",
36 out = "libvidya.so",
37 cmd = "cp $(location :vidya-ffi-android[shared]) $OUT",
38 visibility = ["PUBLIC"],
39)
Let the media plane cross to the phone, camera and all fd0e21a nandi 18d ago40
41configured_alias(
42 name = "jolt-moq-android",
43 actual = "//crates/jolt-moq:jolt-moq",
44 platform = "//platforms:android-arm64",
45 visibility = ["PUBLIC"],
46)
47
48genrule(
49 name = "libjoltmoq-android",
50 out = "libjoltmoq.so",
51 cmd = "cp $(location :jolt-moq-android[shared]) $OUT",
52 visibility = ["PUBLIC"],
53)
54
55# Both device objects, for a build that wants them in one go.
56filegroup(
57 name = "libs-android",
58 srcs = [":libjoltmoq-android", ":libvidya-android"],
59 visibility = ["PUBLIC"],
60)