Backported from zeromq/libzmq@032c5ed
This commit fixes the following warnings:
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
CMake Warning (dev) at builds/cmake/Modules/FindAsciiDoc.cmake:9 (find_program):
Policy CMP0053 is not set: Simplify variable reference and escape sequence
evaluation. Run "cmake --help-policy CMP0053" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
For input:
'$ENV{PROGRAMFILES(X86)}/asciidoc'
the old evaluation rules produce:
'/asciidoc'
but the new evaluation rules produce an error:
Syntax error in cmake code at
/path/to/builds/cmake/Modules/FindAsciiDoc.cmake:13
when parsing string
$ENV{PROGRAMFILES(X86)}/asciidoc
Invalid character ('(') in a variable name: 'PROGRAMFILES'
Using the old result for compatibility since the policy is not set.
Call Stack (most recent call first):
CMakeLists.txt:193 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
and
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
CMake Warning (dev) at builds/cmake/Modules/FindAsciiDoc.cmake:15 (find_program):
Policy CMP0053 is not set: Simplify variable reference and escape sequence
evaluation. Run "cmake --help-policy CMP0053" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
For input:
'$ENV{PROGRAMFILES(X86)}/asciidoc'
the old evaluation rules produce:
'/asciidoc'
but the new evaluation rules produce an error:
Syntax error in cmake code at
/path/to/builds/cmake/Modules/FindAsciiDoc.cmake:19
when parsing string
$ENV{PROGRAMFILES(X86)}/asciidoc
Invalid character ('(') in a variable name: 'PROGRAMFILES'
Using the old result for compatibility since the policy is not set.
Call Stack (most recent call first):
CMakeLists.txt:193 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.
8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---
The header symbols are declared extern "C",
however the the implementations are compiled in a C++ source.
The result is that the library symbols get C++ name mangled
and the resulting dll is missing all of the symbols from the header.
The fix was to add extern "C" in zmq.cpp and zmq_utils.cpp
The static library was given the same OUTPUT_NAME as the dynamic library.
This leads to one library's build products overwriting the other.
The fix sets the name "libzmq-static" for the static library.
Autogen.sh looks for the libtool command as a mean to check if
libtool is available. But distributions like Debian and Ubuntu have
split the libtool package, and the libtool script is now in a
separate package. The solution is to look for the libtoolize command
too before failing, which is what the Autotools chain actually needs
on Linux. Keep checking for libtool to be compatible with OSX, where
the opposite is true.
backport of zeromq/libzmq#721
In the discussion, it was decided to backport, but that never actually happened.
test file was renamed after the above PR, so the version from master is pulled in here.
indentation was correct, but poll was inside `if control`,
causing it to only be called if there is a control message.
This would cause proxy messages to only be delivered after a control message had been sent.