-
Notifications
You must be signed in to change notification settings - Fork 37.7k
build: Drop all of the ZeroMQ patches #18405
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
Conversation
The Mingw-w64 5.0 (Ubuntu 18.04 Bionic) is used to build the Windows binaries now.
It is safe to use pthread_setname_np since bitcoin#17538 when the minimal glibc version is set to 2.17.
763b839
to
f642b49
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK.
Concept ACK: less is more |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Concept ACK
|
@MarcoFalke Mind re-assigning "Needs gitian build"? |
Looks like most "stable" releases of distributions have |
Gitian builds
|
Concept ACK, though I don't think there's any hurry to do this. I'd like to avoid going back and forth debate over this as happened with #18427. |
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK f642b49.
079df96 - This is ok. As noted most distros have a much more recent version of mingw-w64 available. Also if someone is using mingw-w64 < 4 (i.e Ubuntu 14.04), at least the failure will be obvious, as zmq in depends will fail to build:
In file included from src/windows.hpp:61:0,
from src/precompiled.hpp:49,
from src/address.cpp:30:
/usr/share/mingw-w64/include/iphlpapi.h:147:5: error: 'SOCKADDR_IN6' does not name a type
SOCKADDR_IN6 Ipv6Address;
^
cc1plus: warning: unrecognized command line option "-Wno-tautological-constant-compare" [enabled by default]
cc1plus: warning: unrecognized command line option "-Wno-atomic-alignment" [enabled by default]
make[1]: *** [src/src_libzmq_la-address.lo] Error 1
However, if they are cross-compiling for Windows using 14.04, they've already got other issues to deal with. Qt doesn't build:
compiling qwindowsnativeinterface.cpp
compiling qwindowsopengltester.cpp
compiling qwin10helpers.cpp
qwin10helpers.cpp:60:37: fatal error: uiviewsettingsinterop.h: No such file or directory
# include <uiviewsettingsinterop.h>
^
compilation terminated.
compiling qwindowsclipboard.cpp
compiling qwindowsdrag.cpp
compiling qwindowstabletsupport.cpp
make[5]: *** [.obj/release/qwin10helpers.o] Error 1
and even if you build depends, skipping QT and zeromq, bitcoind doesn't compile, due to the inclusion of the <codecvt>
header:
CXX libbitcoin_common_a-netbase.o
CXX libbitcoin_common_a-net_permissions.o
netbase.cpp:19:19: fatal error: codecvt: No such file or directory
#include <codecvt>
^
compilation terminated.
CXX libbitcoin_common_a-outputtype.o
CXX policy/libbitcoin_common_a-feerate.o
make[2]: *** [libbitcoin_common_a-netbase.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/bitcoin/src'
f642b49 - as mentioned, pthread_setname_np
has been available since glibc 2.12. We now require 2.17+.
the Mingw-w64 5.0 (Ubuntu 18.04 bionic) is used to build the Windows binaries
I do want to mention that this by itself isn't sufficient justification for dropping patches, as the version of Ubuntu we use to build releases (which can be quite recent) isn't the only OS we have to worry about supporting.
f642b49 build: Drop ZeroMQ patch for glibc < 2.12 (Hennadii Stepanov) 079df96 build: Drop ZeroMQ patch for Mingw-w64 < 4.0 (Hennadii Stepanov) Pull request description: This PR gets rid of the all patches for ZeroMQ: - the [Mingw-w64 5.0 (Ubuntu 18.04 bionic)](https://packages.ubuntu.com/bionic/mingw-w64) is used to build the [Windows](https://github.com/bitcoin/bitcoin/blob/master/doc/build-windows.md) binaries - it is safe to use `pthread_setname_np` since bitcoin#17538 when the minimal `glibc` version is set to 2.17; see: bitcoin#11986 (comment) ACKs for top commit: fanquake: ACK f642b49. Tree-SHA512: a2c97cdb682cd7d96a666ad099f20725a32bf8fda0842fc5534ca08a1634c90ba80afde92f9054595ed2501fbc5c02abbe3da765934ecff12d836ff25e277fc5
Summary: ``` This PR gets rid of the all patches for ZeroMQ: - the Mingw-w64 5.0 (Ubuntu 18.04 bionic) is used to build the Windows binaries - it is safe to use pthread_setname_np since #17538 when the minimal glibc version is set to 2.17; see: #11986 (comment) ``` Note: Debian Buster has MinGw 6.0 and we enforce glibc >= 2.19. Backport of core [[bitcoin/bitcoin#18405 | PR18405]]. Test Plan: make build-all Reviewers: #bitcoin_abc, majcosta Reviewed By: #bitcoin_abc, majcosta Differential Revision: https://reviews.bitcoinabc.org/D7760
Summary: ``` This PR gets rid of the all patches for ZeroMQ: - the Mingw-w64 5.0 (Ubuntu 18.04 bionic) is used to build the Windows binaries - it is safe to use pthread_setname_np since #17538 when the minimal glibc version is set to 2.17; see: #11986 (comment) ``` Note: Debian Buster has MinGw 6.0 and we enforce glibc >= 2.19. Backport of core [[bitcoin/bitcoin#18405 | PR18405]]. Test Plan: make build-all Reviewers: #bitcoin_abc, majcosta Reviewed By: #bitcoin_abc, majcosta Differential Revision: https://reviews.bitcoinabc.org/D7760
merge bitcoin#18820, bitcoin#19764, bitcoin#13686, bitcoin#17538, bitcoin#18405: zmq backports, boost depends split
This PR gets rid of the all patches for ZeroMQ:
pthread_setname_np
since build: Bump minimum libc to 2.17 for release binaries #17538 when the minimalglibc
version is set to 2.17; see: [depends] zeromq 4.2.3 #11986 (comment)