diff --git a/cmake/FindOpen62541.cmake b/cmake/FindOpen62541.cmake index d01b3a3a3..4db3b875c 100644 --- a/cmake/FindOpen62541.cmake +++ b/cmake/FindOpen62541.cmake @@ -17,6 +17,7 @@ # # ``open62541`` # The open62541 library +find_package(open62541 CONFIG) find_path(Open62541_INCLUDE_DIRS NAMES open62541.h @@ -30,16 +33,10 @@ if (NOT Open62541_INCLUDE_DIRS STREQUAL "Open62541_INCLUDE_DIRS-NOTFOUND" AND NO set(Open62541_FOUND ON) endif() -if (Open62541_FOUND) - add_library(open62541 UNKNOWN IMPORTED) - set_target_properties(open62541 PROPERTIES - IMPORTED_LOCATION "${Open62541_LIBRARIES}" - INTERFACE_INCLUDE_DIRECTORIES "${Open62541_INCLUDE_DIRS}") - - if (WIN32) - set_property(TARGET open62541 APPEND PROPERTY - INTERFACE_LINK_LIBRARIES ws2_32) - endif() +if (open62541_FOUND) + add_library(open62541 INTERFACE IMPORTED) + target_link_libraries(open62541 INTERFACE open62541::open62541) + set(Open62541_FOUND ON) endif() mark_as_advanced(Open62541_INCLUDE_DIRS Open62541_LIBRARIES) diff --git a/src/3rdparty/open62541/open62541.c b/src/3rdparty/open62541/open62541.c index b81a9d54d..368c4c864 100644 --- a/src/3rdparty/open62541/open62541.c +++ b/src/3rdparty/open62541/open62541.c @@ -63668,6 +63668,7 @@ void UA_deinitialize_architecture_network(void){ # undef SLIST_ENTRY # define POP_SLIST_ENTRY # endif +#define NOMINMAX # include /* restore definition */ # ifdef POP_SLIST_ENTRY diff --git a/src/3rdparty/open62541/open62541.h b/src/3rdparty/open62541/open62541.h index 0281c29a6..c011ff372 100644 --- a/src/3rdparty/open62541/open62541.h +++ b/src/3rdparty/open62541/open62541.h @@ -211,7 +211,7 @@ void UA_free(void* ptr); //de-allocate memory previously allocated with UA_mallo #if defined(_WIN32) && !defined(__clang__) # include #endif - +#define NOMINMAX #include #include #include diff --git a/src/plugins/opcua/open62541/qopen62541backend.cpp b/src/plugins/opcua/open62541/qopen62541backend.cpp index 98560b750..9b5b14241 100644 --- a/src/plugins/opcua/open62541/qopen62541backend.cpp +++ b/src/plugins/opcua/open62541/qopen62541backend.cpp @@ -1058,11 +1058,11 @@ void Open62541AsyncBackend::reevaluateClientIterateTimer() if (m_subscriptions.count() == 0) m_clientIterateTimer.start(m_maximumIterateInterval); else {// Derive an interval from the the lowest subscription and a lower limit. - double minimum = std::numeric_limits::max(); + double minimum = (std::numeric_limits::max)(); for (const auto subscription : m_subscriptions) minimum = subscription->interval() < minimum ? subscription->interval() : minimum; // Set an interval between configured minimum and maximum, depending on the fastest subscription - m_clientIterateTimer.start(std::min(m_maximumIterateInterval, std::max(m_minimumIterateInterval, minimum))); + m_clientIterateTimer.start((std::min)(m_maximumIterateInterval, (std::max)(m_minimumIterateInterval, minimum))); } }