Commit Graph

282 Commits

Author SHA1 Message Date
Jack Grigg dc0c977906 depends: Add FreeBSD support to OpenSSL 2019-05-22 11:03:42 +00:00
Jack Grigg 734e594c2c depends: Explicitly set Boost toolchain during configuration 2019-05-22 10:53:53 +00:00
Jack Grigg 5222c39cd0 depends: Add FreeBSD to hosts and builders 2019-05-22 10:46:21 +00:00
Homu 8a95ba235d Auto merge of #3951 - LarryRuane:3947-integer-log2-warn, r=ebfull
Update boost to v1.70.0 to eliminate build warning

Closes #3947.
2019-04-24 05:00:33 -07:00
Larry Ruane c17d828ffd Update boost from v1.69.0 to v1.70.0. #3947 2019-04-23 11:29:55 -06:00
Homu ab856294d9 Auto merge of #3505 - str4d:rust-targets, r=str4d
depends: Support additional cross-compilation targets in Rust

This will make it easier for third parties to cross-compile `zcashd` for other platforms. The third commit in this PR shows how to add a new target to the Rust dependency builder.

The default Rust target during cross-compilation is the canonical host, which is derived from `HOST` using `depends/config.sub`. If the canonical host differs from the required Rust target, add the necessary mapping in addition to the target itself.

Also includes fixes for cross-compiling aarch64 targets.
2019-04-23 08:33:40 -07:00
Homu 756e9246c3 Auto merge of #3919 - defuse:openssl-regression, r=bitcartel
Fix OpenSSL reproducible build regression
2019-03-26 00:02:32 -07:00
Taylor Hornby 675cf3d606 Patch out proton::url deprecation as workaround for build warnings 2019-03-25 17:38:07 -06:00
Taylor Hornby b85cd8891e Fix OpenSSL reproducible build regression 2019-03-25 14:27:14 -06:00
Taylor Hornby 8088476911 Fix proton patch regression. #3916 2019-03-25 11:46:37 -06:00
Jack Grigg b1ef5eaef9
depends: Update .gitignore 2019-03-13 07:37:55 +00:00
Jack Grigg 56df83d710
depends: Compile bdb with --disable-atomics on aarch64
This sidesteps the problem where the atomics check tries to run a test
binary, which cannot be performed during cross compilation. We should
replace this with a better solution in future.

Part of #3710.
2019-03-13 06:39:12 +00:00
Jack Grigg d2cd57c0f2
depends: Add rust-std hash for aarch64-unknown-linux-gnu
Usage on Debian / Ubuntu:

> $ sudo apt install g++-aarch64-linux-gnu
> $ HOST=aarch64-linux-gnu ./zcutil/build.sh

Currently fails to cross-compile due to later configuration issues in
the depends system that need to be worked around.
2019-03-13 04:55:52 +00:00
Jack Grigg d7ab954511
depends: Generalise the rust package cross-compilation functions 2019-03-13 04:40:57 +00:00
Jack Grigg 74de4ddc46
depends: Use full path to cargo binary
The native binaries generated in the depends system are available on the path,
but system binaries are still visible. This change ensures we use cargo from
the depends system rather than whatever might be installed locally.
2019-03-13 03:24:41 +00:00
Taylor Hornby 78c916eb2e Patch Proton for a minimal build. #3786 2019-02-06 13:18:53 -07:00
Taylor Hornby f3d99770b5 Update Proton from 0.17.0 to 0.26.0. #3816, #3786 2019-01-30 14:16:50 -07:00
Taylor Hornby 0a4cafa6df Update Rust from v1.28.0 to v1.32.0. #3786 2019-01-30 14:16:42 -07:00
Taylor Hornby 221ca965eb Update boost from v1.66.0 to v1.69.0. #3786 2019-01-30 14:16:34 -07:00
Taylor Hornby b41b316758 Update OpenSSL from 1.1.0h to 1.1.1a. #3786 2019-01-30 14:16:25 -07:00
Homu beb465dd2e Auto merge of #3789 - rex4539:update-zmq, r=str4d
Update zmq to 4.3.1

