Merge pull request #2236 from sabotagebeats/fix/issues/2149

Utils and libraries: Update ZMQ to 4.3.4
This commit is contained in:
Patrick Lodder 2021-07-24 19:19:36 +02:00 committed by GitHub
commit f509487d3b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 88 additions and 53 deletions

View File

@ -1,9 +1,10 @@
package=zeromq
$(package)_version=4.1.5
$(package)_download_path=https://github.com/zeromq/zeromq4-1/releases/download/v$($(package)_version)/
$(package)_version=4.3.4
$(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=c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5
$(package)_patches=remove_libstd_link.patch clock-unused-nsecs.patch 0002-disable-pthread_set_name_np.patch
$(package)_patches+=trusty-add-win32-inethdr.patch
define $(package)_set_vars
$(package)_config_opts=--without-documentation --disable-shared --without-libsodium --disable-curve
@ -12,9 +13,11 @@ define $(package)_set_vars
endef
define $(package)_preprocess_cmds
patch -p1 < $($(package)_patch_dir)/9114d3957725acd34aa8b8d011585812f3369411.patch && \
patch -p1 < $($(package)_patch_dir)/9e6745c12e0b100cd38acecc16ce7db02905e27c.patch && \
./autogen.sh
patch -p1 < $($(package)_patch_dir)/clock-unused-nsecs.patch && \
patch -p1 < $($(package)_patch_dir)/remove_libstd_link.patch && \
patch -p1 < $($(package)_patch_dir)/0002-disable-pthread_set_name_np.patch && \
patch -p1 < $($(package)_patch_dir)/trusty-add-win32-inethdr.patch && \
cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub config
endef
define $(package)_config_cmds
@ -22,7 +25,7 @@ define $(package)_config_cmds
endef
define $(package)_build_cmds
$(MAKE) libzmq.la
$(MAKE) ./src/libzmq.la
endef
define $(package)_stage_cmds
@ -30,5 +33,5 @@ define $(package)_stage_cmds
endef
define $(package)_postprocess_cmds
rm -rf bin share
rm -rf bin share lib/*.la
endef

View File

@ -0,0 +1,29 @@
From 6e6b47d5ab381c3df3b30bb0b0a6cf210dfb1eba Mon Sep 17 00:00:00 2001
From: Cory Fields <cory-nospam-@coryfields.com>
Date: Mon, 5 Mar 2018 14:22:05 -0500
Subject: [PATCH] disable pthread_set_name_np
pthread_set_name_np adds a Glibc requirement on >= 2.12.
---
src/thread.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- zeromq-4.3.4-orig/src/thread.cpp 2021-01-03 21:46:01.000000000 +0000
+++ zeromq-4.3.4/src/thread.cpp 2021-07-01 22:42:49.850117319 +0100
@@ -393,6 +393,7 @@
return;
#endif
+#if 0
#if defined(ZMQ_HAVE_PTHREAD_SETNAME_1)
int rc = pthread_setname_np (_name);
if (rc)
@@ -408,6 +409,8 @@
#elif defined(ZMQ_HAVE_PTHREAD_SET_NAME)
pthread_set_name_np (pthread_self (), _name);
#endif
+#endif
+ return;
}
#endif

View File

@ -1,22 +0,0 @@
From 9114d3957725acd34aa8b8d011585812f3369411 Mon Sep 17 00:00:00 2001
From: Jeroen Ooms <jeroenooms@gmail.com>
Date: Tue, 20 Oct 2015 13:10:38 +0200
Subject: [PATCH] enable static libraries on mingw
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 393505b..e92131a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -265,7 +265,7 @@ case "${host_os}" in
libzmq_dso_visibility="no"
if test "x$enable_static" = "xyes"; then
- AC_MSG_ERROR([Building static libraries is not supported under MinGW32])
+ CPPFLAGS="-DZMQ_STATIC"
fi
# Set FD_SETSIZE to 1024

View File

@ -1,22 +0,0 @@
From 9e6745c12e0b100cd38acecc16ce7db02905e27c Mon Sep 17 00:00:00 2001
From: David Millard <dmillard10@gmail.com>
Date: Tue, 10 May 2016 13:53:53 -0700
Subject: [PATCH] Fix autotools for static MinGW builds
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 5a0fa14..def6ea7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -259,7 +259,7 @@ case "${host_os}" in
libzmq_dso_visibility="no"
if test "x$enable_static" = "xyes"; then
- CPPFLAGS="-DZMQ_STATIC"
+ CPPFLAGS="-DZMQ_STATIC $CPPFLAGS"
fi
# Set FD_SETSIZE to 1024

View File

@ -0,0 +1,11 @@
diff -dur a/src/clock.cpp b/src/clock.cpp
--- a/src/clock.cpp 2021-07-12 21:15:35.111146311 +0000
+++ b/src/clock.cpp 2021-07-12 21:22:09.059753013 +0000
@@ -194,6 +194,7 @@
#else
// Use POSIX gettimeofday function to get precise time.
+ LIBZMQ_UNUSED (nsecs_per_usec);
struct timeval tv;
int rc = gettimeofday (&tv, NULL);
errno_assert (rc == 0);

View File

@ -0,0 +1,25 @@
commit 47d4cd12a2c051815ddda78adebdb3923b260d8a
Author: fanquake <fanquake@gmail.com>
Date: Tue Aug 18 14:45:40 2020 +0800
Remove needless linking against libstdc++
This is broken for a number of reasons, including:
- g++ understands "static-libstdc++ -lstdc++" to mean "link against
whatever libstdc++ exists, probably shared", which in itself is buggy.
- another stdlib (libc++ for example) may be in use
See #11981.
diff --git a/src/libzmq.pc.in b/src/libzmq.pc.in
index 233bc3a..3c2bf0d 100644
--- a/src/libzmq.pc.in
+++ b/src/libzmq.pc.in
@@ -7,6 +7,6 @@ Name: libzmq
Description: 0MQ c++ library
Version: @VERSION@
Libs: -L${libdir} -lzmq
-Libs.private: -lstdc++ @pkg_config_libs_private@
+Libs.private: @pkg_config_libs_private@
Requires.private: @pkg_config_names_private@
Cflags: -I${includedir} @pkg_config_defines@

View File

@ -0,0 +1,11 @@
diff -dur a/src/windows.hpp b/src/windows.hpp
--- a/src/windows.hpp 2021-07-16 20:31:22.997078113 +0000
+++ b/src/windows.hpp 2021-07-16 20:33:21.525281189 +0000
@@ -52,6 +52,7 @@
#endif
#include <winsock2.h>
+#include <ws2ipdef.h>
#include <windows.h>
#include <mswsock.h>
#include <iphlpapi.h>