From 098325d668eb2096dcd810bd24b25c81e24500db Mon Sep 17 00:00:00 2001 From: Shankho Boron Ghosh Date: Fri, 13 Aug 2021 18:41:32 +0530 Subject: meta-agl-ros2: Support for ros2 minimal & ydlidar v1 : Added support for ros2 in AGL and ydlidar driver support by creation of recipes for ydlidar driver and sdk and packagegroup-agl-ros2-minimal & packagegroup-agl-ros2-ydlidar. Concurrently, created a feature template to allow for BBLAYERS and local conf dependencies. v2 : Removed ALLOW_EMPTY_${PN} = "1" and trailing whitespaces. Set AGL_META_PYTHON = "${METADIR}/external/meta-openembedded/meta-python" otherwise multiple layers might include meta-python and bitbake will choke if a folder is present twice. v3 : Removed trailing whitespaces. Removed AGL_META_PYTHON, just set it. v4 : Rebased v5 : Converted to new syntax: RDEPENDS:${PN}, do_install:append(), IMAGE_INSTALL:append v6 : Added ${METADIR}/meta-agl-devel/meta-agl-ros2 to bblayers configuration. v7 : Added meta-ros-backports-hardknott layer. v8 : Added packagegroup-agl-ros-native-qt5 to remove dependency to agl-demo. Signed-off-by: Shankho Boron Ghosh Change-Id: If169fde42e3f51571e2776adc574b7f8437a61fa --- .../ydlidar-ros2-driver_1.0.1.bb | 62 ++++++++++++++++++++++ .../ydlidar-ros2-sdk/ydlidar-ros2-sdk_1.4.7.bb | 24 +++++++++ 2 files changed, 86 insertions(+) create mode 100644 meta-agl-ros2/recipes-ros2/ydlidar-ros2-driver/ydlidar-ros2-driver_1.0.1.bb create mode 100644 meta-agl-ros2/recipes-ros2/ydlidar-ros2-sdk/ydlidar-ros2-sdk_1.4.7.bb (limited to 'meta-agl-ros2/recipes-ros2') diff --git a/meta-agl-ros2/recipes-ros2/ydlidar-ros2-driver/ydlidar-ros2-driver_1.0.1.bb b/meta-agl-ros2/recipes-ros2/ydlidar-ros2-driver/ydlidar-ros2-driver_1.0.1.bb new file mode 100644 index 00000000..cff912d0 --- /dev/null +++ b/meta-agl-ros2/recipes-ros2/ydlidar-ros2-driver/ydlidar-ros2-driver_1.0.1.bb @@ -0,0 +1,62 @@ +inherit ros_distro_foxy +inherit ros_superflore_generated + +SUMMARY = "YDLIDAR" +DESCRIPTION = "YDLIDAR driver recipe for ROS2 support." +AUTHOR = "Shankho Boron Ghosh" +ROS_AUTHOR = "Shankho Boron Ghosh" +HOMEPAGE = "https://wiki.ros.org" +SECTION = "devel" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d41d8cd98f00b204e9800998ecf8427e" + +ROS_CN = "ydlidar_ros2_driver" +ROS_BPN = "ydlidar_ros2_driver" + +ROS_BUILD_DEPENDS = " \ + rclcpp \ + rclcpp-components \ + sensor-msgs \ + visualization-msgs \ + geometry-msgs \ + std-srvs \ +" + +ROS_BUILDTOOL_DEPENDS = " \ + ament-cmake-auto-native \ + ament-cmake-ros-native \ +" + +ROS_EXPORT_DEPENDS = "" + +ROS_BUILDTOOL_EXPORT_DEPENDS = "" + +ROS_EXEC_DEPENDS = " \ + rclcpp \ + rclcpp-components \ + sensor-msgs \ + visualization-msgs \ + geometry-msgs \ + std-srvs \ +" + +# Currently informational only -- see http://www.ros.org/reps/rep-0149.html#dependency-tags. +ROS_TEST_DEPENDS = "" + +DEPENDS = "${ROS_BUILD_DEPENDS} ${ROS_BUILDTOOL_DEPENDS}" +# Bitbake doesn't support the "export" concept, so build them as if we needed them to build this package (even though we actually +# don't) so that they're guaranteed to have been staged should this package appear in another's DEPENDS. +DEPENDS += "${ROS_EXPORT_DEPENDS} ${ROS_BUILDTOOL_EXPORT_DEPENDS}" +#added +DEPENDS += "ydlidar-ros2-sdk" + +RDEPENDS:${PN} += "${ROS_EXEC_DEPENDS}" + +#ROS_BRANCH ?= "branch=release/foxy/ydlidar_ros2_driver" +SRC_URI = "git://github.com/YDLIDAR/ydlidar_ros2_driver;branch=master;protocol=https" +SRCREV = "2e095da315aec0a0bc5aaac12082cb9d1f97f8b5" +S = "${WORKDIR}/git" + +ROS_BUILD_TYPE = "ament_cmake" + +inherit ros_${ROS_BUILD_TYPE} \ No newline at end of file diff --git a/meta-agl-ros2/recipes-ros2/ydlidar-ros2-sdk/ydlidar-ros2-sdk_1.4.7.bb b/meta-agl-ros2/recipes-ros2/ydlidar-ros2-sdk/ydlidar-ros2-sdk_1.4.7.bb new file mode 100644 index 00000000..4f586f30 --- /dev/null +++ b/meta-agl-ros2/recipes-ros2/ydlidar-ros2-sdk/ydlidar-ros2-sdk_1.4.7.bb @@ -0,0 +1,24 @@ +SUMMARY = "YDLIDAR-SDK" +DESCRIPTION = "YDLIDAR-SDK as it a dependency for ydlidar_ros2_driver." +AUTHOR = "Shankho Boron Ghosh" +ROS_AUTHOR = "Shankho Boron Ghosh" +HOMEPAGE = "https://github.com/YDLIDAR/YDLIDAR/YDLidar-SDK" +SECTION = "devel" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4e320231d59c825e45dbfda066af29c9" + +SRC_URI = "git://github.com/YDLIDAR/YDLidar-SDK.git;protocol=https" + +SRCREV = "8b287ed831db0892f51793650b438790442fa09c" + +S = "${WORKDIR}/git" + +inherit cmake + +FILES_${PN} += "${datadir} ${prefix}/startup" + +do_install:append() { + sed -i -e 's|${DEBUG_PREFIX_MAP}||g; s|--sysroot=${STAGING_DIR_TARGET}||g' ${D}${libdir}/pkgconfig/*.pc +} + +RDEPENDS:${PN} += "bash" \ No newline at end of file -- cgit 1.2.3-korg