diff options
| author | Kamen Mladenov <kamen@syndamia.com> | 2025-03-27 13:25:05 +0200 |
|---|---|---|
| committer | Kamen Mladenov <kamen@syndamia.com> | 2025-04-04 11:03:00 +0300 |
| commit | a30b4022fa85320806b8b4d004ea713b68df6566 (patch) | |
| tree | dae482b317a9fb331c2ddf3a831d55bd754d5649 /zkvms/risc0/default.nix | |
| parent | 696e6041a88f2ed5d0d3a699a7af55252ecba1ca (diff) | |
| download | zkVMs-benchmarks-a30b4022fa85320806b8b4d004ea713b68df6566.tar zkVMs-benchmarks-a30b4022fa85320806b8b4d004ea713b68df6566.tar.gz zkVMs-benchmarks-a30b4022fa85320806b8b4d004ea713b68df6566.zip | |
feat(zkvms/risc0): Implement elf encoding
Recently, RISC0 have added code to their SDK which adds magic bytes to
the (already compiled) ELF. Since we're taking another route than
intended, we'll need to replicate this step too.
We're doing things in a different fashion, because their SDK normally
compiles the guest, and doesn't allow you to supply a prebuilt ELF.
Diffstat (limited to 'zkvms/risc0/default.nix')
| -rw-r--r-- | zkvms/risc0/default.nix | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/zkvms/risc0/default.nix b/zkvms/risc0/default.nix index 6a4b796..132bce2 100644 --- a/zkvms/risc0/default.nix +++ b/zkvms/risc0/default.nix @@ -23,10 +23,15 @@ in zkvmLib.buildPackage craneLib (commonArgs // { guestTarget = "riscv32im-risc0-zkvm-elf"; + postBuildGuest = '' + cd ../guest_elf_patch + cargo run --release + ''; + preBuild = '' # Used for verification # https://github.com/risc0/risc0/blob/881e512732eca72849b2d0e263a1242aba3158af/risc0/build/src/lib.rs#L192-L195 - export GUEST_ID="$(${metacraft-labs.risc0}/bin/r0vm --elf ./host/src/guest --id)" + export GUEST_ID="$(${metacraft-labs.risc0}/bin/r0vm --elf ./src/guest --id)" ''; preRunBinaries = [ metacraft-labs.risc0 ]; |
