diff options
author | Cory Fields <cory-nospam-@coryfields.com> | 2021-07-15 18:42:17 +0000 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2021-10-11 20:46:25 +0800 |
commit | 0f95247246344510c9a51810c14c633abb382e95 (patch) | |
tree | 2a358d0f78162cb6a2b1bb36a1df5a7acdc5a431 /contrib/guix/libexec/build.sh | |
parent | 304319367595b51abfd69f1c4abddeef0acca3a9 (diff) |
Integrate univalue into our buildsystem
This addresses issues like the one in #12467, where some of our compiler flags
end up being dropped during the subconfigure of Univalue. Specifically, we're
still using the compiler-default c++ version rather than forcing c++17.
We can drop the need subconfigure completely in favor of a tighter build
integration, where the sources are listed separately from the build recipes,
so that they may be included directly by upstream projects. This is
similar to the way leveldb build integration works in Core.
Core benefits of this approach include:
- Better caching (for ex. ccache and autoconf)
- No need for a slow subconfigure
- Faster autoconf
- No more missing compile flags
- Compile only the objects needed
There are no benefits to Univalue itself that I can think of. These changes
should be a no-op there, and to downstreams as well until they take advantage
of the new sources.mk.
This also removes the option to use an external univalue to avoid similar ABI
issues with mystery binaries.
Co-authored-by: fanquake <fanquake@gmail.com>
Diffstat (limited to 'contrib/guix/libexec/build.sh')
-rwxr-xr-x | contrib/guix/libexec/build.sh | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/contrib/guix/libexec/build.sh b/contrib/guix/libexec/build.sh index 93526f8c45..bffe524dbc 100755 --- a/contrib/guix/libexec/build.sh +++ b/contrib/guix/libexec/build.sh @@ -297,7 +297,7 @@ mkdir -p "$DISTSRC" ${HOST_CXXFLAGS:+CXXFLAGS="${HOST_CXXFLAGS}"} \ ${HOST_LDFLAGS:+LDFLAGS="${HOST_LDFLAGS}"} - sed -i.old 's/-lstdc++ //g' config.status libtool src/univalue/config.status src/univalue/libtool + sed -i.old 's/-lstdc++ //g' config.status libtool # Build Bitcoin Core make --jobs="$JOBS" ${V:+V=1} |