-
Notifications
You must be signed in to change notification settings - Fork 36.2k
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
build: bump libevent to 2.1.11 in depends #17008
Conversation
I don't know about the Android part, but I did confirm that the |
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.
Can you mention which Android patches are no-longer required? As if we don't actually want to bump libevent
, maybe we could move them into depends.
2.1.11 changelog is available here.
This PR would also need to update the libevent
entry in doc/dependencies.md.
Diff of the configure output comparing master (1f40a91) and this PR (51794d9) on macOS
:
--- master.txt
+++ pr.txt
@@ -129,14 +129,15 @@
checking for WIN32... no
+checking for MIDIPIX... no
checking for CYGWIN... no
@@ -163,14 +164,17 @@
checking netinet/tcp.h presence... yes
checking for netinet/tcp.h... yes
+checking sys/un.h usability... yes
+checking sys/un.h presence... yes
+checking for sys/un.h... yes
checking poll.h usability... yes
checking poll.h presence... yes
@@ -243,14 +247,15 @@
checking for arc4random_buf... yes
+checking for arc4random_addrandom... yes
checking for eventfd... no
@@ -285,15 +290,14 @@
checking for working kqueue... yes
checking for epoll_ctl... no
-checking waitpid support WNOWAIT... no
checking for port_create... no
checking for pid_t... yes
@@ -303,28 +307,31 @@
checking size of void *... 8
checking size of off_t... 8
+checking size of time_t... 8
checking for struct in6_addr... yes
checking for struct sockaddr_in6... yes
+checking for struct sockaddr_un... yes
checking for sa_family_t... yes
checking for struct addrinfo... yes
checking for struct sockaddr_storage... yes
checking for struct in6_addr.s6_addr32... no
checking for struct in6_addr.s6_addr16... no
checking for struct sockaddr_in.sin_len... yes
checking for struct sockaddr_in6.sin6_len... yes
checking for struct sockaddr_storage.ss_family... yes
checking for struct sockaddr_storage.__ss_family... no
-checking for struct so_linger... no
+checking for struct linger... yes
checking for socklen_t... yes
checking whether our compiler supports __func__... yes
+checking whether our compiler supports __FUNCTION__... yes
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... -D_THREAD_SAFE
checking size of pthread_t... 8
checking that generated files are newer than configure... done
configure: creating ./config.status
As per the release notes bufferevent_ssl.h
is no longer installed. I have a depends diff of master vs this PR here.
Which operating systems have you tested building / running Bitcoin Core on with the new libevent?
That looks vaguely promising. Is there better UNIX socket support ? |
This patch from @greenaddress for missing arc4random_addrandom. It is now handled in upstream.
Good point. Done.
termux on Android-5 (ndk 20). |
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsNo conflicts as of last run. |
ACK after squashing the 968ae2f commit |
Done. |
Don't know about other Linux distros, but on Gentoo 2.1.8 is latest unmasked (stable) version, 2.1.11 is still masked. |
FWIW, what distributions use is not important for what is used with depends. The binaries are statically linked to libevent and this doesn't change the minimum supported version for building from source (that's still 2.0.22). |
I think the concern was the we don't want to be the bleeding edge testers of new releases, but rather want to wait for others to test new software and only then pull it in. |
At least it is in debian experimental: https://packages.debian.org/experimental/libevent-dev 😬 |
Well, 0.20.0 is still more than 6 months away so by that time it surely won't be bleeding edge anymore. I think better android support is a good reason to merge this. Would be nice to make some progress in that regard. |
Please remove the patch after rebase, now that it is no longer needed. |
The patch isn't in this repo AFAIK. |
@stefanwouldgo Please rebase on current master first |
Could squash the two commits into one? |
cc @icota, @greenaddress , @BlockMechanic from #16110 |
|
||
ifneq (,$(findstring android,$(host))) | ||
define $(package)_preprocess_cmds | ||
./autogen.sh && patch -p1 < $($(package)_patch_dir)/fix_android_arc4random_addrandom.patch |
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.
I haven't tested the build with this change but since the fix_android_arc4random_addrandom.patch
is no longer used it's probably best to remove the file itself and its libevent.mk
presence as well.
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.
it's probably best to remove the file itself
Sorry, fixed.
and its
libevent.mk
presence as well.
I don't see any further presence. Did I overlook anything?
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.
In (package)_patches
?
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.
Sorry, you've removed it. My bad.
this doesn't need patches on Android anymore like 2.1.8 did.
utACK |
Context for other reviewers: Here are the upstream equivalent patches: Our current patch: |
Gitian builds
|
ACK 02ac445 |
02ac445 bump libevent to 2.1.11 in depends (stefanwouldgo) Pull request description: this doesn't need patches on Android anymore like 2.1.8 did. ACKs for top commit: laanwj: ACK 02ac445 Tree-SHA512: 1fbfe342ee15fa4c5cb417979bd6c443f7c7aa40a489accf8ccd7c919e5b08e859b3da6edeee3de484f6f156b35dd4e97c7e2c7971b59fc31029865585ccb296
Ah, looks like it made it into bullseye: https://packages.debian.org/bullseye/libevent-dev |
02ac445 bump libevent to 2.1.11 in depends (stefanwouldgo) Pull request description: this doesn't need patches on Android anymore like 2.1.8 did. ACKs for top commit: laanwj: ACK 02ac445 Tree-SHA512: 1fbfe342ee15fa4c5cb417979bd6c443f7c7aa40a489accf8ccd7c919e5b08e859b3da6edeee3de484f6f156b35dd4e97c7e2c7971b59fc31029865585ccb296
Summary: ``` this doesn't need patches on Android anymore like 2.1.8 did. ``` Backport of core [[bitcoin/bitcoin#17008 | PR17008]]. Test Plan: Run the Gitian builds. Reviewers: #bitcoin_abc, deadalnix Reviewed By: #bitcoin_abc, deadalnix Differential Revision: https://reviews.bitcoinabc.org/D5671
02ac445 bump libevent to 2.1.11 in depends (stefanwouldgo) Pull request description: this doesn't need patches on Android anymore like 2.1.8 did. ACKs for top commit: laanwj: ACK 02ac445 Tree-SHA512: 1fbfe342ee15fa4c5cb417979bd6c443f7c7aa40a489accf8ccd7c919e5b08e859b3da6edeee3de484f6f156b35dd4e97c7e2c7971b59fc31029865585ccb296
this doesn't need patches on Android anymore like 2.1.8 did.