Conversation
They can't run because the target architecture is different from the building architecture. Signed-off-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com> Signed-off-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
| // const tests = b.addTest(.{ | ||
| // .root_source_file = .{ .cwd_relative = "src/transition.zig" }, | ||
| // .optimize = optimize, | ||
| // .target = target, | ||
| // }); | ||
| // tests.root_module.addImport("ssz", ssz); | ||
| // tests.root_module.addImport("zeam-types", zeam_types); | ||
| // tests.root_module.addImport("zeam-transition-runtime", zeam_state_transition); | ||
|
|
||
| const run_tests = b.addRunArtifact(tests); | ||
| const test_step = b.step("test", "Run unit tests"); | ||
| test_step.dependOn(&run_tests.step); | ||
| // const run_tests = b.addRunArtifact(tests); | ||
| // const test_step = b.step("test", "Run unit tests"); | ||
| // test_step.dependOn(&run_tests.step); |
There was a problem hiding this comment.
I'm commenting this out, because these tests can never run (unless we are building this on riscv32). It might be a good idea to have the CI build them and run them in qemu, but this is an effort that is quite involved, and it can be tested another way by building the executable and running a prover instead. So I might end up removing it all, I just need to think about the best way to do this.
| @@ -30,18 +33,31 @@ pub fn main() noreturn { | |||
| }; | |||
| _ = witnesses; | |||
There was a problem hiding this comment.
we still have not accessed inputs and witnesses here right?
There was a problem hiding this comment.
yes, this is coming in another PR that I'm currently working on, see blockblaz/zeam-pm#9
|
|
||
| // Declare the -Dzkvm option, which is a choice between all supported zkvms | ||
| const zkvm = b.option(zkvm_types, "zkvm", "zkvm target") orelse .powdr; | ||
| const zkvm_module = b.addModule("zkvm", .{ |
There was a problem hiding this comment.
ok so we are inserting the target zkvm interface here that we have wrapped in each of individual folders?
There was a problem hiding this comment.
not quite: depending on the -Dzkvm= option we passed to zig build, it will use the files corresponding to the correct zkvm. So it's only using one subdirectory at a time.
I want to expand the whole thing so that all the binaries are built and can be released, but this is not necessary at this stage.
There was a problem hiding this comment.
yes, this doesn't need to be part of this build but proving manager's build can trigger these builds one by one to generate the target binaries
depending on the -Dzkvm= option we passed to zig build, it will use the files corresponding to the correct zkvm. So it's only using one subdirectory at a time
right what I meant was that one particular zk vm gets wrapped into "zkvm" module which is used by the zig main
Import the current, committed state of zeam-runtime, so that the prover/verifier program can be built.
This does not support the full input yet since a common interface between zkvms needs to be designed (blockblaz/zeam-pm#9). The executable needs to be compiled before running the prover (which isn't implemented yet, so it's not a big deal at this point).
Fixes blockblaz/zeam-pm#5