diff --git a/classes/catkin.bbclass b/classes/catkin.bbclass index 9fa086e..d0bb606 100644 --- a/classes/catkin.bbclass +++ b/classes/catkin.bbclass @@ -6,17 +6,29 @@ ROS_USE_PYTHON3 ??= "no" inherit cmake ${@'distutils3-base' if bb.utils.to_boolean(d.getVar('ROS_USE_PYTHON3', True)) else 'distutils-base'} ros faulty-solibs -DEPENDS_prepend = "${@'' if (d.getVar('BPN', True) == 'catkin') or (d.getVar('BPN', True) == 'catkin-runtime') else 'catkin-native '}" +# Prepend build dependency on "catkin-runtime" and "catkin-native" +# if the package is not "catkin" or "catkin-runtime" +DEPENDS =+ "${@'' if d.getVar('BPN', True) in ('catkin', 'catkin-runtime') else 'catkin-runtime catkin-native'}" + +# Prepend run dependency on "catkin-runtime" for base packages +# if the package is not "catkin" or "catkin-runtime" +RDEPENDS_${PN} =+ "${@'' if d.getVar('BPN', True) in ('catkin', 'catkin-runtime') else 'catkin-runtime'}" + +# Prepend run dependency on "catkin" for dev packages +# if the package is not "catkin" or "catkin-runtime" +RDEPENDS_${PN}-dev =+ "${@'' if d.getVar('BPN', True) in ('catkin', 'catkin-runtime') else 'catkin'}" EXTRA_OECMAKE_CATKIN = "\ -DCMAKE_PREFIX_PATH='${STAGING_DIR_HOST}${ros_prefix};${STAGING_DIR_HOST}${prefix};${STAGING_DIR_NATIVE}${ros_prefix};${STAGING_DIR_NATIVE}${prefix}' \ -DCMAKE_INSTALL_PREFIX:PATH='${ros_prefix}' \ + -DCATKIN_DEVEL_PREFIX='${WORKDIR}/devel' \ " EXTRA_OECMAKE_CATKIN_class-native = "\ - -DCMAKE_PREFIX_PATH='${ros_prefix}' \ + -DCMAKE_PREFIX_PATH='${STAGING_DIR_NATIVE}${ros_prefix}' \ -DCMAKE_INSTALL_PREFIX:PATH='${ros_prefix}' \ -DRT_LIBRARY=${libdir_native} \ + -DCATKIN_DEVEL_PREFIX='${WORKDIR}/devel' \ " EXTRA_OECMAKE_prepend = "\ diff --git a/recipes-core/images/ros-sdk-test.bb b/recipes-core/images/ros-sdk-test.bb new file mode 100644 index 0000000..72a4762 --- /dev/null +++ b/recipes-core/images/ros-sdk-test.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "Image for testing meta-ros' SDK feature" + +IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL}" + +inherit core-image + +IMAGE_ROOTFS_SIZE = "8192" + +IMAGE_INSTALL += "sshd roslaunch rostopic roscpp-dev std-msgs-dev" + +TOOLCHAIN_HOST_TASK += "nativesdk-cmake nativesdk-catkin" diff --git a/recipes-devtools/cmake/cmake_%.bbappend b/recipes-devtools/cmake/cmake_%.bbappend new file mode 100644 index 0000000..f39be49 --- /dev/null +++ b/recipes-devtools/cmake/cmake_%.bbappend @@ -0,0 +1 @@ +FILES_${PN}-dev_class-nativesdk = "" diff --git a/recipes-devtools/python/python-catkin-pkg.inc b/recipes-devtools/python/python-catkin-pkg.inc index 72ea002..206185d 100644 --- a/recipes-devtools/python/python-catkin-pkg.inc +++ b/recipes-devtools/python/python-catkin-pkg.inc @@ -9,4 +9,7 @@ SRC_URI[sha256sum] = "d4d069eaeb29d6a9ee71773b20c41515b6e0feb9ea2765ebaf3e599d0c inherit pypi -BBCLASSEXTEND = "native" +RDEPENDS_${PN} = "${PYTHON_PN}-unixadmin" +RDEPENDS_${PN}_class-native = "" + +BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-devtools/python/python-empy.inc b/recipes-devtools/python/python-empy.inc index 3a94a95..97bb8e1 100644 --- a/recipes-devtools/python/python-empy.inc +++ b/recipes-devtools/python/python-empy.inc @@ -10,4 +10,4 @@ SRC_URI[sha256sum] = "99f016af2770c48ab57a65df7aae251360dc69a1514c15851458a71d4d S = "${WORKDIR}/${SRCNAME}-${PV}" -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" diff --git a/recipes-extended/kdl/orocos-kdl_1.3.0.bb b/recipes-extended/kdl/orocos-kdl_1.3.0.bb index 5051c08..dba512d 100644 --- a/recipes-extended/kdl/orocos-kdl_1.3.0.bb +++ b/recipes-extended/kdl/orocos-kdl_1.3.0.bb @@ -11,6 +11,10 @@ do_install_append() { # remove sysroot library path from pkgconfig files sed -i -e 's#${STAGING_INCDIR}#${includedir}#g' \ ${D}${libdir}/pkgconfig/*.pc + + # remove sysroot library path from cmake config files + sed -i -e 's#${STAGING_DIR_TARGET}##g' \ + ${D}${datadir}/orocos_kdl/*.cmake } FILES_${PN}-dev += "${datadir}/orocos_kdl/*" diff --git a/recipes-extended/sophus/sophus_0.9.1.bb b/recipes-extended/sophus/sophus_0.9.1.bb index ef5e50b..906ecf6 100644 --- a/recipes-extended/sophus/sophus_0.9.1.bb +++ b/recipes-extended/sophus/sophus_0.9.1.bb @@ -15,3 +15,9 @@ inherit cmake # CXXFLAGS are needed to compile eigen 3.3.1 headers properly CXXFLAGS += "-Wno-deprecated-declarations -Wno-misleading-indentation -Wno-int-in-bool-context -Wno-ignored-attributes" + +do_install_append() { + # remove sysroot library path from cmake config files + sed -i -e 's#${STAGING_DIR_TARGET}##g' \ + ${D}${datadir}/sophus/*.cmake +} diff --git a/recipes-ros/catkin/catkin-runtime_0.6.19.bb b/recipes-ros/catkin/catkin-runtime_0.6.19.bb index 2f5256c..aea433d 100644 --- a/recipes-ros/catkin/catkin-runtime_0.6.19.bb +++ b/recipes-ros/catkin/catkin-runtime_0.6.19.bb @@ -11,13 +11,14 @@ S = "${WORKDIR}/catkin-${PV}" # This package includes ONLY the python packages AND catkin_find # The catkin_${PV} package includes all other files # from the catkin tool. -FILES_${PN} = "${PYTHON_SITEPACKAGES_DIR} ${ros_bindir}/catkin_find" +FILES_${PN} = "${PYTHON_SITEPACKAGES_DIR} ${ros_bindir}/catkin_find ${ros_prefix}/.catkin" +FILES_${PN}-dev = "" RDEPENDS_${PN}_class-native = "" RDEPENDS_${PN} = "\ ${PYTHON_PN}-catkin-pkg ${PYTHON_PN}-misc ${PYTHON_PN}-multiprocessing \ ${PYTHON_PN}-shell ${PYTHON_PN}-xml ${PYTHON_PN}-pkgutil \ - ${@'python-argparse python-subprocess' if d.getVar('PYTHON_PN', True) == 'python2' else ''}" + ${@'python-argparse python-subprocess' if d.getVar('PYTHON_PN', True) == 'python' else ''}" # Delete everything but the python packages in order to avoid # that the QA error [installed-vs-shipped] hits on us. @@ -26,6 +27,27 @@ do_install_append() { rm ${D}${ros_bindir}/catkin_make rm -rf ${D}${ros_datadir} rm -rf ${D}${ros_libdir}/pkgconfig + + # Manually add the marker file + touch ${D}${ros_prefix}/.catkin } -BBCLASSEXTEND += "native" +# Append environment hook for SDK +do_install_append_class-nativesdk() { + mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d + + script=${D}${SDKPATHNATIVE}/environment-setup.d/catkin-runtime.sh + echo "export ROSDISTRO=${ROSDISTRO}" >> $script + echo "export PATH=\$PATH:\${OECORE_NATIVE_SYSROOT}/opt/ros/\${ROSDISTRO}/bin" >> $script + echo "export PYTHONPATH=\${OECORE_NATIVE_SYSROOT}/opt/ros/\${ROSDISTRO}/lib/python2.7/site-packages" >> $script + echo "export ROS_ROOT=\${OECORE_TARGET_SYSROOT}/opt/ros/\${ROSDISTRO}/share/ros" >> $script + echo "export CMAKE_PREFIX_PATH=\${OECORE_TARGET_SYSROOT}/opt/ros/\${ROSDISTRO}:\${OECORE_NATIVE_SYSROOT}/opt/ros/${ROSDISTRO}" >> $script +} + +FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}" + +catkin_sysroot_preprocess_append() { + install -m 644 -t ${SYSROOT_DESTDIR}${ros_prefix} ${D}${ros_prefix}/.catkin +} + +BBCLASSEXTEND += "native nativesdk" diff --git a/recipes-ros/catkin/catkin.inc b/recipes-ros/catkin/catkin.inc index 157c931..1039be1 100644 --- a/recipes-ros/catkin/catkin.inc +++ b/recipes-ros/catkin/catkin.inc @@ -10,23 +10,9 @@ SRC_URI[md5sum] = "d58460cc9112812d8c4e6ecf98bbcc85" SRC_URI[sha256sum] = "90a639d67db7f9039487af555e432a5b4b6e339f22892d75d03b823b3f38c947" SRC_URI += "\ - file://0001-CATKIN_WORKSPACES-Don-t-require-.catkin-file.patch \ file://0001-use-python-provided-by-environment-instead-of-the-ge.patch \ - file://0001-avoid-using-host-s-paths-when-cross-compiling.patch \ - file://0001-relocate-dependency-s-headers-to-current-sysroot.patch \ + file://0001-allow-proper-cross-compilation-with-catkin.patch \ ${@'file://0001-python.cmake-look-for-python3-first.patch' if d.getVar('PYTHON_PN', True) == 'python3' else ''} \ " inherit catkin - -FILES_${PN}-dev += "\ - ${ros_datadir}/eigen/cmake \ - ${ros_datadir}/ros/cmake \ - ${ros_datadir}/.catkin \ - ${ros_prefix}/.catkin \ - ${ros_prefix}/.rosinstall \ - ${ros_prefix}/_setup_util.py \ - ${ros_prefix}/env.sh \ - ${ros_prefix}/setup.* \ - " - diff --git a/recipes-ros/catkin/catkin_0.6.19.bb b/recipes-ros/catkin/catkin_0.6.19.bb index c74f998..e4a4ba2 100644 --- a/recipes-ros/catkin/catkin_0.6.19.bb +++ b/recipes-ros/catkin/catkin_0.6.19.bb @@ -1,20 +1,40 @@ require catkin.inc -DEPENDS_class-native += "catkin-runtime" +SRC_URI += "file://environment.d-catkin.sh" -RDEPENDS_${PN}_class-native = "${PYTHON_PN}-catkin-pkg" -RDEPENDS_${PN} = "cmake make binutils binutils-symlinks gcc gcc-symlinks g++ g++-symlinks \ - catkin-runtime" +DEPENDS_class-native += "catkin-runtime" # The files in ${PYTHON_SITEPACKAGES_DIR} and catkin_find are # installed by the catkin-runtime package. Therefore, we remove # them here so that they are not installed. # Moreover: the ${ros_libdir}/python2.7 is empty. We need to # remove it, otherwise the QA error [installed-vs-shipped] will hit on us. +FILES_${PN} = "\ + ${ros_bindir}/catkin_*_* \ + ${ros_bindir}/catkin_make \ + ${ros_libdir}/pkgconfig \ + ${ros_datadir} \ + ${ros_sysconfdir} \ + ${ros_stackdir} \ + " +FILES_${PN}-dev = "" + +RDEPENDS_${PN}_class-native = "${PYTHON_PN}-catkin-pkg" +RDEPENDS_${PN} = "cmake make binutils binutils-symlinks gcc gcc-symlinks g++ g++-symlinks \ + catkin-runtime ${PYTHON_PN}-empy" + do_install_append() { rm ${D}${ros_bindir}/catkin_find rm -rf ${D}${PYTHON_SITEPACKAGES_DIR} rmdir ${D}${ros_libdir}/${PYTHON_DIR} } -BBCLASSEXTEND += "native" +# Append environment hook for SDK +do_install_append_class-nativesdk() { + mkdir -p ${D}${SDKPATHNATIVE}/environment-setup.d + install -m 644 ${WORKDIR}/environment.d-catkin.sh ${D}${SDKPATHNATIVE}/environment-setup.d/catkin.sh +} + +FILES_${PN}_append_class-nativesdk = " ${SDKPATHNATIVE}" + +BBCLASSEXTEND += "native nativesdk" diff --git a/recipes-ros/catkin/files/0001-CATKIN_WORKSPACES-Don-t-require-.catkin-file.patch b/recipes-ros/catkin/files/0001-CATKIN_WORKSPACES-Don-t-require-.catkin-file.patch deleted file mode 100644 index 07d7127..0000000 --- a/recipes-ros/catkin/files/0001-CATKIN_WORKSPACES-Don-t-require-.catkin-file.patch +++ /dev/null @@ -1,56 +0,0 @@ -From a34e7d9d7f77c123cb8cbf464ead628f97e42fd4 Mon Sep 17 00:00:00 2001 -From: Stefan Herbrechtsmeier -Date: Wed, 13 Mar 2013 11:49:17 +0100 -Subject: [PATCH] CATKIN_WORKSPACES: Don't require .catkin file - -Upstream-Status: Inappropriate [only for our setup] - -Signed-off-by: Stefan Herbrechtsmeier ---- - cmake/all.cmake | 8 +++----- - cmake/list_insert_in_workspace_order.cmake | 9 ++++----- - 2 files changed, 7 insertions(+), 10 deletions(-) - -diff --git a/cmake/all.cmake b/cmake/all.cmake -index 83da965..a5f9df9 100644 ---- a/cmake/all.cmake -+++ b/cmake/all.cmake -@@ -44,11 +44,9 @@ set(CMAKE_PREFIX_PATH_AS_IS ${CMAKE_PREFIX_PATH}) - # list of unique catkin workspaces based on CMAKE_PREFIX_PATH - set(CATKIN_WORKSPACES "") - foreach(path ${CMAKE_PREFIX_PATH}) -- if(EXISTS "${path}/.catkin") -- list(FIND CATKIN_WORKSPACES ${path} _index) -- if(_index EQUAL -1) -- list(APPEND CATKIN_WORKSPACES ${path}) -- endif() -+ list(FIND CATKIN_WORKSPACES ${path} _index) -+ if(_index EQUAL -1) -+ list(APPEND CATKIN_WORKSPACES ${path}) - endif() - endforeach() - if(CATKIN_WORKSPACES) -diff --git a/cmake/list_insert_in_workspace_order.cmake b/cmake/list_insert_in_workspace_order.cmake -index 57ade4a..46887af 100644 ---- a/cmake/list_insert_in_workspace_order.cmake -+++ b/cmake/list_insert_in_workspace_order.cmake -@@ -4,12 +4,11 @@ - set(CATKIN_ORDERED_SPACES "") - foreach(_space ${CATKIN_DEVEL_PREFIX} ${CATKIN_WORKSPACES}) - list(APPEND CATKIN_ORDERED_SPACES ${_space}) -- if(NOT EXISTS "${_space}/.catkin") -- message(FATAL_ERROR "The path '${_space}' is in CATKIN_WORKSPACES but does not have a .catkin file") -+ if(EXISTS "${_space}/.catkin") -+ # prepend to existing list of sourcespaces -+ file(READ "${_space}/.catkin" _sourcespaces) -+ list(APPEND CATKIN_ORDERED_SPACES ${_sourcespaces}) - endif() -- # prepend to existing list of sourcespaces -- file(READ "${_space}/.catkin" _sourcespaces) -- list(APPEND CATKIN_ORDERED_SPACES ${_sourcespaces}) - endforeach() - - debug_message(10 "CATKIN_ORDERED_SPACES ${CATKIN_ORDERED_SPACES}") --- -1.7.0.4 - diff --git a/recipes-ros/catkin/files/0001-allow-proper-cross-compilation-with-catkin.patch b/recipes-ros/catkin/files/0001-allow-proper-cross-compilation-with-catkin.patch new file mode 100644 index 0000000..0309579 --- /dev/null +++ b/recipes-ros/catkin/files/0001-allow-proper-cross-compilation-with-catkin.patch @@ -0,0 +1,175 @@ +From e6179255b99264a51f8733f52d92ca579fbacb61 Mon Sep 17 00:00:00 2001 +From: Lukas Bulwahn +Date: Sun, 15 Apr 2018 02:11:42 +0200 +Subject: [PATCH] allow proper cross-compilation with catkin + +The original patch is: + +From: Dominique Hunziker +Date: Fri, 2 Jun 2017 12:12:33 +0200 + +I just re-applied it to the current version 0.6.19 and adjusted +the context of the patch as reaction to bitbake warning: + +WARNING: catkin-runtime-0.6.19-r0 do_patch: +Some of the context lines in patches were ignored. This can lead to incorrectly applied patches. + +Upstream-Status: Pending + +Signed-off-by: Lukas Bulwahn +--- + cmake/all.cmake | 1 + + cmake/catkin_package.cmake | 8 ++++++++ + cmake/catkin_strip_root_path.cmake | 32 +++++++++++++++++++++++++++++ + cmake/templates/pkgConfig.cmake.in | 42 ++++++++++++++++++++++++++++++++++---- + 4 files changed, 79 insertions(+), 4 deletions(-) + create mode 100644 cmake/catkin_strip_root_path.cmake + +diff --git a/cmake/all.cmake b/cmake/all.cmake +index 6910906..e421b76 100644 +--- a/cmake/all.cmake ++++ b/cmake/all.cmake +@@ -118,6 +118,7 @@ foreach(filename + catkin_metapackage + catkin_package + catkin_package_xml ++ catkin_strip_root_path + catkin_workspace + debug_message + em_expand +diff --git a/cmake/catkin_package.cmake b/cmake/catkin_package.cmake +index 8ef6c48..d6bc68f 100644 +--- a/cmake/catkin_package.cmake ++++ b/cmake/catkin_package.cmake +@@ -432,6 +432,14 @@ function(_catkin_package) + # package cmake dir is the folder where the generated pkgConfig.cmake is located + set(PKG_CMAKE_DIR "\${${PROJECT_NAME}_DIR}") + ++ if(CMAKE_CROSSCOMPILING) ++ catkin_strip_root_path(PROJECT_CMAKE_CONFIG_INCLUDE_DIRS UNIQUE) ++ catkin_strip_root_path(PROJECT_PKG_CONFIG_INCLUDE_DIRS UNIQUE) ++ catkin_strip_root_path(PKG_CONFIG_LIBRARIES) ++ catkin_strip_root_path(PKG_CONFIG_LIBRARIES_WITH_PREFIX) ++ catkin_strip_root_path(PKG_CONFIG_LIB_PATHS UNIQUE) ++ endif() ++ + if(NOT PROJECT_SKIP_PKG_CONFIG_GENERATION) + # ensure that output folder exists + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/catkin_generated/installspace) +diff --git a/cmake/catkin_strip_root_path.cmake b/cmake/catkin_strip_root_path.cmake +new file mode 100644 +index 0000000..ca5c453 +--- /dev/null ++++ b/cmake/catkin_strip_root_path.cmake +@@ -0,0 +1,32 @@ ++# ++# Strip CMAKE_FIND_ROOT_PATH prefixes from each path in the list ``var``. ++# ++# .. note:: Used for cross-compilation. ++# ++# :param var: the input / output variable name ++# :type var: string ++# :param UNIQUE: if specified the stripped list will contain unique paths, i.e., ++# duplicate paths are not appended a second time ++# :type UNIQUE: option ++# ++function(catkin_strip_root_path var) ++ cmake_parse_arguments(ARG "UNIQUE" "" "" ${ARGN}) ++ set(output) ++ foreach(element ${${var}}) ++ if(IS_ABSOLUTE ${element}) ++ foreach(root_path ${CMAKE_FIND_ROOT_PATH}) ++ if(element MATCHES "^${root_path}/") ++ string(LENGTH ${root_path} root_path_length) ++ string(SUBSTRING ${element} ${root_path_length} -1 element) ++ break() ++ endif() ++ endforeach() ++ endif() ++ if(ARG_UNIQUE) ++ list_append_unique(output ${element}) ++ else() ++ list(APPEND output ${element}) ++ endif() ++ endforeach() ++ set(${var} ${output} PARENT_SCOPE) ++endfunction() +diff --git a/cmake/templates/pkgConfig.cmake.in b/cmake/templates/pkgConfig.cmake.in +index d99b811..3af5c71 100644 +--- a/cmake/templates/pkgConfig.cmake.in ++++ b/cmake/templates/pkgConfig.cmake.in +@@ -78,6 +78,15 @@ else() + set(@PROJECT_NAME@_PREFIX ${@PROJECT_NAME@_INSTALL_PREFIX}) + endif() + ++if(CMAKE_CROSSCOMPILING) ++ if("@DEVELSPACE@" STREQUAL "TRUE") ++ # can not disable host filesystem altogether; otherwise files in src/devel are no longer found ++ set(_find_root_path_both CMAKE_FIND_ROOT_PATH_BOTH) ++ else() ++ set(_find_root_path_both) ++ endif() ++endif() ++ + # warn when using a deprecated package + if(NOT "@PROJECT_DEPRECATED@" STREQUAL "") + set(_msg "WARNING: package '@PROJECT_NAME@' is deprecated") +@@ -95,7 +104,19 @@ if(NOT "@PROJECT_CMAKE_CONFIG_INCLUDE_DIRS@ " STREQUAL " ") + set(@PROJECT_NAME@_INCLUDE_DIRS "") + set(_include_dirs "@PROJECT_CMAKE_CONFIG_INCLUDE_DIRS@") + foreach(idir ${_include_dirs}) +- if(IS_ABSOLUTE ${idir} AND IS_DIRECTORY ${idir}) ++ if(IS_ABSOLUTE ${idir} AND CMAKE_CROSSCOMPILING) ++ get_filename_component(idir_path ${idir} DIRECTORY) ++ get_filename_component(idir_name ${idir} NAME) ++ set(include_dir_path "include_dir_path-NOTFOUND") ++ # use find_path to locate absolute path nested under potential root path ++ find_path(include_dir_path ${idir_name} ++ PATHS ${idir_path} ++ NO_DEFAULT_PATH ${_find_root_path_both}) ++ if(NOT include_dir_path) ++ message(FATAL_ERROR "Project '@PROJECT_NAME@' specifies '${idir}' as an include dir, which is not found. It does not exist in any of the root filesystems. Ask the maintainer '@PROJECT_MAINTAINER@' to fix it.") ++ endif() ++ set(include "${include_dir_path}/${idir_name}") ++ elseif(IS_ABSOLUTE ${idir} AND IS_DIRECTORY ${idir}) + set(include ${idir}) + elseif("${idir} " STREQUAL "@CATKIN_GLOBAL_INCLUDE_DESTINATION@ ") + get_filename_component(include "${@PROJECT_NAME@_DIR}/../../../@CATKIN_GLOBAL_INCLUDE_DESTINATION@" ABSOLUTE) +@@ -116,18 +137,31 @@ foreach(library ${libraries}) + list(APPEND @PROJECT_NAME@_LIBRARIES ${library}) + elseif(TARGET ${library}) + list(APPEND @PROJECT_NAME@_LIBRARIES ${library}) ++ elseif(IS_ABSOLUTE ${library} AND CMAKE_CROSSCOMPILING) ++ get_filename_component(lib_path ${library} DIRECTORY) ++ get_filename_component(lib_name ${library} NAME) ++ set(lib "lib-NOTFOUND") ++ # use find_library to locate library given by absolute path nested under potential root path ++ find_library(lib ${lib_name} ++ PATHS ${lib_path} ++ NO_DEFAULT_PATH ${_find_root_path_both}) ++ if(NOT lib) ++ message(FATAL_ERROR "Project '${PROJECT_NAME}' tried to find library '${library}'. The library is neither a target nor built/installed properly. Did you compile project '@PROJECT_NAME@'? Did you find_package() it before the subdirectory containing its code is included?") ++ endif() ++ _list_append_unique(@PROJECT_NAME@_LIBRARY_DIRS ${lib_path}) ++ list(APPEND @PROJECT_NAME@_LIBRARIES ${lib}) + elseif(IS_ABSOLUTE ${library}) + list(APPEND @PROJECT_NAME@_LIBRARIES ${library}) + else() + set(lib_path "") +- set(lib "${library}-NOTFOUND") ++ set(lib "lib-NOTFOUND") + # since the path where the library is found is returned we have to iterate over the paths manually + foreach(path @PKG_CONFIG_LIB_PATHS@) + find_library(lib ${library} + PATHS ${path} +- NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) ++ NO_DEFAULT_PATH ${_find_root_path_both}) + if(lib) +- set(lib_path ${path}) ++ get_filename_component(lib_path ${lib} DIRECTORY) + break() + endif() + endforeach() +-- +2.7.4 + diff --git a/recipes-ros/catkin/files/0001-avoid-using-host-s-paths-when-cross-compiling.patch b/recipes-ros/catkin/files/0001-avoid-using-host-s-paths-when-cross-compiling.patch deleted file mode 100644 index 35d0dfe..0000000 --- a/recipes-ros/catkin/files/0001-avoid-using-host-s-paths-when-cross-compiling.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 1aa4eeea5b693e67f41e59cf1b0019f45d3a8976 Mon Sep 17 00:00:00 2001 -From: Dmitry Rozhkov -Date: Mon, 6 Feb 2017 16:15:16 +0200 -Subject: [PATCH 1/2] avoid using host's paths when cross-compiling - -This patch makes catkin to look for libraries only under Yocto's -sysroots and if a library is found the actual directory is used -for that library. Not the one that was provided to CMake's -find_library() command. - -For better insights please refer to this WONTFIX'ed issue -https://github.com/ros/catkin/issues/379 - -Upstream-Status: Inappropriate [suitable for Yocto only] - -Signed-off-by: Dmitry Rozhkov - ---- - cmake/catkin_package.cmake | 10 ++++++++-- - cmake/templates/pkgConfig.cmake.in | 4 ++-- - 2 files changed, 10 insertions(+), 4 deletions(-) - -diff --git a/cmake/catkin_package.cmake b/cmake/catkin_package.cmake -index 7d56edf..71f700f 100644 ---- a/cmake/catkin_package.cmake -+++ b/cmake/catkin_package.cmake -@@ -104,6 +104,9 @@ function(_catkin_package) - message(FATAL_ERROR "catkin_package() called with unused arguments: ${PROJECT_UNPARSED_ARGUMENTS}") - endif() - -+ # cmake.bbclass always sets $STAGING_DIR as the first value of CMAKE_FIND_ROOT_PATH -+ list(GET CMAKE_FIND_ROOT_PATH 0 ROOT_PATH) -+ - if(NOT ${PROJECT_NAME} STREQUAL "catkin") - list(FIND ${PROJECT_NAME}_BUILDTOOL_DEPENDS "catkin" _index) - if(_index EQUAL -1) -@@ -231,7 +234,8 @@ function(_catkin_package) - # get library paths from all workspaces - set(lib_paths "") - foreach(workspace ${CATKIN_WORKSPACES}) -- list_append_unique(lib_paths ${workspace}/lib) -+ string(REPLACE ${ROOT_PATH} "" tweaked_ws ${workspace}) -+ list_append_unique(lib_paths ${tweaked_ws}/lib) - endforeach() - - # merge explicitly listed libraries and libraries from non-catkin but find_package()-ed packages -@@ -250,7 +254,9 @@ function(_catkin_package) - catkin_pack_libraries_with_build_configuration(_PKG_CONFIG_LIBRARIES ${_PKG_CONFIG_LIBRARIES}) - set(PKG_CONFIG_LIBRARIES "") - foreach(library ${_PKG_CONFIG_LIBRARIES}) -- list_append_deduplicate(PKG_CONFIG_LIBRARIES ${library}) -+ string(REPLACE ${ROOT_PATH} "" newlib ${library}) -+ get_filename_component(newlib ${newlib} NAME) -+ list_append_deduplicate(PKG_CONFIG_LIBRARIES ${newlib}) - endforeach() - catkin_unpack_libraries_with_build_configuration(PKG_CONFIG_LIBRARIES ${PKG_CONFIG_LIBRARIES}) - -diff --git a/cmake/templates/pkgConfig.cmake.in b/cmake/templates/pkgConfig.cmake.in -index d99b811..c692108 100644 ---- a/cmake/templates/pkgConfig.cmake.in -+++ b/cmake/templates/pkgConfig.cmake.in -@@ -125,9 +125,9 @@ foreach(library ${libraries}) - foreach(path @PKG_CONFIG_LIB_PATHS@) - find_library(lib ${library} - PATHS ${path} -- NO_DEFAULT_PATH NO_CMAKE_FIND_ROOT_PATH) -+ NO_DEFAULT_PATH ONLY_CMAKE_FIND_ROOT_PATH) - if(lib) -- set(lib_path ${path}) -+ get_filename_component(lib_path ${lib} DIRECTORY) - break() - endif() - endforeach() --- -2.7.4 - diff --git a/recipes-ros/catkin/files/0001-ignore-LD_LIBRARY_PATH-set-in-environment_cache.py.patch b/recipes-ros/catkin/files/0001-ignore-LD_LIBRARY_PATH-set-in-environment_cache.py.patch index 0721315..2985667 100644 --- a/recipes-ros/catkin/files/0001-ignore-LD_LIBRARY_PATH-set-in-environment_cache.py.patch +++ b/recipes-ros/catkin/files/0001-ignore-LD_LIBRARY_PATH-set-in-environment_cache.py.patch @@ -1,4 +1,4 @@ -From f58947cf910ec4de1a9f093b4eb1fe68e6cfd602 Mon Sep 17 00:00:00 2001 +From 64d33f250beaeb375cc1c93226c2b45a746d51c2 Mon Sep 17 00:00:00 2001 From: Dmitry Rozhkov Date: Thu, 27 Apr 2017 11:04:27 +0300 Subject: [PATCH] ignore LD_LIBRARY_PATH set in environment_cache.py @@ -26,6 +26,7 @@ by bitbake. Upstream-Status: Inappropriate [upstream doesn't use bitbake and the change may break on-target development] Signed-off-by: Dmitry Rozhkov + --- python/catkin/environment_cache.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) @@ -43,6 +44,3 @@ index 3defa52..dba2c50 100755 + code.append('export %s="%s"' % (key, value)) else: code.append('set %s=%s' % (key, value)) --- -2.9.3 - diff --git a/recipes-ros/catkin/files/0001-python.cmake-look-for-python3-first.patch b/recipes-ros/catkin/files/0001-python.cmake-look-for-python3-first.patch index 36455eb..ced1b54 100644 --- a/recipes-ros/catkin/files/0001-python.cmake-look-for-python3-first.patch +++ b/recipes-ros/catkin/files/0001-python.cmake-look-for-python3-first.patch @@ -1,4 +1,4 @@ -From 224186a1af40cd3b7efb4f0648a3a4ca6ca1e7fa Mon Sep 17 00:00:00 2001 +From a429081b23223b1d6729da2c9087318bc08a808c Mon Sep 17 00:00:00 2001 From: Dmitry Rozhkov Date: Thu, 6 Apr 2017 15:25:13 +0300 Subject: [PATCH] python.cmake: look for python3 first @@ -6,6 +6,7 @@ Subject: [PATCH] python.cmake: look for python3 first Upstream-Status: Inappropriate [the patch overrides ROS's default to python2] Signed-off-by: Dmitry Rozhkov + --- cmake/python.cmake | 1 + 1 file changed, 1 insertion(+) @@ -22,6 +23,3 @@ index 70f3d26..38f8320 100644 find_package(PythonInterp REQUIRED) message(STATUS "Using PYTHON_EXECUTABLE: ${PYTHON_EXECUTABLE}") --- -2.9.3 - diff --git a/recipes-ros/catkin/files/0001-relocate-dependency-s-headers-to-current-sysroot.patch b/recipes-ros/catkin/files/0001-relocate-dependency-s-headers-to-current-sysroot.patch deleted file mode 100644 index 4370787..0000000 --- a/recipes-ros/catkin/files/0001-relocate-dependency-s-headers-to-current-sysroot.patch +++ /dev/null @@ -1,80 +0,0 @@ -From b0ad0d6e6a7872c59180596d29ac5f52723c4317 Mon Sep 17 00:00:00 2001 -From: Dmitry Rozhkov -Date: Wed, 22 Feb 2017 13:48:37 +0200 -Subject: [PATCH] relocate dependency's headers to current sysroot - -If a package (A) depends on another package (B) and the package -B depends on Boost then it might happen that B produces BConfig.cmake -file where absolute paths to Boost's headers are put (because CMake's -standard FindBoost.cmake module reports absolute paths). In case of -Yocto it means that BConfig.cmake will contain something like -/path/to/build/tmp-glibc/work/i586/package_B/0.0.1/recipe-sysroot/usr/include. -The path may not exist at the moment when the package A is being built. -And that leads to the failure of the check this patch switches off. - -The problem has been reported to catkin's issue tracker: -https://github.com/ros/catkin/issues/851 - -This patch "relocates" required headers from dependencies' sysroots -to the current sysroot by removing sysroot prefix from include dirs -in *Config.cmake files at the moment the files get created and -by prepending the include dirs again with the current sysroot prefix. - -Upstream-Status: Inappropriate [suitable for Yocto's RSS feature only] - -Signed-off-by: Dmitry Rozhkov - ---- - cmake/catkin_package.cmake | 5 ++++- - cmake/templates/pkgConfig.cmake.in | 10 +++++++--- - 2 files changed, 11 insertions(+), 4 deletions(-) - -diff --git a/cmake/catkin_package.cmake b/cmake/catkin_package.cmake -index 71f700f..818ccd9 100644 ---- a/cmake/catkin_package.cmake -+++ b/cmake/catkin_package.cmake -@@ -161,7 +161,10 @@ function(_catkin_package) - if(NOT ${${depend_name}_FOUND}) - message(FATAL_ERROR "catkin_package() DEPENDS on '${depend_name}' which must be find_package()-ed before. If it is a catkin package it can be declared as CATKIN_DEPENDS instead without find_package()-ing it.") - endif() -- list(APPEND PROJECT_DEPENDENCIES_INCLUDE_DIRS ${${depend_name}_INCLUDE_DIRS}) -+ foreach(incdir ${${depend_name}_INCLUDE_DIRS}) -+ string(REPLACE ${ROOT_PATH} "" tweaked_idir ${incdir}) -+ list_append_deduplicate(PROJECT_DEPENDENCIES_INCLUDE_DIRS ${tweaked_idir}) -+ endforeach() - list(APPEND PROJECT_DEPENDENCIES_LIBRARIES ${${depend_name}_LIBRARIES}) - endif() - endforeach() -diff --git a/cmake/templates/pkgConfig.cmake.in b/cmake/templates/pkgConfig.cmake.in -index c692108..683ef67 100644 ---- a/cmake/templates/pkgConfig.cmake.in -+++ b/cmake/templates/pkgConfig.cmake.in -@@ -94,18 +94,22 @@ set(@PROJECT_NAME@_FOUND_CATKIN_PROJECT TRUE) - if(NOT "@PROJECT_CMAKE_CONFIG_INCLUDE_DIRS@ " STREQUAL " ") - set(@PROJECT_NAME@_INCLUDE_DIRS "") - set(_include_dirs "@PROJECT_CMAKE_CONFIG_INCLUDE_DIRS@") -+ list(GET CMAKE_FIND_ROOT_PATH 0 root_path) - foreach(idir ${_include_dirs}) -+ if(IS_ABSOLUTE ${idir} AND NOT "${idir}" MATCHES "^${root_path}.*") -+ set(idir "${root_path}${idir}") -+ endif() - if(IS_ABSOLUTE ${idir} AND IS_DIRECTORY ${idir}) -- set(include ${idir}) -+ _list_append_unique(@PROJECT_NAME@_INCLUDE_DIRS ${idir}) - elseif("${idir} " STREQUAL "@CATKIN_GLOBAL_INCLUDE_DESTINATION@ ") - get_filename_component(include "${@PROJECT_NAME@_DIR}/../../../@CATKIN_GLOBAL_INCLUDE_DESTINATION@" ABSOLUTE) - if(NOT IS_DIRECTORY ${include}) - message(FATAL_ERROR "Project '@PROJECT_NAME@' specifies '${idir}' as an include dir, which is not found. It does not exist in '${include}'. Ask the maintainer '@PROJECT_MAINTAINER@' to fix it.") - endif() -+ _list_append_unique(@PROJECT_NAME@_INCLUDE_DIRS ${include}) - else() -- message(FATAL_ERROR "Project '@PROJECT_NAME@' specifies '${idir}' as an include dir, which is not found. It does neither exist as an absolute directory nor in '@PKG_INCLUDE_PREFIX@/${idir}'. Ask the maintainer '@PROJECT_MAINTAINER@' to fix it.") -+ message(WARNING "Project '@PROJECT_NAME@' specifies '${idir}' as an include dir, which is not found. It does neither exist as an absolute directory nor in '@PKG_INCLUDE_PREFIX@/${idir}'. Ask the maintainer '@PROJECT_MAINTAINER@' to fix it.") - endif() -- _list_append_unique(@PROJECT_NAME@_INCLUDE_DIRS ${include}) - endforeach() - endif() - --- -2.7.4 - diff --git a/recipes-ros/catkin/files/0001-use-python-provided-by-environment-instead-of-the-ge.patch b/recipes-ros/catkin/files/0001-use-python-provided-by-environment-instead-of-the-ge.patch index df8fbd1..56dd7a9 100644 --- a/recipes-ros/catkin/files/0001-use-python-provided-by-environment-instead-of-the-ge.patch +++ b/recipes-ros/catkin/files/0001-use-python-provided-by-environment-instead-of-the-ge.patch @@ -1,4 +1,4 @@ -From 431739f10027022b6e3d2cd75cffa04c848cd14d Mon Sep 17 00:00:00 2001 +From 7894487c0d749124c3b0d82fcebff2309a84024a Mon Sep 17 00:00:00 2001 From: Lukas Bulwahn Date: Tue, 31 May 2016 15:38:05 +0200 Subject: [PATCH] use python provided by environment instead of the generated @@ -13,12 +13,13 @@ bf12b40c2 [1]. We revert this change here to address the issue #384 [2]. Upstream-Status: Inappropriate [only for our setup] Signed-off-by: Lukas Bulwahn + --- cmake/templates/_setup_util.py.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/templates/_setup_util.py.in b/cmake/templates/_setup_util.py.in -index cace21c..ff2c6b4 100755 +index 1949c4c..f8807f3 100755 --- a/cmake/templates/_setup_util.py.in +++ b/cmake/templates/_setup_util.py.in @@ -1,4 +1,4 @@ @@ -27,6 +28,3 @@ index cace21c..ff2c6b4 100755 # -*- coding: utf-8 -*- # Software License Agreement (BSD License) --- -1.9.1 - diff --git a/recipes-ros/catkin/files/environment.d-catkin.sh b/recipes-ros/catkin/files/environment.d-catkin.sh new file mode 100644 index 0000000..5c31049 --- /dev/null +++ b/recipes-ros/catkin/files/environment.d-catkin.sh @@ -0,0 +1,10 @@ +alias catkin_make=" \ + catkin_make \ + -DCMAKE_TOOLCHAIN_FILE=$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ +" +alias catkin_make_isolated=" \ + catkin_make_isolated \ + -DCMAKE_TOOLCHAIN_FILE=$OECORE_NATIVE_SYSROOT/usr/share/cmake/OEToolchainConfig.cmake \ + -DSETUPTOOLS_DEB_LAYOUT=OFF \ +" diff --git a/recipes-ros/ros-comm/roscpp/0001-make-implicit-cast-explicit.patch b/recipes-ros/ros-comm/roscpp/0001-make-implicit-cast-explicit.patch new file mode 100644 index 0000000..895dee6 --- /dev/null +++ b/recipes-ros/ros-comm/roscpp/0001-make-implicit-cast-explicit.patch @@ -0,0 +1,22 @@ +diff --git a/clients/roscpp/src/libros/callback_queue.cpp b/clients/roscpp/src/libros/callback_queue.cpp +index cd2f4f8..fa600d5 100644 +--- a/clients/roscpp/src/libros/callback_queue.cpp ++++ b/clients/roscpp/src/libros/callback_queue.cpp +@@ -229,7 +229,7 @@ CallbackQueue::CallOneResult CallbackQueue::callOne(ros::WallDuration timeout) + { + if (!timeout.isZero()) + { +- condition_.timed_wait(lock, boost::posix_time::microseconds(timeout.toSec() * 1000000.0f)); ++ condition_.timed_wait(lock, boost::posix_time::microseconds(static_cast(timeout.toSec() * 1000000.0f))); + } + + if (callbacks_.empty()) +@@ -305,7 +305,7 @@ void CallbackQueue::callAvailable(ros::WallDuration timeout) + { + if (!timeout.isZero()) + { +- condition_.timed_wait(lock, boost::posix_time::microseconds(timeout.toSec() * 1000000.0f)); ++ condition_.timed_wait(lock, boost::posix_time::microseconds(static_cast(timeout.toSec() * 1000000.0f))); + } + + if (callbacks_.empty() || !enabled_) diff --git a/recipes-ros/ros-comm/roscpp_1.11.21.bb b/recipes-ros/ros-comm/roscpp_1.11.21.bb index 04e3b61..b878e5a 100644 --- a/recipes-ros/ros-comm/roscpp_1.11.21.bb +++ b/recipes-ros/ros-comm/roscpp_1.11.21.bb @@ -10,7 +10,9 @@ DEPENDS = "cpp-common message-generation rosconsole roscpp-serialization roscpp- require ros-comm.inc -SRC_URI += "file://0001-roscpp-add-missing-header-for-writev.patch;striplevel=3" +SRC_URI += "\ + file://0001-roscpp-add-missing-header-for-writev.patch;striplevel=3\ + file://0001-make-implicit-cast-explicit.patch;striplevel=3" ROS_PKG_SUBDIR = "clients" diff --git a/recipes-ros/ros-comm/roslaunch_1.11.21.bb b/recipes-ros/ros-comm/roslaunch_1.11.21.bb index 2b49148..069d675 100644 --- a/recipes-ros/ros-comm/roslaunch_1.11.21.bb +++ b/recipes-ros/ros-comm/roslaunch_1.11.21.bb @@ -16,7 +16,7 @@ SRC_URI += "file://0001-increase-rosmaster-timeout.patch;patchdir=../.. \ ROS_PKG_SUBDIR = "tools" RDEPENDS_${PN} = "\ - ${@'python-textutils' if d.getVar('PYTHON_PN', True) == 'python2' else ''} \ + ${@'python-textutils' if d.getVar('PYTHON_PN', True) == 'python' else ''} \ ${PYTHON_PN}-logging \ ${PYTHON_PN}-threading \ ${PYTHON_PN}-rospkg \ diff --git a/recipes-ros/ros/files/0001-use-env-to-get-python-exec.patch b/recipes-ros/ros/files/0001-use-env-to-get-python-exec.patch new file mode 100644 index 0000000..bc228c0 --- /dev/null +++ b/recipes-ros/ros/files/0001-use-env-to-get-python-exec.patch @@ -0,0 +1,32 @@ +From 4254977bbfc67a3083e3881a56b50b729bf57d9f Mon Sep 17 00:00:00 2001 +From: Dominique Hunziker +Date: Fri, 2 Jun 2017 11:57:54 +0200 + +Upstream-Status: Pending + +--- + core/roslib/env-hooks/10.ros.sh.em | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/core/roslib/env-hooks/10.ros.sh.em b/core/roslib/env-hooks/10.ros.sh.em +index caed342..1c64fc4 100644 +--- a/core/roslib/env-hooks/10.ros.sh.em ++++ b/core/roslib/env-hooks/10.ros.sh.em +@@ -1,7 +1,7 @@ + # generated from ros/env-hooks/10.ros.sh.em + + # scrub old ROS bin dirs, to avoid accidentally finding the wrong executables +-export PATH="`@(PYTHON_EXECUTABLE) -c \"import os; print(os.pathsep.join([x for x in \\\"$PATH\\\".split(os.pathsep) if not any([d for d in ['cturtle', 'diamondback', 'electric', 'fuerte'] if d in x])]))\"`" ++export PATH="`/usr/bin/env python -c \"import os; print(os.pathsep.join([x for x in \\\"$PATH\\\".split(os.pathsep) if not any([d for d in ['cturtle', 'diamondback', 'electric', 'fuerte'] if d in x])]))\"`" + + if [ -n "$ROS_DISTRO" -a "$ROS_DISTRO" != "indigo" ]; then + echo "ROS_DISTRO was set to '$ROS_DISTRO' before. Please make sure that the environment does not mix paths from different distributions." +@@ -30,7 +30,7 @@ for workspace in workspaces: + print(os.pathsep.join(paths)) + EOF + ) +-export ROS_PACKAGE_PATH="`@(PYTHON_EXECUTABLE) -c \"$PYTHON_CODE_BUILD_ROS_PACKAGE_PATH\"`" ++export ROS_PACKAGE_PATH="`/usr/bin/env python -c \"$PYTHON_CODE_BUILD_ROS_PACKAGE_PATH\"`" + + @[if DEVELSPACE]@ + # env variables in develspace diff --git a/recipes-ros/ros/roslib_1.11.14.bb b/recipes-ros/ros/roslib_1.11.14.bb index 6438d61..9919e1e 100644 --- a/recipes-ros/ros/roslib_1.11.14.bb +++ b/recipes-ros/ros/roslib_1.11.14.bb @@ -9,4 +9,6 @@ require ros.inc ROS_PKG_SUBDIR = "core" +SRC_URI += "file://0001-use-env-to-get-python-exec.patch;striplevel=3" + RDEPENDS_${PN} = "${PYTHON_PN}-rospkg catkin-runtime" diff --git a/recipes-ros/roscpp-core/files/0001-remove-implicit-cast.patch b/recipes-ros/roscpp-core/files/0001-remove-implicit-cast.patch new file mode 100644 index 0000000..f367160 --- /dev/null +++ b/recipes-ros/roscpp-core/files/0001-remove-implicit-cast.patch @@ -0,0 +1,26 @@ +diff --git a/rostime/include/ros/impl/duration.h b/rostime/include/ros/impl/duration.h +index 2ca2f5b..7ebd202 100644 +--- a/rostime/include/ros/impl/duration.h ++++ b/rostime/include/ros/impl/duration.h +@@ -179,7 +179,7 @@ namespace ros { + #if defined(BOOST_DATE_TIME_HAS_NANOSECONDS) + return bt::seconds(sec) + bt::nanoseconds(nsec); + #else +- return bt::seconds(sec) + bt::microseconds(nsec/1000.0); ++ return bt::seconds(sec) + bt::microseconds(nsec/1000); + #endif + } + } +diff --git a/rostime/include/ros/impl/time.h b/rostime/include/ros/impl/time.h +index ec991e6..61b686c 100644 +--- a/rostime/include/ros/impl/time.h ++++ b/rostime/include/ros/impl/time.h +@@ -167,7 +167,7 @@ namespace ros + #if defined(BOOST_DATE_TIME_HAS_NANOSECONDS) + return pt::from_time_t(sec) + pt::nanoseconds(nsec); + #else +- return pt::from_time_t(sec) + pt::microseconds(nsec/1000.0); ++ return pt::from_time_t(sec) + pt::microseconds(nsec/1000); + #endif + } + diff --git a/recipes-ros/roscpp-core/rostime_0.5.8.bb b/recipes-ros/roscpp-core/rostime_0.5.8.bb index 51dd349..40ad83a 100644 --- a/recipes-ros/roscpp-core/rostime_0.5.8.bb +++ b/recipes-ros/roscpp-core/rostime_0.5.8.bb @@ -6,3 +6,5 @@ LIC_FILES_CHKSUM = "file://package.xml;beginline=8;endline=8;md5=d566ef916e9dedc DEPENDS = "boost cpp-common" require roscpp-core.inc + +SRC_URI += "file://0001-remove-implicit-cast.patch;striplevel=2" diff --git a/recipes-ros/rospack/rospack_2.2.8.bb b/recipes-ros/rospack/rospack_2.2.8.bb index 80a7fed..e07e214 100644 --- a/recipes-ros/rospack/rospack_2.2.8.bb +++ b/recipes-ros/rospack/rospack_2.2.8.bb @@ -14,4 +14,4 @@ SRC_URI[sha256sum] = "a8fecbe03f9757510fe47137642e39a7c31b823d5bf7fa7890acc11691 inherit catkin RDEPENDS_${PN} = "${PYTHON_PN}-rosdep \ - ${@'python-subprocess' if d.getVar('PYTHON_PN', True) == 'python2' else ''}" + ${@'python-subprocess' if d.getVar('PYTHON_PN', True) == 'python' else ''}"