`ros-humble-ament-cmake 1.3.2` not compatible with `cmake > 3.24`
Issue
Fresh installs on Linux are pulling in cmake 3.24.1 from conda-forge which seems to be triggering the issue described in
https://github.com/ament/ament_cmake/issues/396
and fixed in
https://github.com/ament/ament_cmake/pull/395
Symptom
Building certain packages can result in workspace build failures with errors like
--- stderr: ur_controllers
CMake Error at /home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/ament_cmake_export_targets-extras.cmake:18 (message):
Failed to find exported target names in
'/home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/export_ur_dashboard_msgs__rosidl_generator_cExport.cmake'
Call Stack (most recent call first):
/home/<user>/ros/humble_ws/install/share/ur_dashboard_msgs/cmake/ur_dashboard_msgsConfig.cmake:41 (include)
CMakeLists.txt:19 (find_package)
---
Possible Resolutions
Seems like there's a 1.5.0 release, but it's still too old to pull this in and it would still need a patch.
I think it's possible that this is enough:
https://patch-diff.githubusercontent.com/raw/ament/ament_cmake/pull/395.patch
I still don't quite grok how to properly make my own PR for patching packages but if I make enough progress on the tasks I'm unblocking re: this issue I will look into it again.
Downgrading to cmake 3.23.3 is a workaround.
We already have the patch in place: https://github.com/RoboStack/ros-humble/blob/main/patch/ros-humble-ament-cmake-export-targets.patch
But it seems like we need to actually re-build ament-cmake-export-targets.
Fixed with the new builds :).