Commit Graph
36 Commits
Author SHA1 Message Date
DanSandClaude Opus 4.8 ac95106abe build(win): make the mingw cross-compile link and find librustzcash
Three things broke the x86_64-w64-mingw32 build; two are real and fixed
here (the third was a stale-object contamination from building Linux and
Windows in the same tree, resolved by a clean rebuild — not a code fix).

1. Single-pass mingw ld could not resolve the cross-references DragonX
   added between the internal static archives (libbitcoin_util/common
   objects pulling in UniValue; util<->common mutual deps). GNU ld on
   Linux re-scans archives so it never surfaced; ld64 on macOS rejects
   the grouping flag outright. Bracket each binary's _LDADD in
   -Wl,--start-group/--end-group, delivered via AC_SUBST(LINK_GROUP_*)
   so automake does not reject the linker flag inside _LDADD, and left
   empty on every non-Windows target.

2. The Rust build emits the mingw archive as rustzcash.lib, but the
   link line asks for -lrustzcash, i.e. librustzcash.a. Normalize the
   staged filename to librustzcash.a for every host (a no-op on
   Linux/macOS, where the basename was already librustzcash.a).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-27 03:56:23 -05:00
DanS 2b011d6ee2 fix windows build 2026-03-19 10:09:18 -05:00
M d77088c1f2 Fix macOS Sequoia build with GCC 15 and update README
- Update compiler references from gcc-8 to gcc-15 across build system
  (build-mac.sh, darwin.mk, Makefile_custom)
- Use system Rust (rustup) instead of bundled Rust 1.32.0 for librustzcash
  to fix rlib linker incompatibility on macOS Sequoia
- Replace deprecated std::random_shuffle with std::shuffle (net.cpp,
  transaction_builder.cpp, wallet.cpp)
- Fix -std=gnu17 -> -std=gnu++17 for C++ targets (libzcash, libhush)
- Fix nodiscard warning in glibcxx_sanity.cpp
- Replace deprecated OSMemoryBarrier with std::atomic_thread_fence in LevelDB
- Add -Wno-error=deprecated-declarations to CXXFLAGS for third-party headers
- Fix REMAINING_ARGS unbound variable in build.sh
- Add --disable-tests handling to build-mac.sh
- Update README with correct macOS build dependencies and instructions
2026-03-19 09:30:50 -05:00
miodragpop 9544bd0ffc adjustments for cross build of aarch64 binaries on x86_64 linux 2020-07-12 11:47:00 +02:00
Duke Leto f6a4f17f82 Avoid downloading the 700MB sprout-groth16 file we do not need 2019-07-05 01:19:02 -04:00
Asher Dawes 9cdb60cdcd Updating package from zcash 2018-10-29 00:51:06 +00:00
miketout 99aeab28f9 Integrate latest Zcash fixes and update for non-latin user names 2018-10-27 20:29:03 -07:00
Jack Grigg 262cf38712 Build librustzcash package without changing directory
This ensures that the depends system's custom PATH is applied correctly,
and the pre-build Rust binaries are accessible.
2018-10-28 06:41:53 +13:00
Jack Grigg ee3fa7020e Pass parameter paths as native strings to librustzcash 2018-10-27 19:19:02 +13:00
Jack Grigg eff2938e46 Migrate to current librustzcash
The only upstream change relative to the previous commit is that the
various Zcash-specific dependencies have been pulled into a cargo
workspace. The dependecies in the workspace use the same commits as the
crates we had previously vendored.

The patches are necessary to handle the fact that cargo requires that
dev dependencies are available even if not used, and we would otherwise
need to vendor all the underlying crates.
2018-10-27 17:03:47 +13:00
miketout 9feb4b9e08 Major updates integration from all upstreams 2018-09-18 14:33:53 -07:00
Jack Grigg f8d65e8f03 Update librustzcash with ZIP 32 APIs 2018-09-03 10:27:52 +01:00
Asher Dawes 155d2cb3e4 Removing unnecessary slashes
changing brewfile dependency of gcc@5 to gcc@6
2018-08-18 00:44:01 -07:00
Jack Grigg f77650a6ac depends: Configure librustzcash for cross-compiling 2018-08-17 16:41:51 +01:00
Sean Bowe d9ef8f622e Check the hash of the (Sapling+) zk-SNARK parameters during initialization. 2018-08-02 12:18:13 -06:00
Sean Bowe b7b088c46b Update librustzcash and sapling-crypto. 2018-07-30 21:59:12 -06:00
Jack Grigg e691e21f40 TransactionBuilder with support for creating Sapling-only transactions 2018-07-25 11:35:10 +02:00
Sean Bowe 9e8e121c9f Update librustzcash 2018-06-13 15:18:23 -06:00
Simon 36e2e7cc32 Add SaplingNote class and test_sapling_note unit test. 2018-06-12 14:37:05 -07:00
Jay Graber 52d81ff794 Update librustzcash dependency, address comments 2018-06-01 01:48:28 -07:00
Jay Graber 84e3a2212f Change librustzcash dependency hash to work for new Sapling classes 2018-06-01 00:04:13 -07:00
Sean Bowe b9a5a116cd Update librustzcash 2018-05-18 13:26:37 -06:00
Sean Bowe 31989317c9 Update librustzcash again 2018-05-14 16:29:00 -06:00
Sean Bowe b7a6c32178 Integrate Groth16 verification and proving. 2018-05-14 16:26:23 -06:00
Sean Bowe 531fcc88da Update to latest librustzcash 2018-05-08 14:30:26 -06:00
Sean Bowe fcbe7eef8d Update sapling-crypto and librustzcash 2018-05-07 18:56:55 -06:00
ca333 696460ce86 revert librustzcash update 2018-04-21 19:42:22 +02:00
ca333 9764030cd4 update librustzcash
update librustzcash - experimental!
2018-04-21 18:52:52 +02:00
Sean Bowe 62ba80e766 Update librustzcash hash 2018-04-19 13:00:28 -06:00
Sean Bowe acfcdb94b9 Load Sapling testnet parameters into memory. 2018-04-17 15:04:46 -06:00
Sean Bowe 65dc30c5a1 Update librustzcash hash 2018-04-14 19:33:10 -06:00
Sean Bowe e6bbd8481e Switch to latest librustzcash 2018-04-12 18:52:00 -06:00
Jack Grigg a560c24d6b depends: Update to latest librustzcash with sapling-crypto dependencies 2018-04-11 08:06:40 -06:00
Jack Grigg 0adfdc99b2 depends: Explicitly download and vendor Rust dependencies
Closes #2231.
2018-03-28 15:46:51 +02:00
ca333 9d36579649 uni3 2017-10-09 11:45:49 +02:00
Sean Bowe 6a0c7ceae9 Introduce librustzcash and Rust to depends system. 2017-03-17 11:46:41 -06:00