Closes https://github.com/zcash/zcash/issues/3785
2019-01-23 00:17:25 -08:00
Dimitris Apostolou 4d0aca70a0
Update zmq to 4.3.1 2019-01-17 17:15:44 +02:00
ca333 8eaa721dfd
update libsodium dl-path
the 1.0.15 was moved to https://download.libsodium.org/libsodium/releases/old/ which results in DL from zcashs fallback repo
2019-01-07 13:38:21 +01: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
Jack Grigg f8d65e8f03
Update librustzcash with ZIP 32 APIs 2018-09-03 10:27:52 +01:00
Jack Grigg 7d65dcf4d9
depends: Pass correct compiler, linker, and flags into googletest 2018-08-17 16:47:03 +01:00
Jack Grigg 283ad96e85
Use -O1 for darwin and mingw32 release builds
In 46ad3c2758 we standardised our linux builds to
use -O1, but we didn't adjust the other targets.
2018-08-17 16:44:00 +01:00
Jack Grigg 3d308c2232
depends: Fix BDB naming issue when cross-compiling
Co-authored-by: David Mercer <radix42@gmail.com>
2018-08-17 16:42:35 +01:00
Jack Grigg f77650a6ac
depends: Configure librustzcash for cross-compiling 2018-08-17 16:41:51 +01:00
Jack Grigg b57e4484ef
depends: Correctly configure Rust when cross-compiling 2018-08-17 16:41:40 +01:00
Jack Grigg e188723823
Upgrade Rust to 1.28.0 stable 2018-08-05 10:41:06 +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
Homu 1063dfdeaa Auto merge of #3271 - ebfull:stable-rust, r=bitcartel
Switch Rust to 1.26 Stable
2018-05-15 21:27:53 -07:00
Sean Bowe 0dfb1d5e2c Switch Rust to 1.26 Stable. 2018-05-15 16:21: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
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
Homu ec6021950d Auto merge of #3176 - daira:use-https-for-bdb, r=daira
Use https: for BDB backup download URL.
2018-04-17 02:13:10 -07:00
ca333 2b0e6432fe
update proton.mk
use SSL/TLS secured URL
2018-04-16 15:24:42 +02:00
Daira Hopwood 7709c8a47e Use https: for BDB backup download URL. 2018-04-16 08:11:40 +01:00
ca333 d2f9e747d5
[fix] proton download path
resolves #3174
2018-04-16 00:19:33 +02: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 c63c9f20e4
depends: Add support for unpackaged Rust crates 2018-04-11 08:00:23 -06:00
Jack Grigg b123b9bb79
depends: Upgrade Rust to 1.26.0-beta.3 2018-04-11 07:59:46 -06:00
Homu 65dedeeae3 Auto merge of #3131 - str4d:3096-cargo-checksum-fixes, r=daira
depends: Fix regex bugs in cargo-checksum.sh
2018-04-01 05:54:41 -07:00
Homu 1a9caa6ac1 Auto merge of #3127 - str4d:2688-mandatory-rust, r=ebfull
Make Rust compilation mandatory

The temporary integration check in CheckEquihashSolution() remains, until we
have "real" Rust code to integrate.

Closes #2688.
2018-03-30 12:58:34 -07:00
Jack Grigg 0e400c8854
depends: Fix regex bugs in cargo-checksum.sh 2018-03-30 19:06:51 +01:00
Simon 09bf7d2d3c Upgrade OpenSSL to 1.1.0h 2018-03-29 23:05:17 -07:00
Jack Grigg d9cd254e5e
Make Rust compilation mandatory
The temporary integration check in CheckEquihashSolution() remains, until we
have "real" Rust code to integrate.

Closes #2688.
2018-03-28 17:55:45 +02:00
Homu 058efdbe0f Auto merge of #3124 - bitcartel:update_boost_url, r=str4d
Update boost package URL to match official download url on boost.org

Part of #3123.
2018-03-28 08:26:39 -07:00
Homu a08ad2b815 Auto merge of #3096 - str4d:2231-depends-vendor-rust-crates, r=str4d
depends: Explicitly download and vendor Rust dependencies

Closes #2231.
2018-03-28 07:01:39 -07:00
Jack Grigg 0adfdc99b2
depends: Explicitly download and vendor Rust dependencies
Closes #2231.
2018-03-28 15:46:51 +02:00
Homu 2c91e3ebc0 Auto merge of #3117 - charlieok:add_windows_rust_package, r=daira
Add filename and SHA256 hash for Windows Rust package

When running `make download` in the `depends` directory, the `download-win` target (which `download` depends on) generates an error when it runs the commands defined in `check_or_remove_sources`:

```Makefile
sha256sum: /home/vagrant/zcash/depends/work/download/rust-1.16.0/..hash: no properly formatted SHA256 checksum lines found
funcs.mk:242: recipe for target '/home/vagrant/gitian-builder/cache/common/download-stamps/.stamp_fetched-rust-.hash' failed
make[1]: *** [/home/vagrant/gitian-builder/cache/common/download-stamps/.stamp_fetched-rust-.hash] Error 1
make[1]: Leaving directory '/home/vagrant/zcash/depends'
Makefile:153: recipe for target 'download-win' failed
make: *** [download-win] Error 2
```

The reason for the error is that `depends/packages/rust.mk` defines `rust_file_name_linux` and `rust_file_name_darwin` but leaves `rust_file_name_mingw32` undefined.

A directory of available rust downloads is here: https://static.rust-lang.org/dist/index.html

The closest windows analog in that list (using the same version number as currently defined in `rust.mk`) appears to be `rust-mingw-1.16.0-x86_64-pc-windows-gnu.tar.gz`. A corresponding sha256 value is also given in `rust-mingw-1.16.0-x86_64-pc-windows-gnu.tar.gz.sha256`.

After adding these values to `rust.mk`, the rust-mingw tar package was downloaded along with the rest of the dependencies and the above error message went away.
2018-03-28 05:31:43 -07:00
Simon 2b0783792b Update boost package URL to match official download url on boost.org 2018-03-27 09:39:06 -07:00
Charlie O'Keefe de2c5e9be9 Add filename and sha256 hash for windows rust package 2018-03-26 14:52:58 -06:00
Jack Grigg 1c4a74d40b
depends: Remove -mt suffix from Boost libraries
Requires disabling --build-type=complete, because in Boost 1.66 it appears to be
broken (only the tagged libraries are built).
2018-03-26 16:33:27 +02:00
Jack Grigg e6a34c283a
Revert "remove -mt suffix from boost libraries built by depends"
This reverts commit 33ae5edd2c.
2018-03-26 16:20:55 +02:00
Simon bbcdabc28d Update boost to 1.66.0 2018-03-23 15:07:17 -07:00
rofl0r 33ae5edd2c remove -mt suffix from boost libraries built by depends 2018-02-23 15:52:55 +00:00
Homu c720d15c45 Auto merge of #2700 - kozyilmaz:emptyspaces, r=str4d
PATH variable containing spaces cause build failure

Spaces in PATH variable is creating build issues (observed on macOS). For example "VMware Fusion" adds itself to PATH like `/Applications/VMware Fusion.app/Contents/Public`.
2017-12-15 11:35:05 -08:00
Wladimir J. van der Laan 57ab896ba4
test: Remove java comparison tool 2017-12-01 14:10:16 +00:00
daniel 0b2a64f484
add powerpc build support for openssl lib 2017-12-01 14:10:15 +00:00
Jack Grigg 9635679cba
Replace "install -D" with "mkdir -p && install" 2017-11-29 17:26:47 +00:00
fanquake e2e7ca3054
[depends] Set OSX_MIN_VERSION to 10.8 2017-11-29 17:24:59 +00:00
Cory Fields 68ce87eddc
depends: bump OSX toolchain
clang: 3.7.1
cctools: 877.8
ld64: 253.9
2017-11-29 17:24:59 +00:00
fanquake 377092a152
[depends] Add -stdlib=libc++ to darwin CXX flags 2017-11-29 17:24:59 +00:00
Cory Fields 038a858d2f
depends: use c++11 2017-11-29 17:24:59 +00:00
MarcoFalke b0a7ddb0b1
[depends] builders: No need to set -L and --location for curl 2017-11-29 17:24:59 +00:00
Luke Dashjr a8982ac97d
Bugfix: depends/Travis: Use --location (follow redirects) and --fail [on HTTP error response] with curl 2017-11-29 17:24:59 +00:00
Luke Dashjr bd03cfebec
depends: Use curl for fetching on Linux
Currently Travis's wget fails fetching qrencode:

Fetching qrencode...
ERROR: no certificate subject alternative name matches
	requested host name `fukuchi.org'.
To connect to fukuchi.org insecurely, use `--no-check-certificate'.
OpenSSL: error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error
Unable to establish SSL connection.
make: *** [/home/travis/build/luke-jr/bitcoin/depends/sources/download-stamps/.stamp_fetched-qrencode-qrencode-3.4.4.tar.bz2.hash] Error 4
2017-11-29 17:24:59 +00:00
Cory Fields 1f623c64b6
c++11: fix libbdb build against libc++ in c++11 mode
atomic_init clashes with
2017-11-29 17:24:59 +00:00
Homu 099bf3dd8f Auto merge of #2763 - syd0:upgrade-libsodium, r=daira
Update libsodium from 1.0.11 to 1.0.15

Closes #2693.
2017-11-28 13:20:13 -08:00
syd 0c177bc585 Update libsodium from 1.0.11 to 1.0.15 2017-11-22 23:16:51 -05:00
syd 24902602f2 Upgrade googletest to 1.8.0 2017-11-19 14:08:17 -05:00
kozyilmaz 35e12d992a empty spaces in PATH variable cause build failure 2017-10-31 15:14:21 +03:00
Sean Bowe 26a8f68ea8
Remove libsnark from depends system and integrate it into build system. 2017-08-02 15:49:30 +01:00
Daira Hopwood 506a21850a Remove UPnP support. fixes #2500
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-07-03 08:57:05 +01:00
Homu 00fd23930b Auto merge of #2443 - str4d:1621-priority-download-path, r=str4d
Rename FALLBACK_DOWNLOAD_PATH to PRIORITY_DOWNLOAD_PATH

Closes #1621.
2017-06-19 23:46:44 -07:00
Jack Grigg be60c6d7f6
Rename FALLBACK_DOWNLOAD_PATH to PRIORITY_DOWNLOAD_PATH
Closes #1621.
2017-06-15 16:32:36 +12:00
kozyilmaz e6dc07bc69 support per platform filename and hash setting for dependencies 2017-06-09 13:15:27 +03:00
Simon b9f6e40c9c Patch to build Proton with minimal dependencies.
Closes #2279.  Configures CMake to enable C++11, build static libaries
and only build cpp bindings with minimal dependencies. Documentation,
examples, tests and other language bindings are no longer built.
CMake will no longer try to find commands and packages which are not
required for building the target.
2017-04-28 12:03:37 -07:00
Simon 56f66372c5 Fix proton build issue with debian jessie, as used on CI servers.
Debian 8 stable ships with gcc 4.9.2 and cmake 3.0.2.  Previously
the depends package used CMAKE_CXX_STANDARD to tell cmake to use
C++11, but the option requires cmakes 3.1+.  To resolve the issue
we now update relevant CMakeLists.txt and set CMAKE_CXX_FLAGS.
2017-04-16 00:30:58 -07:00
Simon f493d3e044 Add --disable-proton flag to build.sh. Proton has build/linker issues with gcc 4.9.2 and requires gcc 5.x. 2017-03-25 09:41:54 -07:00
Simon 99eb947a98 Add AMQP 1.0 support via Apache Qpid Proton C++ API 0.17.0 2017-03-25 08:51:40 -07:00
Jack Grigg a163953929
[depends] libevent 2.1.8 2017-03-24 09:03:59 +13:00
fanquake ec626cc530
[depends] libevent 2.1.7rc 2017-03-24 09:03:59 +13:00