@@ -57,6 +57,8 @@ done = "%bdone!%b\n" $(color_pink) $(color_reset)
5757
5858replay_wasm =$(output_latest ) /replay.wasm
5959
60+ arb_brotli_files = $(wildcard arbitrator/brotli/src/* .* arbitrator/brotli/src/* /* .* arbitrator/brotli/* .toml arbitrator/brotli/* .rs) .make/cbrotli-lib .make/cbrotli-wasm
61+
6062arbitrator_generated_header =$(output_root ) /include/arbitrator.h
6163arbitrator_wasm_libs =$(patsubst % , $(output_root ) /machines/latest/% .wasm, forward wasi_stub host_io soft-float arbcompress user_host program_exec)
6264arbitrator_stylus_lib =$(output_root ) /lib/libstylus.a
@@ -80,15 +82,15 @@ WASI_SYSROOT?=/opt/wasi-sdk/wasi-sysroot
8082
8183arbitrator_wasm_lib_flags =$(patsubst % , -l % , $(arbitrator_wasm_libs ) )
8284
83- rust_arbutil_files = $(wildcard arbitrator/arbutil/src/* .* arbitrator/arbutil/src/* /* .* arbitrator/arbutil/* .toml arbitrator/caller-env/src/* .* arbitrator/caller-env/src/* /* .* arbitrator/caller-env/* .toml)
85+ rust_arbutil_files = $(wildcard arbitrator/arbutil/src/* .* arbitrator/arbutil/src/* /* .* arbitrator/arbutil/* .toml arbitrator/caller-env/src/* .* arbitrator/caller-env/src/* /* .* arbitrator/caller-env/* .toml) .make/cbrotli-lib
8486
8587prover_direct_includes = $(patsubst % ,$(output_latest ) /% .wasm, forward forward_stub)
8688prover_dir = arbitrator/prover/
87- rust_prover_files = $(wildcard $(prover_dir ) /src/* .* $(prover_dir ) /src/* /* .* $(prover_dir ) /* .toml $(prover_dir ) /* .rs) $(rust_arbutil_files ) $(prover_direct_includes )
89+ rust_prover_files = $(wildcard $(prover_dir ) /src/* .* $(prover_dir ) /src/* /* .* $(prover_dir ) /* .toml $(prover_dir ) /* .rs) $(rust_arbutil_files ) $(prover_direct_includes ) $( arb_brotli_files )
8890
8991wasm_lib = arbitrator/wasm-libraries
9092wasm_lib_cargo = $(wasm_lib ) /.cargo/config.toml
91- wasm_lib_deps = $(wildcard $(wasm_lib ) /$(1 ) /* .toml $(wasm_lib ) /$(1 ) /src/* .rs $(wasm_lib ) /$(1 ) /* .rs) $(wasm_lib_cargo ) $(rust_arbutil_files ) .make/machines
93+ wasm_lib_deps = $(wildcard $(wasm_lib ) /$(1 ) /* .toml $(wasm_lib ) /$(1 ) /src/* .rs $(wasm_lib ) /$(1 ) /* .rs) $(wasm_lib_cargo ) $(rust_arbutil_files ) $( arb_brotli_files ) .make/machines
9294wasm_lib_go_abi = $(call wasm_lib_deps,go-abi)
9395wasm_lib_forward = $(call wasm_lib_deps,forward)
9496wasm_lib_user_host_trait = $(call wasm_lib_deps,user-host-trait)
@@ -153,6 +155,8 @@ stylus_test_hostio-test_src = $(call get_stylus_test_rust,hostio-test)
153155stylus_test_wasms = $(stylus_test_keccak_wasm ) $(stylus_test_keccak-100_wasm ) $(stylus_test_fallible_wasm ) $(stylus_test_storage_wasm ) $(stylus_test_multicall_wasm ) $(stylus_test_log_wasm ) $(stylus_test_create_wasm ) $(stylus_test_math_wasm ) $(stylus_test_sdk-storage_wasm ) $(stylus_test_erc20_wasm ) $(stylus_test_read-return-data_wasm ) $(stylus_test_evm-data_wasm ) $(stylus_test_hostio-test_wasm ) $(stylus_test_bfs:.b=.wasm )
154156stylus_benchmarks = $(wildcard $(stylus_dir ) /* .toml $(stylus_dir ) /src/* .rs) $(stylus_test_wasms )
155157
158+ CBROTLI_WASM_BUILD_ARGS ?=-d
159+
156160# user targets
157161
158162.PHONY : push
@@ -169,7 +173,7 @@ build: $(patsubst %,$(output_root)/bin/%, nitro deploy relay daprovider daserver
169173 @printf $(done )
170174
171175.PHONY : build-node-deps
172- build-node-deps : $(go_source ) build-prover-header build-prover-lib build-jit .make/solgen
176+ build-node-deps : $(go_source ) build-prover-header build-prover-lib build-jit .make/solgen .make/cbrotli-lib
173177
174178.PHONY : test-go-deps
175179test-go-deps : \
@@ -289,6 +293,7 @@ clean:
289293 rm -f arbitrator/wasm-libraries/soft-float/SoftFloat/build/Wasm-Clang/* .a
290294 rm -f arbitrator/wasm-libraries/forward/* .wat
291295 rm -rf arbitrator/stylus/tests/* /target/ arbitrator/stylus/tests/* /* .wasm
296+ rm -rf brotli/buildfiles
292297 @rm -rf contracts/build contracts/cache solgen/go/
293298 @rm -rf contracts-legacy/build contracts-legacy/cache
294299 @rm -rf contracts-local/out contracts-local/forge-cache
@@ -444,7 +449,7 @@ $(output_latest)/user_test.wasm: $(DEP_PREDICATE) $(call wasm_lib_deps,user-test
444449 install arbitrator/wasm-libraries/$(wasm32_wasi ) /user_test.wasm $@
445450 ./scripts/remove_reference_types.sh $@
446451
447- $(output_latest ) /arbcompress.wasm : $(DEP_PREDICATE ) $(call wasm_lib_deps) $(wasm_lib_go_abi )
452+ $(output_latest ) /arbcompress.wasm : $(DEP_PREDICATE ) $(call wasm_lib_deps,brotli ) $(wasm_lib_go_abi )
448453 cargo build --manifest-path arbitrator/wasm-libraries/Cargo.toml --release --target wasm32-wasip1 --config $(wasm_lib_cargo ) --package arbcompress
449454 install arbitrator/wasm-libraries/$(wasm32_wasi ) /arbcompress.wasm $@
450455 ./scripts/remove_reference_types.sh $@
@@ -618,9 +623,23 @@ contracts/test/prover/proofs/%.json: $(arbitrator_cases)/%.wasm $(prover_bin)
618623 make -C contracts-local install
619624 @touch $@
620625
626+ .make/cbrotli-lib : $(DEP_PREDICATE ) $(ORDER_ONLY_PREDICATE ) .make
627+ test -f target/include/brotli/encode.h || ./scripts/build-brotli.sh -l
628+ test -f target/include/brotli/decode.h || ./scripts/build-brotli.sh -l
629+ test -f target/lib/libbrotlicommon-static.a || ./scripts/build-brotli.sh -l
630+ test -f target/lib/libbrotlienc-static.a || ./scripts/build-brotli.sh -l
631+ test -f target/lib/libbrotlidec-static.a || ./scripts/build-brotli.sh -l
632+ @touch $@
633+
634+ .make/cbrotli-wasm : $(DEP_PREDICATE ) $(ORDER_ONLY_PREDICATE ) .make
635+ test -f target/lib-wasm/libbrotlicommon-static.a || ./scripts/build-brotli.sh -w $(CBROTLI_WASM_BUILD_ARGS )
636+ test -f target/lib-wasm/libbrotlienc-static.a || ./scripts/build-brotli.sh -w $(CBROTLI_WASM_BUILD_ARGS )
637+ test -f target/lib-wasm/libbrotlidec-static.a || ./scripts/build-brotli.sh -w $(CBROTLI_WASM_BUILD_ARGS )
638+ @touch $@
639+
621640.make/wasm-lib : $(DEP_PREDICATE ) arbitrator/wasm-libraries/soft-float/SoftFloat/build/Wasm-Clang/softfloat.a $(ORDER_ONLY_PREDICATE ) .make
622- test -f arbitrator/wasm-libraries/soft-float/bindings32.o
623- test -f arbitrator/wasm-libraries/soft-float/bindings64.o
641+ test -f arbitrator/wasm-libraries/soft-float/bindings32.o || ./scripts/build-brotli.sh -f -d -t ..
642+ test -f arbitrator/wasm-libraries/soft-float/bindings64.o || ./scripts/build-brotli.sh -f -d -t ..
624643 @touch $@
625644
626645.make/machines : $(DEP_PREDICATE ) $(ORDER_ONLY_PREDICATE ) .make
0 commit comments