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

Various Fixes for January Rebuild on Windows #137

Merged
merged 24 commits into from
Feb 12, 2024
Merged
Show file tree
Hide file tree
Changes from 17 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
372f512
Add ros-humble-rsl.win.patch
traversaro Feb 9, 2024
dfcfc29
Create ros-humble-hardware-interface.patch
Tobias-Fischer Feb 9, 2024
a3a0165
Always run PR
Tobias-Fischer Feb 9, 2024
ca98bc9
Trigger
Tobias-Fischer Feb 9, 2024
0cfa8c4
Create ros-humble-rosbag2-storage.win.patch
Tobias-Fischer Feb 10, 2024
6ae4a89
Update ros-humble-rosbag2-storage.win.patch
Tobias-Fischer Feb 10, 2024
c8f771c
only rosbag2-storage for faster debugging
Tobias-Fischer Feb 10, 2024
01ec6cb
Update ros-humble-rosbag2-storage.win.patch
Tobias-Fischer Feb 10, 2024
05c3c5e
More pkgs
Tobias-Fischer Feb 10, 2024
a080be1
Delete patch/ros-humble-rosbag2-storage.win.patch
traversaro Feb 10, 2024
ac9b73e
Create ros-humble-yaml-cpp-vendor.patch
traversaro Feb 10, 2024
2f4baaf
Update patch for humble
Tobias-Fischer Feb 11, 2024
b0ea3c3
Create ros-humble-control-toolbox.patch
Tobias-Fischer Feb 11, 2024
c27d4d1
Debug: only joint-trajectory-controller
Tobias-Fischer Feb 11, 2024
f427af0
More pkgs
Tobias-Fischer Feb 11, 2024
28c478c
Create ros-humble-steering-controllers-library.patch
Tobias-Fischer Feb 11, 2024
c8da3b0
Update ros-humble-steering-controllers-library.patch
Tobias-Fischer Feb 11, 2024
9095eee
Update ros-humble-steering-controllers-library.patch
traversaro Feb 11, 2024
81d402a
Create ros-humble-tricycle-controller.patch
traversaro Feb 11, 2024
0ff4efb
Add visibility patches for ros2-controllers packages
traversaro Feb 11, 2024
05aaac5
Update ros-humble-steering-controllers-library.patch
traversaro Feb 12, 2024
a60e515
Add ros2_control visibility patches
traversaro Feb 12, 2024
f8daf10
fix admittance-controller patch
traversaro Feb 12, 2024
f55a4c1
Fix diff-drive-controller patch
traversaro Feb 12, 2024
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
4 changes: 1 addition & 3 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
on:
pull_request:
paths:
- '*.yaml'
pull_request

env:
ROS_VERSION: 2
Expand Down
12 changes: 12 additions & 0 deletions patch/ros-humble-control-toolbox.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7d3a2c7..4d5745c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -73,6 +73,7 @@ target_include_directories(low_pass_filter PUBLIC
$<INSTALL_INTERFACE:include/control_toolbox>
)
target_link_libraries(low_pass_filter PUBLIC low_pass_filter_parameters)
+set_target_properties(low_pass_filter PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
ament_target_dependencies(low_pass_filter PUBLIC ${CONTROL_FILTERS_INCLUDE_DEPENDS})

# Install pluginlib xml
24 changes: 24 additions & 0 deletions patch/ros-humble-hardware-interface.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
diff --git a/hardware_interface/include/hardware_interface/lexical_casts.hpp b/hardware_interface/include/hardware_interface/lexical_casts.hpp
index 846d9f757c..042361e392 100644
--- a/hardware_interface/include/hardware_interface/lexical_casts.hpp
+++ b/hardware_interface/include/hardware_interface/lexical_casts.hpp
@@ -21,6 +21,8 @@
#include <stdexcept>
#include <string>

+#include "hardware_interface/visibility_control.h"
+
namespace hardware_interface
{

@@ -29,8 +31,10 @@ namespace hardware_interface
* from
https://github.com/ros-planning/srdfdom/blob/ad17b8d25812f752c397a6011cec64aeff090c46/src/model.cpp#L53
*/
+HARDWARE_INTERFACE_PUBLIC
double stod(const std::string & s);

+HARDWARE_INTERFACE_PUBLIC
bool parse_bool(const std::string & bool_string);

} // namespace hardware_interface
26 changes: 26 additions & 0 deletions patch/ros-humble-rsl.win.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6d47b08..1b0c4f0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -30,6 +37,21 @@ target_link_libraries(rsl PUBLIC
tl_expected::tl_expected
)

+# There is no explicit export of symbols in the library either via
+# hand-written ***_export.h headers or generate_export_header CMake macro,
+# as the header-only functions in this library are quite limited in number,
+# it is perfectly ok to export all of them (as done in *nix) with the
+# WINDOWS_EXPORT_ALL_SYMBOLS property
+if(MSVC)
+ set_target_properties(rsl PROPERTIES
+ WINDOWS_EXPORT_ALL_SYMBOLS TRUE
+ )
+ # On Windows, also ensure that all .dll libraries are placed in the
+ # same build directory so they can be found by the loader (there is
+ # no rpath on Windows)
+ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}")
+endif()
+
add_subdirectory(docs)

