diff --git a/Cargo.lock b/Cargo.lock index b4e71b437..56a219b9b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3620,7 +3620,6 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afc22eff61b133b115c6e8c74e818c628d6d5e7a502afea6f64dee076dd94326" dependencies = [ - "cc", "pkg-config", "vcpkg", ] diff --git a/Makefile b/Makefile index 3f2413c92..c6ab18d9d 100644 --- a/Makefile +++ b/Makefile @@ -6,10 +6,10 @@ PREFIX = $(HOME)/.cargo # Cargo binary CARGO = cargo +nightly -# Optional compile target -#RUST_TARGET = x86_64-unknown-linux-musl -# Uncomment this if the above is uncommented -#TARGET_PRFX = --target= +# Compile target for system binaries +RUST_TARGET = $(shell rustc -Vv | grep '^host: ' | cut -d' ' -f2) +# Uncomment when doing musl static builds +#RUSTFLAGS = "-C target-feature=+crt-static -C link-self-contained=yes" # Binaries to be built BINS = \ @@ -32,7 +32,11 @@ PROOFS_BIN = $(PROOFS_SRC:=.bin) all: $(BINS) zkas: - $(MAKE) -C bin/zkas + $(MAKE) -C bin/zkas \ + PREFIX="$(PREFIX)" \ + CARGO="$(CARGO)" \ + RUST_TARGET="$(RUST_TARGET)" \ + RUSTFLAGS="$(RUSTFLAGS)" $(PROOFS_BIN): zkas $(PROOFS_SRC) ./zkas $(basename $@) -o $@ diff --git a/bin/zkas/Makefile b/bin/zkas/Makefile index c5b68b3ce..da2f4024b 100644 --- a/bin/zkas/Makefile +++ b/bin/zkas/Makefile @@ -6,19 +6,22 @@ PREFIX = $(HOME)/.cargo # Cargo binary CARGO = cargo +nightly +# Compile target +RUST_TARGET = $(shell rustc -Vv | grep '^host: ' | cut -d' ' -f2) + SRC = \ Cargo.toml \ ../../Cargo.toml \ - $(shell find src -type f) \ - $(shell find ../../src/serial -type f) \ - $(shell find ../../src/zkas -type f) + $(shell find src -type f -name '*.rs') \ + $(shell find ../../src/serial -type f -name '*.rs') \ + $(shell find ../../src/zkas -type f -name '*.rs') BIN = ../../zkas all: $(BIN) $(BIN): $(SRC) - $(CARGO) build $(TARGET_PRFX)$(RUST_TARGET) --release --package zkas + RUSTFLAGS="$(RUSTFLAGS)" $(CARGO) build --target=$(RUST_TARGET) --release --package zkas cp -f ../../target/$(RUST_TARGET)/release/zkas $@ clean: