Commit Graph

76 Commits

Author SHA1 Message Date
Herb Kuta f6fe90a43f DRAFT ament-python.bbclass: Use ros2_distro.bbclass settings for FILES 2019-06-24 14:47:16 -07:00
Herb Kuta 2c221edb4a DRAFT ros-insane.bbclass: Make usable by ROS 2 2019-06-24 14:47:16 -07:00
Herb Kuta 144a46608d DRAFT ament.bbclass: Don't remove local_setup.*, environment from what's installed 2019-06-22 18:51:18 -07:00
JeongBong Seo a4a7291606 DRAFT ament.bbclass: Use ros2_distro.bbclass settings for FILES, FILES-dev 2019-06-22 18:51:18 -07:00
Andre Rosa a25bb417e5 DRAFT ament.bbclass: Fix PYTHON_SOABI
* Make it conditional on the configured MACHINE. Otherwise needs to be
    reworked to avoid getting the SOABI from python3-native.

  * See:
    4b6bb78633
    https://github.com/ros2/rosidl_python/blob/master/python_cmake_module/cmake/Modules/FindPythonExtra.cmake
    https://discourse.ros.org/t/import-error-no-module-named-rclpy-rclpy-cross-compiling/2463/

  * With the patch ros2 cli works well for all listed MACHINE(s):

    root@qemuarm64:~# ros2 topic list
    /parameter_events
    /rosout

     root@qemuarm64:~# ros2 topic pub /chatter std_msgs/String "data: Hello world"
     publisher: beginning loop
     publishing #1: std_msgs.msg.String(data='Hello world')

     publishing #2: std_msgs.msg.String(data='Hello world')

     ...

     root@qemuarm64:~# ros2 topic echo /chatter
     data: Hello world

     data: Hello world

     ...
2019-06-22 18:51:18 -07:00
Herb Kuta 3e83ff8d7b DRAFT ament.bbclass: Dependencies are correctly generated 2019-06-22 18:51:18 -07:00
Herb Kuta be4b674298 DRAFT pythonpath-insane.bbclass: Drop: no longer need to use target path for native Python 2019-06-22 18:51:18 -07:00
Herb Kuta ce93adf9b2 DRAFT *.bbclass: Drop extraneous wildcards in FILES_* assignements 2019-06-22 18:51:18 -07:00
Herb Kuta 0c492afb8a DRAFT ament-python.bbclass: Remove hardcoded /usr/share from FILES_${PN} 2019-06-22 18:51:18 -07:00
Herb Kuta 7eb01a4e34 DRAFT ament.bbclass: Add comment about AMENT_PREFIX_PATH 2019-06-22 18:51:18 -07:00
Herb Kuta c078c2b972 DRAFT *.bbclass: Drop assignments of S (generated recipes set it correctly) 2019-06-22 18:51:18 -07:00
Herb Kuta 07ca9f9384 DRAFT Add ros_ament_python.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta a162ab8068 DRAFT Add ros_cmake.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta b5fc263838 DRAFT Add ros_ament_cmake.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta c2166b9272 DRAFT Add ros_catkin.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 2bfb14d6ca DRAFT Add ros_recipe_now_generated.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta abb5bb4338 DRAFT Add ros_superflore_generated.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta c58d1eb154 DRAFT Add {ros,ros1,ros2}_image.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 1f2294fa9b WIP ros2_distro.bbclass: Fix up build paths in parent_prefix_path files if building for target 2019-06-22 18:51:18 -07:00
JeongBong Seo 18d5b019d8 DRAFT ros2_distro.bbclass: Process *.cmake files for sysroots 2019-06-22 18:51:18 -07:00
Herb Kuta 64236bb734 DRAFT Add ros2_distro.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta ede7b54d8b DRAFT Add ros1_distro.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 6dede967da DRAFT Add ros_distro.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 4b41c28df9 DRAFT ros_component.bbclass: Add default for new setting ROS_CN 2019-06-22 18:51:18 -07:00
Herb Kuta b2cde1d0d3 DRAFT ros_component.bbclass: Use ??= when assigning ROS_BPN, ROS_SPN, ROS_SP 2019-06-22 18:51:18 -07:00
Herb Kuta f9097a0119 DRAFT ros_component.bbclass: Move ROS_BPN, ROS_SPN, ROS_SP into here from other bbclass-s 2019-06-22 18:51:18 -07:00
Herb Kuta 35fe716976 DRAFT Add ros2_component.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta fdcbc72329 DRAFT Add ros1_component.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 4a6d4ee21f DRAFT Add ros_component.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta 00c2eb2b41 DRAFT catkin*.bbclass: ROS_USE_PYTHON3 -> ROS_PYTHON_VERSION
Also ensure PYTHON_DIR is set when only inherit-ing catkin_ros_prefix.bbclass
2019-06-22 18:51:18 -07:00
Herb Kuta 89ce964673 DRAFT catkin_ros_prefix.bbclass: ros_sysroot_preprocess() -> catkin_ros_prefix_sysroot_preprocess() 2019-06-22 18:51:18 -07:00
Herb Kuta 41d0a3bbb0 DRAFT catkin_ros_prefix.bbclass: ROSDISTRO -> ROS_DISTRO 2019-06-22 18:51:18 -07:00
Brian Shin 2c66e130e5 DRAFT ament-python bbclass: Import from lgsvl/meta-ros2@7a2ce1033f
Add missing copyright notice.
2019-06-22 18:51:18 -07:00
Herb Kuta 9deae5f9c1 DRAFT ros.bbclass -> catkin_ros_prefix.bbclass
Not updating recipes under v1-recipes-*
2019-06-22 18:51:18 -07:00
Herb Kuta 32ff26f0da DRAFT Add ros_distro_dashing.bbclass 2019-06-22 18:51:18 -07:00
Herb Kuta c5e21e5f06 DRAFT Add ros_distro_crystal.bbclass 2019-06-22 18:49:35 -07:00
Herb Kuta 766ccbf520 DRAFT Add ros_distro_bouncy.bbclass 2019-06-22 18:49:02 -07:00
Herb Kuta fcbf73710f DRAFT Add ros_distro_melodic.bbclass 2019-06-22 18:48:15 -07:00
Herb Kuta b57e1ac0cd DRAFT Drop autotools-brokensep.bbclass (provided by openemedded-core/meta in morty) 2019-06-12 14:40:07 -07:00
Andrey Kozhanov 3f4b9ff102 ros2msg,ros2topic: move msg files to the main package + add ros2-topic
* web-bridge needs msg to generate js bindings on the fly

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-10-01 14:27:58 +00:00
Andre Goddard Rosa 45de857731 ament.bbclass: Fix wrong suffix 'x86_64-linux-gnu' in native python module shared library
* Fix wrong suffix x86_64-linux-gnu in native python module shared library

* Python native module shared library is cross-compiled for correct
  architecture but filename had an incorrect suffix 'x86_64-linux-gnu'.

  As per python_cmake_module, if PYTHON_SOABI environment variable is not
  defined, it'll query it from native's python sysconfig module.
  https://github.com/ros2/rosidl/blob/master/python_cmake_module/cmake/Modules/FindPythonExtra.cmake

  So adopt a solution similar to the one adopted below, where PYTHON_SOABI
  is set explicitly for our specific build.
  https://github.com/erlerobot/meta-ros2/blob/master/classes/ament.bbclass

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-10-01 14:27:58 +00:00
Dmitry Rozhkov 1de025778a ros2: add initial recipes
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2018-10-01 14:27:58 +00:00
Dominique Hunziker bc89dbf4ea catkin: swap cross-compilation patch 2018-04-13 15:56:35 +02:00
Dominique Hunziker 8754c01a23 reorganize how files & dependencies are split between catkin & catkin-runtime 2018-04-13 15:56:35 +02:00
Dmitry Rozhkov 84c1e54b11 catkin.bbclass: adapt to binutils 2.29
After updating to binutils 2.29 builds fail with

    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/7.2.0/ld: warning: libclass_loader.so, needed by /home/rojkov/work/ros/build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so, not found (try using -rpath or -rpath-link)
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot-native/usr/bin/i586-oe-linux/../../libexec/i586-oe-linux/gcc/i586-oe-linux/7.2.0/ld: warning: libroslib.so, needed by /home/rojkov/work/ros/build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so, not found (try using -rpath or -rpath-link)
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::ClassLoader::isLibraryLoaded()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::loadLibrary(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::MultiLibraryClassLoader(bool)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `ros:📦:getPath(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::systemLibrarySuffix[abi:cxx11]()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::class_loader_private::AbstractMetaObjectBase::isOwnedBy(class_loader::ClassLoader const*)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::class_loader_private::getFactoryMapForBaseClass(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::getAllAvailableClassLoaders()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::ClassLoader::hasUnmanagedInstanceBeenCreated()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::ClassLoader::unloadLibraryInternal(bool)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::unloadLibrary(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::class_loader_private::getPluginBaseToFactoryMapMapMutex()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::getRegisteredLibraries[abi:cxx11]()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `ros:📦:getPlugins(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, bool)'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::MultiLibraryClassLoader::~MultiLibraryClassLoader()'
    build/tmp-glibc/work/i586-oe-linux/kdl-parser/1.11.14-r0/recipe-sysroot/opt/ros/indigo/lib/liburdf.so: undefined reference to `class_loader::ClassLoader::loadLibrary()'

because of wrong value of -Wl,-rpath provided to the cross-linker.

This patch makes use of -Wl,-rpath-link option added unconditionally to all
catkin-based builds to aleviate the problem.

NB: The proper fix though should either replace -Wl,-rpath with
-Wl,-rpath-link where it's needed or use correct path to target
libs in -Wl,-rpath.

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
2017-08-28 17:11:08 +03:00
Dmitry Rozhkov 3e201940f6 enable python3 compatible builds of ROS (resolves #458)
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>
2017-04-10 14:37:11 +03:00
Dmitry Rozhkov efd6e9e1ef catkin.bbclass: make expression more readable
Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
2017-04-07 14:13:00 +03:00
Dmitry Rozhkov 9909e48046 moveit: Add packages from MoveIt! project
Particularly this commit brings in

* moveit_core;
* moveit_ros_perception;
* moveit_ros_planning;
* moveit_msgs

and their build dependencies like

* object_recognition_msgs;
* srdfdom.

Also they are included into packagegroup-ros-world.bb.

Signed-off-by: Dmitry Rozhkov <dmitry.rozhkov@linux.intel.com>
2017-03-22 12:34:12 +02:00
Juampe Lopez Cabrera ce5ba479ba Drop obsolete call to sysroot_stage_libdir
It replaces the sysroot_stage_libdir() call as it is no longer available (it was just a wrapper for sysroot_stage_dir() anyway).

See: 80e7e7f78d
2016-05-28 22:48:49 +02:00
Ash Charles 790f56ddba Update from virtclass-native to class-native
As per Section 24.5.15 of the Yocto Manual [1], use of 'virtclass'
overrides has been deprecated since Yocto version 1.6. Update to
the new syntax.

[1] http://www.yoctoproject.org/docs/1.8/mega-manual/mega-manual.html

Signed-off-by: Ash Charles <ashcharles@gmail.com>
2015-05-28 13:14:52 -07:00