Package symbol

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

Package symbol

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
jazzy

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

Package symbol

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
kilted

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

Package symbol

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
lyrical

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

Package symbol

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
rolling

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange

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

jrl_cmakemodules package from jrl_cmakemodules repo

jrl_cmakemodules

ROS Distro
humble

Package Summary

Version 2.1.0
License GPL-3.0
Build type CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jrl-umi3218/jrl-cmakemodules.git
VCS Type git
VCS Version master
Last Updated 2026-07-04
Dev Status DEVELOPED
Released RELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

CMake utility toolbox

Additional Links

Maintainers

  • Guilhem Saurel

Authors

  • Justin Carpentier
  • Pierre Gergondet

JRL CMake Modules

Documentation Status pre-commit.ci status Code style: black

jrl-cmakemodules provide functions to factorize and write more reliable CMake code.

It is used by teams at CNRS, LAAS/HPP, JRL and Inria, but can be integrated in any project.

v2 API

The new modules available in the v2 folder aims to modernize the current approach by providing a set of utility functions (opt-in) instead of a framework approach.

The API documentation for the v2 api is available here.

Release Tool (jrl-release)

We provide a Python version management script to automate version synchronization across your project files (such as package.xml, pyproject.toml, pixi.toml, CMakeLists.txt, CHANGELOG.md, etc.).

Installation

To install jrl-release globally using uv:

uv tool install jrl-cmakemodules-scripts --from git+https://github.com/jrl-umi3218/jrl-cmakemodules.git#subdirectory=v2/scripts

Alternatively, if you have cloned the repository locally, run this from the repo root:

uv tool install --editable v2/scripts

or with pip:

pip install -e v2/scripts

Usage

Once installed, run jrl-release from the root of your project:

# Check if version files agree
jrl-release --check-version

# Bump the patch, minor, or major version
jrl-release --bump patch
jrl-release --bump minor

# Update version to a specific string
jrl-release --update-version 1.2.3

v1 API

Please see the documentation on the wiki for more information.

You can also checkout the more complete documentation of the modules.

Supported CMake versions

We currently support CMake >= 3.22

pre-commit

This project use pre-commit and pre-commit.ci.

You can get a nice documentation directly on those 2 projects, but here is a quickstart:

# install pre-commit:
python -m pip install pre-commit

# run all hooks on all files:
pre-commit run -a

# run automatically the hooks on the added / modified files, when you try to commit:
pre-commit install

CHANGELOG

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog.

Unreleased

[2.1.0] - 2026-07-03

  • jrl_release: add --sign-tag to sign the tag by @ahoarau
  • jrl_print_banner: update banner for v2.0.0
  • jrl_target_headers: fix relative path when called from subdir
  • jrl: make sure CMAKE_<>_OUTPUT_DIRECTORY does not leak into other projects
  • README: fix install scripts doc

[2.0.0] - 2026-06-29

  • Rework everything from scratch in v2/ opt-in directory by @ahoarau
  • Added jrl-cmakemodules-script python project by @ahoarau

1.1.2 - 2025-11-07

  • Fixes for ROS:
    • Install this project exports in share
    • git-archive-all.py: explicit use of python 3

1.1.1 - 2025-11-06

  • fix permissions of installed scripts
  • ROS: document this package as architecture independent

1.1.0 - 2025-07-29

  • Don’t add a dependency added by ADD_PROJECT_DEPENDENCY macro if the dependency is not found in the generated CMake module
  • Make package-config cached variable reentrant.
  • Remove PACKAGE_EXTRA_MACROS from the INTERNAL CACHE since it’s modified by user
  • Fix support for CMake v4.1
  • add AUTO_UNINSTALL option

1.0.0 - 2025-07-09

First release

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged jrl_cmakemodules at Robotics Stack Exchange