Vendor the two local Rust crates that build the lite backend artifact into third_party/silentdragonxlite/ (the qtlib C-ABI wrapper + the silentdragonxlitelib core, with proto/res and all the lite-send fixes), and point build-lite-backend-artifact.sh's default --backend-dir there, so the lite wallet builds without the upstream SilentDragonXLite repo. External build inputs are now only the Rust toolchain + git.dragonx.is + crates.io: - the 6 librustzcash git deps point at the git.dragonx.is/DragonX/librustzcash mirror (pinned rev acff1444), not git.hush.is; - the Sapling params are gitignored (not committed, no Git LFS) - the build fetches them from the git.dragonx.is/DragonX/zcash-params 'sapling-v1' release and verifies their SHA-256 before rust-embed bakes them in (ensure_sapling_params). For fully offline builds, cargo vendor into lib/vendor/ and add a vendored-sources redirect (vendor/ is gitignored; the script symlinks it into the prepared dir). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
28 lines
781 B
Makefile
28 lines
781 B
Makefile
ifeq ($(shell uname),Darwin)
|
|
EXT := dylib
|
|
CFLAGS := "-mmacosx-version-min=10.11"
|
|
else
|
|
EXT := a
|
|
CFLAGS :=
|
|
endif
|
|
|
|
PWD := $(shell pwd)
|
|
|
|
all: release
|
|
|
|
winrelease: target/x86_64-pc-windows-gnu/release/silentdragonxlite.lib
|
|
|
|
target/x86_64-pc-windows-gnu/release/silentdragonxlite.lib: src/lib.rs Cargo.toml
|
|
SODIUM_LIB_DIR="$(PWD)/libsodium-mingw/" cargo build --lib --release --target x86_64-pc-windows-gnu
|
|
|
|
release: target/release/silentdragonxlite.$(EXT)
|
|
debug: target/debug/silentdragonxlite.$(EXT)
|
|
|
|
target/release/silentdragonxlite.$(EXT): src/lib.rs Cargo.toml
|
|
LIBS="" CFLAGS=$(CFLAGS) cargo build --lib --release
|
|
|
|
target/debug/silentdragonxlite.$(EXT): src/lib.rs Cargo.toml
|
|
LIBS="" CFLAGS=$(CFLAGS) cargo build --lib
|
|
|
|
clean:
|
|
rm -rf target
|