Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Backport Bitcoin PR#7349: Build against system UniValue when available #1503

Merged
merged 7 commits into from
Jul 4, 2017

Conversation

OlegGirko
Copy link

This is a backport of Bitcoin PR bitcoin#7349.

This PR not only allows unbundling of UniValue library (making packaging easier), but also fixes a bug preventing correct build of bench_dash.

Original description is not completely correct: by default bundled UniValue is used, attempt to detect system one is performed only if --with-system-univalue option is present. Hence, this change is fully backwards-compatible and does not interfere with existing build process.

Original description follows.

If UniValue is present on the system, it will be used instead of bundled copy.
If not, bundled copy will automatically be built and used statically.

User can override either way using --with[out]-system-univalue configure option.

@UdjinM6 UdjinM6 added this to the 12.2 milestone Jul 3, 2017
@UdjinM6
Copy link

UdjinM6 commented Jul 3, 2017

but also fixes a bug preventing correct build of bench_dash

Mind expanding on this?

@OlegGirko
Copy link
Author

Current Dash benchmark code is quite minimal, but its Makefile.bench.include is supposed to link univalue library in case other benchmarks use other parts of Dash code that use this library. I was playing with some Bitcoin PR that adds another benchmark, and suddenly bench_dash compilation started failing with unresolved symbols. So I found that Makefile.bench.include uses $(LIBBITCOIN_UNIVALUE) in Dash, but it uses $(LIBUNIVALUE) in Bitcoin, so I found that backporting this PR will be beneficial for Dash. For reference, $(LIBUNIVALUE) is used in Makefile.test.include, so what we currently have in Makefile.bench.include is definitely a bug.

Although I've decided not to backport the PR introducing another benchmark I've mentioned above, we can add more benchmarks in the future.

Copy link

@UdjinM6 UdjinM6 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, I see. This is actually a bug that corresponding Bitcoin PR fixes too (silently) in 2adf7e2 ( d9a0777 in backported version).

utACK

@UdjinM6 UdjinM6 merged commit f65017c into dashpay:v0.12.2.x Jul 4, 2017
@OlegGirko OlegGirko deleted the bc-pr-7349 branch July 4, 2017 04:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants