We partially revert 8dbd2edd98 by removing
all instances of setting `GIT_DIR` in the gitian descriptors. Currently,
gitian builds cause zcash to have version strings which look like
`Zcash Daemon version v5.3.0-35186b009-dirty`, which is inaccurate.
Setting `GIT_DIR` with a current working directory of
`/home/debian/build/zcash/distsrc-x86_64-linux-gnu` makes the git
invocations in `genbuild.sh` see that directory as the top of the
working tree, which causes git to believe that a bunch of tracked files
were deleted (namely, those not included by the `make dist` step).
This causes `genbuild.sh` to believe that it is working with a dirty
tree, and with the help of `src/clientversion.cpp`, zcash gets a version
string that includes a hash ending in `-dirty`.
This removes the following executables from the binary gitian release:
- test_bitcoin-qt[.exe]
- bench_bitcoin[.exe]
@jonasschnelli and me discussed this on IRC a few days ago - unlike the
normal `bitcoin_tests` which is useful to see if it is safe to run
bitcoin on a certain OS/environment combination, there is no good reason
to include these. Better to leave them out to reduce the download
size.
Sizes from the 0.12 release:
```
2.4M bitcoin-0.12.0/bin/bench_bitcoin.exe
22M bitcoin-0.12.0/bin/test_bitcoin-qt.exe
```
Common sentiment is that the miniupnpc codebase likely contains further
vulnerabilities.
I'd prefer to get rid of the dependency completely, but a compromise for
now is to at least disable it by default.
Github-Pull: #6795
Rebased-From: 21d27ebad5721bc61c62bc72dc3ab3197f9da268
For Gitian releases:
- Windows builds remain unchanged. libstdc++ was already linked statically.
- OSX builds remain unchanged. libstdc++ is tied to the SDK and not worth
messing with.
- Linux builds now statically link libstdc++.
For Travis:
- Match the previous behavior by adding --enable-reduce-exports as
necessary.
- Use static libstdc++ for the full Linux build.
Since permissions and timestamps are changed for the sake of determinism,
. must not be added to the archive. Otherwise, tar may try to modify pwd when
extracting.
Descriptors now make use of the dependencies builder, so results are cached.
A very new version (>= e9741525c) of Gitian should be used in order to take
advantage of caching.