Package: src:zeromq3 Version: 4.2.5-1 Severity: important Tags: patch upstream Forwarded: https://github.com/zeromq/libzmq/pull/3168
Dear Maintainer, The zeromq's autotools script, when ran on Hurd or kFreeBSD, do not correctly use a version map to restrict the exported symbols, and as a result depending on the build some of the standard libraries symbols are exposed by the shared library. This is currently causing zeromq3 to fail to build on kFreeBSD, because one such symbol is disappearing. I fixed this upstream, and the patch is inlined at the bottom. After applying this, all the symbols marked with kfreebsd can be removed from libzmq5.symbols. I have tested this on a kFreeBSD VM and on a Hurd porterbox. -- Kind regards, Luca Boccassi Author: Luca Boccassi <bl...@debian.org> Description: stop libstdc++ symbols from being exported on Debian/[Hurd|kFreeBSD] Use the --version-script map on those systems as well, as it is supported. Forwarded: https://github.com/zeromq/libzmq/pull/3168 Applied-Upstream: 681e53f369d973d50a519cade214d86949978d2c --- a/Makefile.am +++ b/Makefile.am @@ -284,6 +284,12 @@ src_libzmq_la_LDFLAGS = \ @LIBZMQ_EXTRA_LDFLAGS@ \ -Wl,--version-script=$(srcdir)/src/libzmq.vers else +if ON_GNU +src_libzmq_la_LDFLAGS = \ + -version-info @LTVER@ \ + @LIBZMQ_EXTRA_LDFLAGS@ \ + -Wl,--version-script=$(srcdir)/src/libzmq.vers +else src_libzmq_la_LDFLAGS = \ -version-info @LTVER@ \ @LIBZMQ_EXTRA_LDFLAGS@ \ @@ -291,6 +297,7 @@ src_libzmq_la_LDFLAGS = \ endif endif endif +endif endif src_libzmq_la_CPPFLAGS = $(CODE_COVERAGE_CPPFLAGS) $(LIBUNWIND_CFLAGS) --- a/configure.ac +++ b/configure.ac @@ -211,6 +211,12 @@ case "${host_os}" in ;; *freebsd*) # Define on FreeBSD to enable all library features + case "${host_os}" in + # On Debian/kFreeBSD with gnu set the --version-script flag + kfreebsd*-gnu*) + libzmq_on_gnu="yes" + ;; + esac CPPFLAGS="-D__BSD_VISIBLE $CPPFLAGS" AC_DEFINE(ZMQ_HAVE_FREEBSD, 1, [Have FreeBSD OS]) ;;
signature.asc
Description: This is a digitally signed message part