Deprecated signals library was dropped in 1.69.0 release:
https://www.boost.org/users/history/version_1_69_0.html
Signals (v1) is now removed. Its removal was announced in 1.68 and its
deprecation was announced in 1.54. Boost 1.68 is the last release that
provides this library. Users are encouraged to use Signals2 instead. The
Boost community thanks Douglas Gregor for his work on Signals which
served its users well and which also inspired Signals2.
Ros code already uses signals2 library but it still has links to the
older library in its CMake files. This commit removes those references
as they are now useless and more importantly source of error at
configure time.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
In the tf recipe, this commit adjusts the license-file line and
drops the upstream-accepted patch due to update.
With the update of eigen-conversions and tf-conversions,
the compilation of both packages fails with:
```
| [...]: fatal error: Eigen/Core: No such file or directory
| #include <Eigen/Core>
| ^~~~~~~~~~~~
| compilation terminated.
```
It fails as the upstream development uses the Eigen3 CMake
find script instead of the ROS cmake_modules find script,
and the Eigen3 CMake find script does not work in the current
openembedded-core and meta-openembedded setup (cf. #501).
Hence, this commit applies a patch to revert the CMakeLists.txt
to use ROS cmake_modules to find Eigen. This patch must be applied
until issue #501 is resolved in the upstream development.
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
By default meta-ros uses python2. In case you want to get
python3-compatible builds add the following line to your local.conf:
ROS_USE_PYTHON3 = "yes"
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Without the dependency on cmake-modules, `bitbake eigen-conversions`
can possibly fail with:
```
| CMake Error at /home/lukas/dev/openembedded.org/openembedded-core/build/tmp-glibc/work/i586-oe-linux/eigen-conversions/1.11.8-r0/recipe-sysroot-native/opt/ros/indigo/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
| Could not find a package configuration file provided by "cmake_modules"
| with any of the following names:
|
| cmake_modulesConfig.cmake
| cmake_modules-config.cmake
|
| Add the installation prefix of "cmake_modules" to CMAKE_PREFIX_PATH or set
| "cmake_modules_DIR" to a directory containing one of the above files. If
| "cmake_modules" provides a separate development package or SDK, be sure it
| has been installed.
| Call Stack (most recent call first):
| CMakeLists.txt:5 (find_package)
|
|
| -- Configuring incomplete, errors occurred!
```
The failure only occurs if cmake-modules has not been installed
before eigen-conversions is configured. Hence, the regular
regression testing with `bitbake core-image-ros-world`, which
builds many packages in parallel, did not uncover this because
make-modules was usually installed before eigen-conversions was
configured.
However, the issue is clearly reproducible with
`bitbake eigen-conversions cmake-modules -c cleanall && bitbake eigen-conversions`
The missing dependency was probably introduced by the automatic
recipe updates without checking for new dependencies.
Signed-off-by: Lukas Bulwahn <lukas.bulwahn@gmail.com>
When CATKIN_ENABLE_TESTING is deactivated, the ROS packages do not
require the rostest package.
This commit includes a number of patches to be submitted in the
upstream repositories and removes the rostest dependencies from
the recipes.