ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
CMake itself does support specifying versions of packages (see cmake.html#find_package), but only if the FindX.cmake
script implements it. AFAIK many of the find scripts provided with the binary CMake distribution do.
Catkin does not seem to expose this in its catkin_package(..)
macro AFAICT. Normal invocations of find_package(..)
in your CMakeLists.txt
could make use of the described version
argument.
As for detecting support for features vs relying on version numbers: that approach would seem superiour, and is the one that's been advocated by the javascript / browser-based application developer community for a long time now. Plain CMake may be able to help you with this, see cmake.html#CheckFunctionExists.
2 | No.2 Revision |
CMake itself does support specifying versions of packages (see cmake.html#find_package), but only if the FindX.cmake
script implements it. AFAIK many of the find scripts provided with the binary CMake distribution do.
Catkin does not seem to (currently) expose this in its catkin_package(..)
macro AFAICT. AFAICT (see groovy-devel/cmake/catkin_package.cmake). Normal invocations of find_package(..)
in your CMakeLists.txt
could make use of the described version
argument.
As for detecting support for features vs relying on version numbers: that approach would seem superiour, and is the one that's been advocated by the javascript / browser-based application developer community for a long time now. Plain CMake may be able to help you with this, see cmake.html#CheckFunctionExists.
3 | No.3 Revision |
CMake itself does support specifying versions of packages (see cmake.html#find_package), but only if the FindX.cmake
script implements it. AFAIK many of the find scripts provided with the binary CMake distribution do.
I may be wrong, but Catkin does not seem to (currently) expose this in its catkin_package(..)
macro AFAICT (see groovy-devel/cmake/catkin_package.cmake). Normal invocations of There is some version checking going on in groovy-devel/cmake/catkin_package.cmake find_package(..)
in your around line 188, but I can't tell from the CMakeLists.txt
could make use of described source how that should work.version
argument.
As for detecting support for features vs relying on version numbers: that approach would seem superiour, and is the one that's been advocated by the javascript / browser-based application developer community for a long time now. Plain CMake may be able to help you with this, see cmake.html#CheckFunctionExists.
4 | No.4 Revision |
CMake itself does support specifying versions of packages (see cmake.html#find_package), but only if the FindX.cmake
script implements it. AFAIK many of the find scripts provided with the binary CMake distribution do.
I may be wrong, but Catkin does not seem to (currently) expose this in its catkin_package(..)
macro AFAICT (see groovy-devel/cmake/catkin_package.cmake). There is some version checking going on in groovy-devel/cmake/catkin_package.cmake around line 188, but I can't tell from the source how that should work.
As for detecting support for features vs relying on version numbers: that approach would seem superiour, and is the one that's been advocated by the javascript / browser-based application developer community for a long time now. Plain CMake may be able to help you with this, see cmake.html#CheckFunctionExists.
Edit: according to REP-127, it is possible to specificy versioned dependencies (from the example in that REP):
<build_depend version_gte="1.1" version_lt="2.0">genmsg</build_depend>
I assume this information is then passed to the version checking in groovy-devel/cmake/catkin_package.cmake.
5 | No.5 Revision |
CMake itself does support specifying versions of packages (see cmake.html#find_package), but only if the FindX.cmake
script implements it. AFAIK many of the find scripts provided with the binary CMake distribution do.
I may be wrong, but Catkin does not seem to (currently) expose this in its catkin_package(..)
macro AFAICT (see groovy-devel/cmake/catkin_package.cmake). There is some version checking going on in groovy-devel/cmake/catkin_package.cmake around line 188, but I can't tell from the source how that should work. See edit.
As for detecting support for features vs relying on version numbers: that approach would seem superiour, and is the one that's been advocated by the javascript / browser-based application developer community for a long time now. Plain CMake may be able to help you with this, see cmake.html#CheckFunctionExists.
Edit: according to REP-127, it is possible to specificy versioned dependencies (from the example in that REP):
<build_depend version_gte="1.1" version_lt="2.0">genmsg</build_depend>
I assume this information is then passed to the version checking in groovy-devel/cmake/catkin_package.cmake.