From 30d5e698b8e0bcfc3e871d1deff4f44b5bd4621c Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Sat, 28 Jan 2017 10:41:13 +0100 Subject: [PATCH 1/3] eigen-stl-containers: depend on libeigen Without the dependency on libeigen, `bitbake eigen-stl-containers` can possibly fail with: ``` | CMake Error at CMakeLists.txt:8 (find_package): | By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH this project has | asked CMake to find a package configuration file provided by "Eigen3", but | CMake did not find one. | | Could not find a package configuration file provided by "Eigen3" with any | of the following names: | | Eigen3Config.cmake | eigen3-config.cmake | | Add the installation prefix of "Eigen3" to CMAKE_PREFIX_PATH or set | "Eigen3_DIR" to a directory containing one of the above files. If "Eigen3" | provides a separate development package or SDK, be sure it has been | installed. | | | -- Configuring incomplete, errors occurred! ``` The failure only occurs if libeigen has not been installed before eigen-stl-containers is configured. Hence, the regular regression testing with `bitbake core-image-ros-world`, which builds many packages in parallel, did not uncover this because libeigen was usually installed before eigen-stl-containers was configured. However, the issue is clearly reproducible with `bitbake eigen-stl-containers libeigen -c cleanall && bitbake eigen-stl-containers` The missing dependency was probably overlooked in the creation of the eigen-stl-containers recipe, i.e., in commit a255e67c9e5eac62c537ace6d76c885d5b0ae11b. Signed-off-by: Lukas Bulwahn --- recipes-ros/eigen-stl-containers/eigen-stl-containers_0.1.6.bb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes-ros/eigen-stl-containers/eigen-stl-containers_0.1.6.bb b/recipes-ros/eigen-stl-containers/eigen-stl-containers_0.1.6.bb index a388d6a..33e4df1 100644 --- a/recipes-ros/eigen-stl-containers/eigen-stl-containers_0.1.6.bb +++ b/recipes-ros/eigen-stl-containers/eigen-stl-containers_0.1.6.bb @@ -3,6 +3,8 @@ SECTION = "devel" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://package.xml;beginline=9;endline=9;md5=d566ef916e9dedc494f5f793a6690ba5" +DEPENDS = "libeigen" + SRC_URI = "https://github.com/ros/${ROS_SPN}/archive/${PV}.tar.gz;downloadfilename=${ROS_SP}.tar.gz" SRC_URI[md5sum] = "fcc3fdda4010f92aa68f926cd3b8bdd0" SRC_URI[sha256sum] = "24d614921c4ec97f1d5c7905f5e896f1665b2e796c547b4a21504176b4680e47" From a14c2138f63bc31b0fed77c41ea57fcc6c475460 Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Sat, 28 Jan 2017 10:57:36 +0100 Subject: [PATCH 2/3] eigen-conversions: also depend on cmake-modules 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 --- recipes-ros/geometry/eigen-conversions_1.11.8.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-ros/geometry/eigen-conversions_1.11.8.bb b/recipes-ros/geometry/eigen-conversions_1.11.8.bb index a85c736..04558f0 100644 --- a/recipes-ros/geometry/eigen-conversions_1.11.8.bb +++ b/recipes-ros/geometry/eigen-conversions_1.11.8.bb @@ -3,6 +3,6 @@ SECTION = "devel" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://package.xml;beginline=15;endline=15;md5=d566ef916e9dedc494f5f793a6690ba5" -DEPENDS = "geometry-msgs libeigen orocos-kdl std-msgs" +DEPENDS = "cmake-modules geometry-msgs libeigen orocos-kdl std-msgs" require geometry.inc From e98c5a50532b29cde40bc9978c2789b55c8d6a0f Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Sat, 28 Jan 2017 13:03:43 +0100 Subject: [PATCH 3/3] pcl-conversions: also depend on cmake-modules Without the dependency on cmake-modules, `bitbake pcl-conversions` can possibly fail with: ``` | CMake Error at /home/lukas/dev/openembedded.org/openembedded-core/build/tmp-glibc/sysroots/x86_64-linux/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:4 (find_package) | | | -- Configuring incomplete, errors occurred! ``` The failure only occurs if cmake-modules has not been installed before pcl-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 cmake-modules was usually installed before pcl-conversions was configured. However, the issue is clearly reproducable with `bitbake pcl-conversions cmake-modules -c cleanall && bitbake pcl-conversions` The missing dependency was probably introduced by the automatic recipe updates without checking for new dependencies. Signed-off-by: Lukas Bulwahn --- recipes-ros/pcl-conversions/pcl-conversions_0.2.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-ros/pcl-conversions/pcl-conversions_0.2.1.bb b/recipes-ros/pcl-conversions/pcl-conversions_0.2.1.bb index 98852c8..1ff0b2a 100644 --- a/recipes-ros/pcl-conversions/pcl-conversions_0.2.1.bb +++ b/recipes-ros/pcl-conversions/pcl-conversions_0.2.1.bb @@ -3,7 +3,7 @@ SECTION = "devel" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://package.xml;beginline=11;endline=11;md5=d566ef916e9dedc494f5f793a6690ba5" -DEPENDS = "pcl-msgs pcl roscpp" +DEPENDS = "cmake-modules pcl-msgs pcl roscpp" SRC_URI = "https://github.com/ros-perception/${ROS_SPN}/archive/${PV}.tar.gz;downloadfilename=${ROS_SP}.tar.gz" SRC_URI[md5sum] = "670605fa95f008ecc4c420cb9e53df44"