option(RSL_BUILD_TESTING "Build tests" OFF)
24 changes: 24 additions & 0 deletions patch/ros-humble-steering-controllers-library.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
diff --git a/steering_controllers_library/include/steering_controllers_library/steering_controllers_library.hpp b/steering_controllers_library/include/steering_controllers_library/steering_controllers_library.hpp
index 095db7674b..88063ea4a2 100644
--- a/steering_controllers_library/include/steering_controllers_library/steering_controllers_library.hpp
+++ b/steering_controllers_library/include/steering_controllers_library/steering_controllers_library.hpp
@@ -16,6 +16,7 @@
#define STEERING_CONTROLLERS_LIBRARY__STEERING_CONTROLLERS_LIBRARY_HPP_

#include <chrono>
+#define _USE_MATH_DEFINES
#include <cmath>
#include <memory>
#include <queue>
diff --git a/steering_controllers_library/src/steering_odometry.cpp b/steering_controllers_library/src/steering_odometry.cpp
index 3e1b586807..dbbbf6f850 100644
--- a/steering_controllers_library/src/steering_odometry.cpp
+++ b/steering_controllers_library/src/steering_odometry.cpp
@@ -19,6 +19,7 @@

#include "steering_controllers_library/steering_odometry.hpp"

+#define _USE_MATH_DEFINES
Tobias-Fischer marked this conversation as resolved.
Show resolved Hide resolved
#include <cmath>
#include <iostream>

20 changes: 20 additions & 0 deletions patch/ros-humble-yaml-cpp-vendor.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
From 25757ddc5272ea80a099c4b8fb7c4c90708416e4 Mon Sep 17 00:00:00 2001
From: Silvio Traversaro <silvio@traversaro.it>
Date: Sat, 10 Feb 2024 16:14:21 +0100
Subject: [PATCH] Support yaml-cpp >= 0.8.0

Signed-off-by: Silvio Traversaro <silvio@traversaro.it>
---
yaml_cpp_vendor-extras.cmake.in | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/yaml_cpp_vendor-extras.cmake.in b/yaml_cpp_vendor-extras.cmake.in
index deac98c..48eb4a9 100644
--- a/yaml_cpp_vendor-extras.cmake.in
+++ b/yaml_cpp_vendor-extras.cmake.in
@@ -15,4 +15,4 @@ endif()
set(yaml_cpp_vendor_LIBRARIES ${YAML_CPP_LIBRARIES})
set(yaml_cpp_vendor_INCLUDE_DIRS ${YAML_CPP_INCLUDE_DIR})

-list(APPEND yaml_cpp_vendor_TARGETS yaml-cpp)
+list(APPEND yaml_cpp_vendor_TARGETS yaml-cpp::yaml-cpp)
1 change: 1 addition & 0 deletions vinca_win.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -63,3 +63,4 @@ packages_select_by_deps:
# - moveit

patch_dir: patch

Loading