mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-04 03:09:07 +08:00
[fastrtps] Update to 2.14.0 (#38637)
Although the project was rebranded to Fast-DDS, the CMake project kept the name fastrtps. - [X] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md). - [X] SHA512s are updated for each updated download. - [X] The "supports" clause reflects platforms that may be fixed by this new version. - [ ] Any fixed [CI baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt) entries are removed from that file. - [X] Any patches that are no longer applied are deleted from the port's directory. - [X] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result. - [X] Only one version is added to each modified port's versions file.
This commit is contained in:
parent
53c5721b00
commit
71a64407c7
@ -1,23 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 7ca47ae..632c38b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -42,6 +42,18 @@ message(STATUS "Version: ${PROJECT_VERSION}")
|
||||
###############################################################################
|
||||
option(EPROSIMA_BUILD "Activate internal building" OFF)
|
||||
|
||||
+###############################################################################
|
||||
+# Replace xtime with _timespec64. As a workround of the unreleased version of
|
||||
+# MSVC, it will be deleted after release.
|
||||
+###############################################################################
|
||||
+if(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
||||
+ if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "19.37.32705.0")
|
||||
+ file(READ "${PROJECT_SOURCE_DIR}/include/fastrtps/utils/TimedMutex.hpp" _contents)
|
||||
+ string(REPLACE "xtime*" "_timespec64*" _contents "${_contents}")
|
||||
+ file(WRITE "${PROJECT_SOURCE_DIR}/include/fastrtps/utils/TimedMutex.hpp" "${_contents}")
|
||||
+ endif()
|
||||
+endif()
|
||||
+
|
||||
###############################################################################
|
||||
# Warning level
|
||||
###############################################################################
|
@ -1,40 +0,0 @@
|
||||
diff --git a/include/fastrtps/utils/TimedMutex.hpp b/include/fastrtps/utils/TimedMutex.hpp
|
||||
index 8d5d968..7ba3e00 100644
|
||||
--- a/include/fastrtps/utils/TimedMutex.hpp
|
||||
+++ b/include/fastrtps/utils/TimedMutex.hpp
|
||||
@@ -23,10 +23,14 @@
|
||||
#include <iostream>
|
||||
|
||||
#if defined(_WIN32)
|
||||
+#if defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 193632528
|
||||
+#include <mutex>
|
||||
+#else
|
||||
#include <thread>
|
||||
extern int clock_gettime(
|
||||
int,
|
||||
struct timespec* tv);
|
||||
+#endif // if defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 193632528
|
||||
#elif _GTHREAD_USE_MUTEX_TIMEDLOCK
|
||||
#include <mutex>
|
||||
#else
|
||||
@@ -37,6 +41,11 @@ namespace eprosima {
|
||||
namespace fastrtps {
|
||||
|
||||
#if defined(_WIN32)
|
||||
+
|
||||
+#if defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 193632528
|
||||
+using TimedMutex = std::timed_mutex;
|
||||
+using RecursiveTimedMutex = std::recursive_timed_mutex;
|
||||
+#else
|
||||
class TimedMutex
|
||||
{
|
||||
public:
|
||||
@@ -182,6 +191,8 @@ private:
|
||||
|
||||
_Mtx_t mutex_;
|
||||
};
|
||||
+#endif // if defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 193632528
|
||||
+
|
||||
#elif _GTHREAD_USE_MUTEX_TIMEDLOCK || !defined(__unix__)
|
||||
using TimedMutex = std::timed_mutex;
|
||||
using RecursiveTimedMutex = std::recursive_timed_mutex;
|
@ -1,30 +1,28 @@
|
||||
# https://github.com/eProsima/Fast-DDS/pull/3983
|
||||
# Could remove after 2.6.6/2.10.2/2.11.2, other minor versions not applied
|
||||
# Could remove after 2.13 released, or any newer mijor versions
|
||||
vcpkg_download_distfile(
|
||||
PR_3983_PATCH
|
||||
URLS https://github.com/eProsima/Fast-DDS/commit/2601e95429f5676c47c25200e995fb93157e7815.patch?full_index=1
|
||||
SHA512 440ee6a918d7085b6520613fad1482a9b833ee259e64c8919bdeb43277f3685362e6314380bafc6c51dad46fd16a9b415343e9db28f157d13f76b9af0cb21e8d
|
||||
FILENAME fastrtps-2601e95429f5676c47c25200e995fb93157e7815.patch
|
||||
)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO eProsima/Fast-DDS
|
||||
REF v2.7.0
|
||||
SHA512 289c94fb177209ffc80e93ae61822c83e7cb74ba7682f05a921c50ce048498bd811c19825d1fdb8af39b29a64904e96d87c5c59468139f0d8bb528549b80c94a
|
||||
REF v2.14.0
|
||||
SHA512 cf3628ac7598c83f09e3975de9fb59e868797adc331d7b4a226c38c0bbd1f7ce15deeb7cedee938a86a68426585e0b5646a84f40705c9a04553b7e37f20b2a4d
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-find-package-asio.patch
|
||||
disable-symlink.patch
|
||||
fix-xtime.patch
|
||||
fix_thread.patch #https://github.com/eProsima/Fast-DDS/pull/3904
|
||||
"${PR_3983_PATCH}"
|
||||
)
|
||||
|
||||
set(extra_opts "")
|
||||
if (VCPKG_TARGET_IS_WINDOWS AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")
|
||||
# when cross-compiling, try_run will not work.
|
||||
set(extra_opts
|
||||
-DSM_RUN_RESULT=TRUE
|
||||
-DSM_RUN_RESULT__TRYRUN_OUTPUT=
|
||||
)
|
||||
endif()
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
DISABLE_PARALLEL_CONFIGURE # due to fix-xtime.patch
|
||||
OPTIONS
|
||||
${extra_opts}
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
@ -34,13 +32,13 @@ vcpkg_cmake_config_fixup(CONFIG_PATH share/fastrtps/cmake)
|
||||
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
# copy tools from "bin" to "tools" folder
|
||||
foreach(TOOL "fast-discovery-server-1.0.0.exe" "fast-discovery-server.bat" "fastdds.bat" "ros-discovery.bat")
|
||||
foreach(TOOL "fast-discovery-server-1.0.1.exe" "fast-discovery-server.bat" "fastdds.bat" "ros-discovery.bat")
|
||||
file(INSTALL "${CURRENT_PACKAGES_DIR}/bin/${TOOL}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
||||
file(REMOVE "${CURRENT_PACKAGES_DIR}/bin/${TOOL}")
|
||||
endforeach()
|
||||
|
||||
# remove tools from debug builds
|
||||
foreach(TOOL "fast-discovery-serverd-1.0.0.exe" "fast-discovery-server.bat" "fastdds.bat" "ros-discovery.bat")
|
||||
foreach(TOOL "fast-discovery-serverd-1.0.1.exe" "fast-discovery-server.bat" "fastdds.bat" "ros-discovery.bat")
|
||||
if(EXISTS "${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL}")
|
||||
file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL}")
|
||||
endif()
|
||||
@ -53,17 +51,17 @@ if(VCPKG_TARGET_IS_WINDOWS)
|
||||
vcpkg_copy_tool_dependencies("${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
||||
elseif(VCPKG_TARGET_IS_LINUX)
|
||||
# copy tools from "bin" to "tools" folder
|
||||
foreach(TOOL "fast-discovery-server-1.0.0" "fast-discovery-server" "fastdds" "ros-discovery")
|
||||
foreach(TOOL "fast-discovery-server-1.0.1" "fast-discovery-server" "fastdds" "ros-discovery")
|
||||
file(INSTALL "${CURRENT_PACKAGES_DIR}/bin/${TOOL}" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}")
|
||||
file(REMOVE "${CURRENT_PACKAGES_DIR}/bin/${TOOL}")
|
||||
endforeach()
|
||||
|
||||
# replace symlink by a copy because symlinks do not work well together with vcpkg binary caching
|
||||
file(REMOVE "${CURRENT_PACKAGES_DIR}/tools/${PORT}/fast-discovery-server")
|
||||
file(INSTALL "${CURRENT_PACKAGES_DIR}/tools/${PORT}/fast-discovery-server-1.0.0" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}" RENAME "fast-discovery-server")
|
||||
file(INSTALL "${CURRENT_PACKAGES_DIR}/tools/${PORT}/fast-discovery-server-1.0.1" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/${PORT}" RENAME "fast-discovery-server")
|
||||
|
||||
# remove tools from debug builds
|
||||
foreach(TOOL "fast-discovery-serverd-1.0.0" "fast-discovery-server" "fastdds" "ros-discovery")
|
||||
foreach(TOOL "fast-discovery-serverd-1.0.1" "fast-discovery-server" "fastdds" "ros-discovery")
|
||||
file(REMOVE "${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL}")
|
||||
endforeach()
|
||||
|
||||
|
@ -1,8 +1,7 @@
|
||||
{
|
||||
"name": "fastrtps",
|
||||
"version": "2.7.0",
|
||||
"port-version": 5,
|
||||
"description": "Eprosima Fast RTPS is a C++ implementation of the RTPS (Real Time Publish Subscribe) protocol, which provides publisher-subscriber communications over unreliable transports such as UDP, as defined and maintained by the Object Management Group (OMG) consortium.",
|
||||
"version": "2.14.0",
|
||||
"description": "eprosima Fast DDS (formerly Fast RTPS) is a C++ implementation of the DDS (Data Distribution Service) standard of the OMG (Object Management Group). eProsima Fast DDS implements the RTPS (Real Time Publish Subscribe) protocol, which provides publisher-subscriber communications over unreliable transports such as UDP, as defined and maintained by the Object Management Group (OMG) consortium.",
|
||||
"homepage": "https://www.eprosima.com/",
|
||||
"license": "Apache-2.0",
|
||||
"supports": "!uwp",
|
||||
|
@ -2649,8 +2649,8 @@
|
||||
"port-version": 1
|
||||
},
|
||||
"fastrtps": {
|
||||
"baseline": "2.7.0",
|
||||
"port-version": 5
|
||||
"baseline": "2.14.0",
|
||||
"port-version": 0
|
||||
},
|
||||
"faudio": {
|
||||
"baseline": "24.03",
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "3ca79d1102948e72e1383c2aac8b5069932c790d",
|
||||
"version": "2.14.0",
|
||||
"port-version": 0
|
||||
},
|
||||
{
|
||||
"git-tree": "e60f3fa00c69cc283d5ba48b642abdd8464c49f8",
|
||||
"version": "2.7.0",
|
||||
|
Loading…
Reference in New Issue
Block a user