-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
59 lines (41 loc) · 1.46 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
.PHONY: fibo_sp1 fibo_pico fibo_risc0 build_pico build_sp1 build_risc0 build_pico_elf build_keccak_sp1 build_keccak_pico keccak_pico keccak_sp1 run_plotter create_python_venv
# PROOF_MODE ONLY USED FOR SP1
PROOF_MODE ?= compressed
# Iterations of fibonacci
N ?= 100000
# Pico is the only prover which doesn't
# build ELF elf automatically if it's no thee
build_pico_elf:
cd fibo_pico/app && cargo pico build
build_pico_keccak_elf:
cd keccak_pico/app && cargo pico build
build_keccak_pico:
cd keccak_pico/prover && cargo build --release
build_pico:
cd fibo_pico/prover && cargo build --release
build_sp1:
cd fibo_sp1/script && cargo build --release
build_keccak_sp1:
cd keccak_sp1/script && cargo build --release
build_fibo_risc0:
cd fibo_risc0/host && cargo build --release
keccak_pico:
./keccak_pico/target/release/prover $(N)
fibo_pico_wrapped:
./fibo_pico/target/release/prover $(N)
fibo_sp1:
./fibo_sp1/target/release/fibonacci $(N) $(PROOF_MODE)
keccak_sp1:
./keccak_sp1/target/release/prover $(N)
fibo_risc0:
RUST_LOG=info RISC0_INFO=1 ./fibo_risc0/target/release/host $(N)
run_plotter: create_python_venv install_requirements
@echo "Running plotter..."
@. venv/bin/activate && python3 plotter.py $(INPUT_FILE)
create_python_venv:
@echo "Creating virtual environment..."
@python3 -m venv venv
@echo "Virtual environment created successfully!"
install_requirements:
@echo "Installing dependencies..."
@. venv/bin/activate && pip install -r requirements.txt