Skip to content

Commit

Permalink
use guest options builder pattern
Browse files Browse the repository at this point in the history
  • Loading branch information
Wollac committed Jan 28, 2025
1 parent 65ebdd6 commit 4b7c853
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 24 deletions.
25 changes: 13 additions & 12 deletions examples/erc20-counter/methods/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

use std::{collections::HashMap, env, path::PathBuf};

use risc0_build::{embed_methods_with_options, DockerOptions, GuestOptions};
use risc0_build::{embed_methods_with_options, DockerOptionsBuilder, GuestOptionsBuilder};
use risc0_build_ethereum::generate_solidity_files;

// Paths where the generated Solidity files will be written.
Expand All @@ -26,19 +26,20 @@ fn main() {
// guest. Check the RISC0_USE_DOCKER variable and use Docker to build the guest if set.
println!("cargo:rerun-if-env-changed=RISC0_USE_DOCKER");
println!("cargo:rerun-if-changed=build.rs");
let manifest_dir = PathBuf::from(std::env::var_os("CARGO_MANIFEST_DIR").unwrap());
let use_docker = env::var("RISC0_USE_DOCKER").ok().map(|_| DockerOptions {
root_dir: Some(manifest_dir.join("..")),
});
let manifest_dir = PathBuf::from(env::var_os("CARGO_MANIFEST_DIR").unwrap());
let mut builder = GuestOptionsBuilder::default();
if env::var("RISC0_USE_DOCKER").is_ok() {
let docker_options = DockerOptionsBuilder::default()
.root_dir(manifest_dir.join(".."))
.build()
.unwrap();
builder.use_docker(docker_options);
}
let guest_options = builder.build().unwrap();

// Generate Rust source files for the methods crate.
let guests = embed_methods_with_options(HashMap::from([(
"erc20-counter-guests",
GuestOptions {
features: Vec::new(),
use_docker,
},
)]));
let guests =
embed_methods_with_options(HashMap::from([("erc20-counter-guests", guest_options)]));

// Generate Solidity source files for use with Forge.
let solidity_opts = risc0_build_ethereum::Options::default()
Expand Down
24 changes: 12 additions & 12 deletions examples/governance/methods/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

use std::{collections::HashMap, env, path::PathBuf};

use risc0_build::{embed_methods_with_options, DockerOptions, GuestOptions};
use risc0_build::{embed_methods_with_options, DockerOptionsBuilder, GuestOptionsBuilder};
use risc0_build_ethereum::generate_solidity_files;

// Paths where the generated Solidity files will be written.
Expand All @@ -26,19 +26,19 @@ fn main() {
// guest. Check the RISC0_USE_DOCKER variable and use Docker to build the guest if set.
println!("cargo:rerun-if-env-changed=RISC0_USE_DOCKER");
println!("cargo:rerun-if-changed=build.rs");
let manifest_dir = PathBuf::from(std::env::var_os("CARGO_MANIFEST_DIR").unwrap());
let use_docker = env::var("RISC0_USE_DOCKER").ok().map(|_| DockerOptions {
root_dir: Some(manifest_dir.join("..")),
});
let manifest_dir = PathBuf::from(env::var_os("CARGO_MANIFEST_DIR").unwrap());
let mut builder = GuestOptionsBuilder::default();
if env::var("RISC0_USE_DOCKER").is_ok() {
let docker_options = DockerOptionsBuilder::default()
.root_dir(manifest_dir.join(".."))
.build()
.unwrap();
builder.use_docker(docker_options);
}
let guest_options = builder.build().unwrap();

// Generate Rust source files for the methods crate.
let guests = embed_methods_with_options(HashMap::from([(
"governance-guest",
GuestOptions {
features: Vec::new(),
use_docker,
},
)]));
let guests = embed_methods_with_options(HashMap::from([("governance-guest", guest_options)]));

// Generate Solidity source files for use with Forge.
let solidity_opts = risc0_build_ethereum::Options::default()
Expand Down

0 comments on commit 4b7c853

Please sign in to comment.