Skip to content

Commit 57f43ba

Browse files
MauroToscanoentropidelicJuArce
authored
Speedup CI (#467)
Co-authored-by: Mariano A. Nicolini <[email protected]> Co-authored-by: Julian Arce <[email protected]>
1 parent 14ec4f0 commit 57f43ba

File tree

2 files changed

+39
-27
lines changed

2 files changed

+39
-27
lines changed

.github/workflows/build.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ on:
66
branches: [main]
77
pull_request:
88
branches: ["*"]
9-
9+
env:
10+
FFI_FOR_RELEASE: false
1011
jobs:
1112
build:
1213
runs-on: ubuntu-latest

Makefile

Lines changed: 37 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@ ifeq ($(OS),Darwin)
1414
BUILD_ALL_FFI = $(MAKE) build_all_ffi_macos
1515
endif
1616

17+
18+
FFI_FOR_RELEASE ?= true
19+
20+
ifeq ($(FFI_FOR_RELEASE),true)
21+
RELEASE_FLAG=--release
22+
TARGET_REL_PATH=release
23+
else
24+
RELEASE_FLAG=
25+
TARGET_REL_PATH=debug
26+
endif
27+
1728
help:
1829
@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
1930

@@ -526,12 +537,12 @@ build_binaries:
526537

527538
__SP1_FFI__: ##
528539
build_sp1_macos:
529-
@cd operator/sp1/lib && cargo build --release
530-
@cp operator/sp1/lib/target/release/libsp1_verifier_ffi.dylib operator/sp1/lib/libsp1_verifier.dylib
540+
@cd operator/sp1/lib && cargo build $(RELEASE_FLAG)
541+
@cp operator/sp1/lib/target/$(TARGET_REL_PATH)/libsp1_verifier_ffi.dylib operator/sp1/lib/libsp1_verifier.dylib
531542

532543
build_sp1_linux:
533-
@cd operator/sp1/lib && cargo build --release
534-
@cp operator/sp1/lib/target/release/libsp1_verifier_ffi.so operator/sp1/lib/libsp1_verifier.so
544+
@cd operator/sp1/lib && cargo build $(RELEASE_FLAG)
545+
@cp operator/sp1/lib/target/$(TARGET_REL_PATH)/libsp1_verifier_ffi.so operator/sp1/lib/libsp1_verifier.so
535546

536547
test_sp1_rust_ffi:
537548
@echo "Testing SP1 Rust FFI source code..."
@@ -554,12 +565,12 @@ generate_sp1_fibonacci_proof:
554565

555566
__RISC_ZERO_FFI__: ##
556567
build_risc_zero_macos:
557-
@cd operator/risc_zero/lib && cargo build --release
558-
@cp operator/risc_zero/lib/target/release/librisc_zero_verifier_ffi.dylib operator/risc_zero/lib/librisc_zero_verifier_ffi.dylib
568+
@cd operator/risc_zero/lib && cargo build $(RELEASE_FLAG)
569+
@cp operator/risc_zero/lib/target/$(TARGET_REL_PATH)/librisc_zero_verifier_ffi.dylib operator/risc_zero/lib/librisc_zero_verifier_ffi.dylib
559570

560571
build_risc_zero_linux:
561-
@cd operator/risc_zero/lib && cargo build --release
562-
@cp operator/risc_zero/lib/target/release/librisc_zero_verifier_ffi.so operator/risc_zero/lib/librisc_zero_verifier_ffi.so
572+
@cd operator/risc_zero/lib && cargo build $(RELEASE_FLAG)
573+
@cp operator/risc_zero/lib/target/$(TARGET_REL_PATH)/librisc_zero_verifier_ffi.so operator/risc_zero/lib/librisc_zero_verifier_ffi.so
563574

564575
test_risc_zero_rust_ffi:
565576
@echo "Testing RISC Zero Rust FFI source code..."
@@ -580,14 +591,14 @@ generate_risc_zero_fibonacci_proof:
580591

581592
__MERKLE_TREE_FFI__: ##
582593
build_merkle_tree_macos:
583-
@cd operator/merkle_tree/lib && cargo build --release
584-
@cp operator/merkle_tree/lib/target/release/libmerkle_tree.dylib operator/merkle_tree/lib/libmerkle_tree.dylib
585-
@cp operator/merkle_tree/lib/target/release/libmerkle_tree.a operator/merkle_tree/lib/libmerkle_tree.a
594+
@cd operator/merkle_tree/lib && cargo build $(RELEASE_FLAG)
595+
@cp operator/merkle_tree/lib/target/$(TARGET_REL_PATH)/libmerkle_tree.dylib operator/merkle_tree/lib/libmerkle_tree.dylib
596+
@cp operator/merkle_tree/lib/target/$(TARGET_REL_PATH)/libmerkle_tree.a operator/merkle_tree/lib/libmerkle_tree.a
586597

587598
build_merkle_tree_linux:
588-
@cd operator/merkle_tree/lib && cargo build --release
589-
@cp operator/merkle_tree/lib/target/release/libmerkle_tree.so operator/merkle_tree/lib/libmerkle_tree.so
590-
@cp operator/merkle_tree/lib/target/release/libmerkle_tree.a operator/merkle_tree/lib/libmerkle_tree.a
599+
@cd operator/merkle_tree/lib && cargo build $(RELEASE_FLAG)
600+
@cp operator/merkle_tree/lib/target/$(TARGET_REL_PATH)/libmerkle_tree.so operator/merkle_tree/lib/libmerkle_tree.so
601+
@cp operator/merkle_tree/lib/target/$(TARGET_REL_PATH)/libmerkle_tree.a operator/merkle_tree/lib/libmerkle_tree.a
591602

592603
test_merkle_tree_rust_ffi:
593604
@echo "Testing Merkle Tree Rust FFI source code..."
@@ -603,14 +614,14 @@ test_merkle_tree_go_bindings_linux: build_merkle_tree_linux
603614

604615
__HALO2_KZG_FFI__: ##
605616
build_halo2_kzg_macos:
606-
@cd operator/halo2kzg/lib && cargo build --release
607-
@cp operator/halo2kzg/lib/target/release/libhalo2kzg_verifier_ffi.dylib operator/halo2kzg/lib/libhalo2kzg_verifier.dylib
608-
@cp operator/halo2kzg/lib/target/release/libhalo2kzg_verifier_ffi.a operator/halo2kzg/lib/libhalo2kzg_verifier.a
617+
@cd operator/halo2kzg/lib && cargo build $(RELEASE_FLAG)
618+
@cp operator/halo2kzg/lib/target/$(TARGET_REL_PATH)/libhalo2kzg_verifier_ffi.dylib operator/halo2kzg/lib/libhalo2kzg_verifier.dylib
619+
@cp operator/halo2kzg/lib/target/$(TARGET_REL_PATH)/libhalo2kzg_verifier_ffi.a operator/halo2kzg/lib/libhalo2kzg_verifier.a
609620

610621
build_halo2_kzg_linux:
611-
@cd operator/halo2kzg/lib && cargo build --release
612-
@cp operator/halo2kzg/lib/target/release/libhalo2kzg_verifier_ffi.so operator/halo2kzg/lib/libhalo2kzg_verifier.so
613-
@cp operator/halo2kzg/lib/target/release/libhalo2kzg_verifier_ffi.a operator/halo2kzg/lib/libhalo2kzg_verifier.a
622+
@cd operator/halo2kzg/lib && cargo build $(RELEASE_FLAG)
623+
@cp operator/halo2kzg/lib/target/$(TARGET_REL_PATH)/libhalo2kzg_verifier_ffi.so operator/halo2kzg/lib/libhalo2kzg_verifier.so
624+
@cp operator/halo2kzg/lib/target/$(TARGET_REL_PATH)/libhalo2kzg_verifier_ffi.a operator/halo2kzg/lib/libhalo2kzg_verifier.a
614625

615626
test_halo2_kzg_rust_ffi:
616627
@echo "Testing Halo2-KZG Rust FFI source code..."
@@ -634,14 +645,14 @@ generate_halo2_kzg_proof:
634645

635646
__HALO2_IPA_FFI__: ##
636647
build_halo2_ipa_macos:
637-
@cd operator/halo2ipa/lib && cargo build --release
638-
@cp operator/halo2ipa/lib/target/release/libhalo2ipa_verifier_ffi.dylib operator/halo2ipa/lib/libhalo2ipa_verifier.dylib
639-
@cp operator/halo2ipa/lib/target/release/libhalo2ipa_verifier_ffi.a operator/halo2ipa/lib/libhalo2ipa_verifier.a
648+
@cd operator/halo2ipa/lib && cargo build $(RELEASE_FLAG)
649+
@cp operator/halo2ipa/lib/target/$(TARGET_REL_PATH)/libhalo2ipa_verifier_ffi.dylib operator/halo2ipa/lib/libhalo2ipa_verifier.dylib
650+
@cp operator/halo2ipa/lib/target/$(TARGET_REL_PATH)/libhalo2ipa_verifier_ffi.a operator/halo2ipa/lib/libhalo2ipa_verifier.a
640651

641652
build_halo2_ipa_linux:
642-
@cd operator/halo2ipa/lib && cargo build --release
643-
@cp operator/halo2ipa/lib/target/release/libhalo2ipa_verifier_ffi.so operator/halo2ipa/lib/libhalo2ipa_verifier.so
644-
@cp operator/halo2ipa/lib/target/release/libhalo2ipa_verifier_ffi.a operator/halo2ipa/lib/libhalo2ipa_verifier.a
653+
@cd operator/halo2ipa/lib && cargo build $(RELEASE_FLAG)
654+
@cp operator/halo2ipa/lib/target/$(TARGET_REL_PATH)/libhalo2ipa_verifier_ffi.so operator/halo2ipa/lib/libhalo2ipa_verifier.so
655+
@cp operator/halo2ipa/lib/target/$(TARGET_REL_PATH)/libhalo2ipa_verifier_ffi.a operator/halo2ipa/lib/libhalo2ipa_verifier.a
645656

646657
test_halo2_ipa_rust_ffi:
647658
@echo "Testing Halo2-KZG Rust FFI source code..."

0 commit comments

Comments
 (0)