aboutsummaryrefslogtreecommitdiff
path: root/zkvms_guest_io/default.nix
diff options
context:
space:
mode:
authorKamen Mladenov <kamen@syndamia.com>2025-03-06 13:36:40 +0200
committerKamen Mladenov <kamen@syndamia.com>2025-03-10 10:25:57 +0200
commit5969acd65589e264e4e39e165985a6c605b2eaa3 (patch)
tree52dcbe5283472bb890d250e3ad17de2c395598a0 /zkvms_guest_io/default.nix
parenteea11570c9d46ea994a4912d92bce5b6b6dfe49f (diff)
downloadzkVMs-benchmarks-5969acd65589e264e4e39e165985a6c605b2eaa3.tar
zkVMs-benchmarks-5969acd65589e264e4e39e165985a6c605b2eaa3.tar.gz
zkVMs-benchmarks-5969acd65589e264e4e39e165985a6c605b2eaa3.zip
feat: Replace guest script with a fully-fledged Rust program
Diffstat (limited to 'zkvms_guest_io/default.nix')
-rw-r--r--zkvms_guest_io/default.nix21
1 files changed, 21 insertions, 0 deletions
diff --git a/zkvms_guest_io/default.nix b/zkvms_guest_io/default.nix
new file mode 100644
index 0000000..20c75a7
--- /dev/null
+++ b/zkvms_guest_io/default.nix
@@ -0,0 +1,21 @@
+{ craneLib-default, guest, zkvms, hostPackages, lib, }:
+let
+ commonArgs = {
+ name = "${guest}";
+
+ buildInputs =
+ lib.foldr (zkvm: accum: accum ++ [ hostPackages."${zkvm}/${guest}" ]) [ ]
+ zkvms;
+
+ src = lib.fileset.toSource {
+ root = ./.;
+ fileset = ./.;
+ };
+
+ PROGRAMS = lib.foldr (zkvm: accum:
+ hostPackages."${zkvm}/${guest}" + "/bin/${zkvm}_${guest}," + accum) ""
+ zkvms;
+ };
+
+ cargoArtifacts = craneLib-default.buildDepsOnly commonArgs;
+in craneLib-default.buildPackage commonArgs