Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro kilted showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro rolling showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro ardent showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro bouncy showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro crystal showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro eloquent showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro dashing showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro galactic showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro foxy showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro iron showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro lunar showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro jade showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro indigo showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro hydro showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro kinetic showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.6.0
License Apache-2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/selfpatch/ros2_medkit.git
VCS Type git
VCS Version main
Last Updated 2026-06-30
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Shared CMake modules for ros2_medkit packages (multi-distro compat, ccache, linting)

Maintainers

  • bburda

Authors

No additional authors.

ros2_medkit_cmake

Shared CMake modules for the ros2_medkit workspace. Provides multi-distro compatibility, build acceleration, and centralized linting configuration across all packages.

Modules

Module Description
ROS2MedkitCcache.cmake Auto-detect and configure ccache with PCH-aware sloppiness settings
ROS2MedkitLinting.cmake Centralized clang-tidy configuration (opt-in locally, mandatory in CI)
ROS2MedkitCompat.cmake Multi-distro compatibility shims for ROS 2 Humble, Jazzy, and Lyrical

ROS2MedkitCompat

Resolves dependency differences across ROS 2 distributions:

  • medkit_find_yaml_cpp() - Finds yaml-cpp (namespaced targets on Jazzy, manual fallback on Humble)
  • medkit_find_cpp_httplib() - Finds cpp-httplib >= 0.14 via pkg-config, CMake config, or vendored fallback (VENDORED_DIR param)
  • medkit_target_dependencies() - Drop-in replacement for ament_target_dependencies (removed on Lyrical)
  • medkit_detect_compat_defs() / medkit_apply_compat_defs() - Compile definitions for version-specific APIs

Usage

In your package’s CMakeLists.txt:

find_package(ros2_medkit_cmake REQUIRED)
include(ROS2MedkitCcache)
include(ROS2MedkitLinting)
include(ROS2MedkitCompat)

Add to package.xml:

<buildtool_depend>ros2_medkit_cmake</buildtool_depend>

The cmake modules are automatically available via ament’s extras hook after find_package.

License

Apache License 2.0

CHANGELOG

Changelog for package ros2_medkit_cmake

0.6.0 (2026-06-22)

  • ROS2MedkitTestDomain: carve dedicated ROS_DOMAIN_ID ranges for the new log bridge (210-214) and action-status bridge (215-219) test suites out of the integration-tests range (#422)
  • Contributors: \@mfaferek93

0.5.0 (2026-06-08)

  • ROS2MedkitWarnings.cmake module centralizes compiler warning flags across all packages, with selective -Werror (namespaced MEDKIT_ENABLE_WERROR, defaults OFF) applied only to flags safe against external headers
  • ROS2MedkitSanitizers.cmake module adds ASan/UBSan and TSan support for sanitizer CI jobs
  • ROS2MedkitTestDomain.cmake centralizes ROS_DOMAIN_ID allocation for per-test DDS isolation
  • Vendored cpp-httplib 0.14.3 as a build-farm fallback (VENDORED_DIR parameter), marked as a SYSTEM include to suppress third-party warnings
  • medkit_find_cpp_httplib caps cpp-httplib at < 0.20 across both the pkg-config and find_package(httplib) tiers, so distros shipping 0.20+ (Ubuntu 26.04 ships 0.26, which dropped the multipart Request::has_file API the gateway uses) fall through to the vendored 0.14.3 header instead of failing the build; ROS2MedkitCompat.cmake extended to cover ROS 2 Lyrical / Ubuntu 26.04 Resolute (rclcpp 32, yaml_cpp_vendor target export, ament_target_dependencies removal in ament_cmake 2.8.5+), which replaces Rolling in CI (#405)
  • Contributors: \@bburda, \@mfaferek93

0.4.0 (2026-03-20)

  • Initial release - shared cmake modules extracted from gateway package (#294)
  • ROS2MedkitCcache.cmake - auto-detect ccache for faster incremental rebuilds
  • ROS2MedkitLinting.cmake - centralized clang-tidy configuration (opt-in locally, mandatory in CI)
  • ROS2MedkitCompat.cmake - multi-distro compatibility shims for ROS 2 Humble/Jazzy/Rolling
  • Contributors: \@bburda

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ros2_medkit_cmake at Robotics Stack Exchange