Skip to content
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

Suppress focal-specific warnings #159

Merged
merged 7 commits into from
Aug 28, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,20 @@ ign_find_package(IgnProtobuf
# Find ZeroMQ
ign_find_package(ZeroMQ VERSION 4 REQUIRED PRIVATE)

if (UNIX AND NOT APPLE)
execute_process(COMMAND lsb_release -cs
OUTPUT_VARIABLE RELEASE_CODENAME
RESULT_VARIABLE LSB_RESULT
OUTPUT_STRIP_TRAILING_WHITESPACE
)

if( NOT (${LSB_RESULT} STREQUAL "0"))
message(WARNING "lsb_release executable not found. Disabling focal-specific workarounds")
elseif (${RELEASE_CODENAME} STREQUAL "focal")
set(UBUNTU_FOCAL 1)
endif()
endif()

#--------------------------------------
# Find cppzmq
ign_find_package(CPPZMQ REQUIRED PRIVATE
Expand Down
13 changes: 9 additions & 4 deletions include/ignition/transport/Helpers.hh
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
#ifndef IGN_TRANSPORT_HELPERS_HH_
#define IGN_TRANSPORT_HELPERS_HH_

#include <zmq.h>
#include <zmq.hpp>

#include <cstdint>
#include <cstdio>
Expand All @@ -30,14 +30,19 @@
#include "ignition/transport/config.hh"
#include "ignition/transport/Export.hh"

#define STR_HELPER(x) #x
#define STR(x) STR_HELPER(x)

// Avoid using deprecated message send/receive function when possible.
#if ZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 3, 1)
#define IGN_ZMQ_POST_4_3_1
#endif

// Avoid using deprecated set function when possible
#if CPPZMQ_VERSION >= ZMQ_MAKE_VERSION(4, 7, 0)
// Ubuntu Focal (20.04) packages a different "4.7.0"
#ifndef UBUNTU_FOCAL
#define IGN_CPPZMQ_POST_4_7_0
#endif
#endif

namespace ignition
{
namespace transport
Expand Down
6 changes: 6 additions & 0 deletions include/ignition/transport/config.hh.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
/* Config.hh. Generated by CMake for @PROJECT_NAME@. */

#ifndef IGNITION_${IGN_DESIGNATION_UPPER}_CONFIG_HH_
#define IGNITION_${IGN_DESIGNATION_UPPER}_CONFIG_HH_

/* Version number */
#define IGNITION_TRANSPORT_MAJOR_VERSION ${PROJECT_VERSION_MAJOR}
#define IGNITION_TRANSPORT_MINOR_VERSION ${PROJECT_VERSION_MINOR}
Expand All @@ -17,3 +20,6 @@
#cmakedefine BUILD_TYPE_RELEASE 1

#cmakedefine HAVE_IFADDRS 1
#cmakedefine UBUNTU_FOCAL 1

#endif
3 changes: 2 additions & 1 deletion log/src/Log_TEST.cc
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,8 @@ TEST(Log, OpenCorruptDatabase)
testing::portablePathUnion(IGN_TRANSPORT_LOG_TEST_PATH, "data");
path = testing::portablePathUnion(path, "state.tlog");
logFile.Open(path);
EXPECT_EQ(4806000000ns, logFile.EndTime());
EXPECT_GT(logFile.EndTime(), 0ns) << "logFile.EndTime() == "
<< logFile.EndTime().count() << "ns";;
}


Expand Down
2 changes: 1 addition & 1 deletion src/Node.cc
Original file line number Diff line number Diff line change
Expand Up @@ -619,7 +619,7 @@ bool Node::Unsubscribe(const std::string &_topic)
if (!this->dataPtr->shared->localSubscribers
.HasSubscriber(fullyQualifiedTopic))
{
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
mjcarroll marked this conversation as resolved.
Show resolved Hide resolved
this->dataPtr->shared->dataPtr->subscriber->set(
zmq::sockopt::unsubscribe, fullyQualifiedTopic);
#else
Expand Down
16 changes: 8 additions & 8 deletions src/NodeShared.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1068,7 +1068,7 @@ void NodeShared::OnNewConnection(const MessagePublisher &_pub)
this->dataPtr->subscriber->connect(addr.c_str());

// Add a new filter for the topic.
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->dataPtr->subscriber->set(zmq::sockopt::subscribe, topic);
#else
this->dataPtr->subscriber->setsockopt(ZMQ_SUBSCRIBE,
Expand Down Expand Up @@ -1263,7 +1263,7 @@ bool NodeShared::InitializeSockets()


int lingerVal = 0;
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->dataPtr->publisher->set(zmq::sockopt::linger, lingerVal);
#else
this->dataPtr->publisher->setsockopt(ZMQ_LINGER,
Expand Down Expand Up @@ -1301,7 +1301,7 @@ bool NodeShared::InitializeSockets()
<< std::endl;
}
}
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->dataPtr->subscriber->set(zmq::sockopt::rcvhwm, rcvQueueVal);
#else
this->dataPtr->subscriber->setsockopt(ZMQ_RCVHWM,
Expand Down Expand Up @@ -1339,7 +1339,7 @@ bool NodeShared::InitializeSockets()
<< std::endl;
}
}
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->dataPtr->publisher->set(zmq::sockopt::sndhwm, sndQueueVal);

this->dataPtr->publisher->bind(anyTcpEp.c_str());
Expand Down Expand Up @@ -1439,7 +1439,7 @@ int NodeShared::RcvHwm()
int rcvHwm;
try
{
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
rcvHwm = this->dataPtr->subscriber->get(zmq::sockopt::rcvhwm);
#else
size_t rcvHwmSize = sizeof(rcvHwm);
Expand All @@ -1460,7 +1460,7 @@ int NodeShared::SndHwm()
int sndHwm;
try
{
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
sndHwm = this->dataPtr->publisher->get(zmq::sockopt::sndhwm);
#else
size_t sndHwmSize = sizeof(sndHwm);
Expand Down Expand Up @@ -1561,7 +1561,7 @@ void NodeSharedPrivate::SecurityOnNewConnection()
// See issue #74
if (userPass(user, pass))
{
#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->subscriber->set(zmq::sockopt::plain_username, user);
this->subscriber->set(zmq::sockopt::plain_password, pass);
#else
Expand All @@ -1586,7 +1586,7 @@ void NodeSharedPrivate::SecurityInit()
int asPlainSecurityServer = static_cast<int>(
ZmqPlainSecurityServerOptions::ZMQ_PLAIN_SECURITY_SERVER_ENABLED);

#if (CPPZMQ_VERSION >= 40700)
#ifdef IGN_CPPZMQ_POST_4_7_0
this->publisher->set(zmq::sockopt::plain_server, asPlainSecurityServer);
this->publisher->set(zmq::sockopt::zap_domain, kIgnAuthDomain);
#else
Expand Down