Skip to content

Commit

Permalink
[depends] ZeroMQ 4.2.2
Browse files Browse the repository at this point in the history
Summary:
```
Update depends ZeroMQ to 4.2.2, the release notes are available here.

We can drop both patches, as they have both been merged upstream (they actually had been for some time but just hadn't yet made it into a release).

--without-documentation is deprecated and has been replaced with --without-docs.
--disable-perf disables building performance measuring tools, which are enabled by default, see the libzmq configure.ac.
Updated dependencies.md.
--disable-curve-keygen disable building the curve key generation tool. See here.
```

Backport of core [[bitcoin/bitcoin#9254 | PR9254]] and [[bitcoin/bitcoin#11981 | PR11981]] (related bugfix).

Depends on D5577.

Test Plan: Run the Gitian builds.

Reviewers: #bitcoin_abc, jasonbcox

Reviewed By: #bitcoin_abc, jasonbcox

Subscribers: jasonbcox

Differential Revision: https://reviews.bitcoinabc.org/D5574
  • Loading branch information
fanquake authored and sickpig committed May 7, 2021
1 parent 13f5ed3 commit 44d102f
Show file tree
Hide file tree
Showing 5 changed files with 39 additions and 53 deletions.
16 changes: 8 additions & 8 deletions depends/packages/zeromq.mk
@@ -1,19 +1,18 @@
package=zeromq
$(package)_version=4.1.5
$(package)_download_path=https://github.com/zeromq/zeromq4-1/releases/download/v$($(package)_version)/
$(package)_version=4.2.2
$(package)_download_path=https://github.com/zeromq/libzmq/releases/download/v$($(package)_version)/
$(package)_file_name=$(package)-$($(package)_version).tar.gz
$(package)_sha256_hash=04aac57f081ffa3a2ee5ed04887be9e205df3a7ddade0027460b8042432bdbcf
$(package)_patches=9114d3957725acd34aa8b8d011585812f3369411.patch 9e6745c12e0b100cd38acecc16ce7db02905e27c.patch
$(package)_sha256_hash=5b23f4ca9ef545d5bd3af55d305765e3ee06b986263b31967435d285a3e6df6b
$(package)_patches=0001-fix-build-with-older-mingw64.patch

define $(package)_set_vars
$(package)_config_opts=--without-documentation --disable-shared --without-libsodium --disable-curve
$(package)_config_opts=--without-docs --disable-shared --without-libsodium --disable-curve --disable-curve-keygen --disable-perf
$(package)_config_opts_linux=--with-pic
$(package)_cxxflags=-std=c++11
endef

define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/9114d3957725acd34aa8b8d011585812f3369411.patch && \
patch -p1 < $($(package)_patch_dir)/9e6745c12e0b100cd38acecc16ce7db02905e27c.patch && \
patch -p1 < $($(package)_patch_dir)/0001-fix-build-with-older-mingw64.patch && \
./autogen.sh
endef

Expand All @@ -22,13 +21,14 @@ define $(package)_config_cmds
endef

define $(package)_build_cmds
$(MAKE) -j$(JOBS) libzmq.la
$(MAKE) -j$(JOBS) src/libzmq.la
endef

define $(package)_stage_cmds
$(MAKE) DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-includeHEADERS install-pkgconfigDATA
endef

define $(package)_postprocess_cmds
sed -i.old "s/ -lstdc++//" lib/pkgconfig/libzmq.pc && \
rm -rf bin share
endef
30 changes: 30 additions & 0 deletions depends/patches/zeromq/0001-fix-build-with-older-mingw64.patch
@@ -0,0 +1,30 @@
From 1a159c128c69a42d90819375c06a39994f3fbfc1 Mon Sep 17 00:00:00 2001
From: Cory Fields <cory-nospam-@coryfields.com>
Date: Tue, 28 Nov 2017 20:33:25 -0500
Subject: [PATCH] fix build with older mingw64

---
src/windows.hpp | 7 +++++++
1 file changed, 7 insertions(+)

diff --git a/src/windows.hpp b/src/windows.hpp
index 99e889d..e69038e 100644
--- a/src/windows.hpp
+++ b/src/windows.hpp
@@ -55,6 +55,13 @@
#include <winsock2.h>
#include <windows.h>
#include <mswsock.h>
+
+#if defined __MINGW64_VERSION_MAJOR && __MINGW64_VERSION_MAJOR < 4
+// Workaround for mingw-w64 < v4.0 which did not include ws2ipdef.h in iphlpapi.h.
+// Fixed in mingw-w64 by 9bd8fe9148924840d315b4c915dd099955ea89d1.
+#include <ws2def.h>
+#include <ws2ipdef.h>
+#endif
#include <iphlpapi.h>

#if !defined __MINGW32__
--
2.7.4

This file was deleted.

This file was deleted.

2 changes: 1 addition & 1 deletion doc/dependencies.md
Expand Up @@ -34,5 +34,5 @@ These dependencies are required:
| univalue ||||| | Utility | JSON parsing and encoding (bundled version will be used unless --with-system-univalue passed to configure)
| XCB | | | | | Yes (Linux only) | | |
| xkbcommon | | | | | Yes (Linux only) | | |
| ZeroMQ | [4.1.5](https://github.com/zeromq/libzmq/releases) | 4.1.5 | No | | | ZMQ notification | Optional, allows generating ZMQ notifications (requires ZMQ version >= 4.1.5)
| ZeroMQ | [4.2.2](https://github.com/zeromq/libzmq/releases) | 4.1.5 | No | | | ZMQ notification | Optional, allows generating ZMQ notifications (requires ZMQ version >= 4.1.5)
| zlib | [1.2.11](http://zlib.net/) | | | | No | | |

0 comments on commit 44d102f

Please sign in to comment.