Merge pull request #286 from housel/relocate-to-opt-ros-rosdistro
relocate ROS packages to /opt/ros/${ROSDISTRO} (resolves #214)
This commit is contained in:
commit
bda407b2f3
|
@ -126,10 +126,13 @@ Currently, this layer is still under continuous development.
|
|||
|
||||
to the /etc/hosts file, and set up the environment with
|
||||
|
||||
export ROS_ROOT=/usr
|
||||
export ROS_ROOT=/opt/ros/hydro
|
||||
export PATH=$PATH:/opt/ros/hydro/bin
|
||||
export LD_LIBRARY_PATH=/opt/ros/hydro/lib
|
||||
export PYTHONPATH=/opt/ros/hydro/lib/python2.7/site-packages
|
||||
export ROS_MASTER_URI=http://localhost:11311
|
||||
export CMAKE_PREFIX_PATH=/usr
|
||||
touch /usr/.catkin
|
||||
export CMAKE_PREFIX_PATH=/opt/ros/hydro
|
||||
touch /opt/ros/hydro/.catkin
|
||||
|
||||
Finally, you can start roscore with
|
||||
|
||||
|
|
|
@ -7,11 +7,13 @@ inherit cmake distutils-base ros faulty-solibs
|
|||
DEPENDS_prepend = "${@['catkin-native ', ''][d.getVar('BPN', True) == 'catkin']}"
|
||||
|
||||
EXTRA_OECMAKE_CATKIN = "\
|
||||
-DCMAKE_PREFIX_PATH='${STAGING_DIR_HOST}/usr;${STAGING_DIR_NATIVE}/usr' \
|
||||
-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}' \
|
||||
"
|
||||
|
||||
EXTRA_OECMAKE_CATKIN_class-native = "\
|
||||
-DCMAKE_PREFIX_PATH=${STAGING_DIR_NATIVE}/usr \
|
||||
-DCMAKE_PREFIX_PATH='${ros_prefix}' \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH='${ros_prefix}' \
|
||||
-DRT_LIBRARY=${libdir_native} \
|
||||
"
|
||||
|
||||
|
@ -29,7 +31,6 @@ export BUILD_SYS
|
|||
export HOST_SYS
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS += "catkin_sysroot_preprocess"
|
||||
|
||||
catkin_sysroot_preprocess () {
|
||||
sysroot_stage_dir ${D}${prefix}/etc ${SYSROOT_DESTDIR}${prefix}/etc
|
||||
sysroot_stage_dir ${D}${ros_sysconfdir} ${SYSROOT_DESTDIR}${ros_sysconfdir}
|
||||
}
|
||||
|
|
|
@ -7,20 +7,55 @@ ROS_BPN = "${@d.getVar('BPN', True).replace('-', '_')}"
|
|||
ROS_SPN ?= "${ROS_BPN}"
|
||||
ROS_SP = "${ROS_SPN}-${PV}"
|
||||
|
||||
export ros_prefix = "/opt/ros/${ROSDISTRO}"
|
||||
ros_prefix_virtclass-native = "${STAGING_DIR_NATIVE}/opt/ros/${ROSDISTRO}"
|
||||
|
||||
export ros_bindir = "${ros_prefix}/bin"
|
||||
export ros_libdir = "${ros_prefix}/${baselib}"
|
||||
export ros_libexecdir = "${ros_libdir}/${ROS_BPN}"
|
||||
export ros_includedir = "${ros_prefix}/include"
|
||||
export ros_datadir = "${ros_prefix}/share"
|
||||
export ros_sysconfdir = "${ros_prefix}/etc"
|
||||
export ros_stacksdir = "${ros_prefix}/stacks"
|
||||
|
||||
PREPROCESS_RELOCATE_DIRS += " \
|
||||
${ros_bindir} \
|
||||
${ros_libdir} \
|
||||
"
|
||||
|
||||
PKG_CONFIG_PATH .= ":${PKG_CONFIG_DIR}:${STAGING_DIR_HOST}${ros_libdir}/pkgconfig:${STAGING_DATADIR}/pkgconfig"
|
||||
PYTHON_SITEPACKAGES_DIR = "${ros_libdir}/${PYTHON_DIR}/site-packages"
|
||||
export PYTHONPATH = "${STAGING_DIR_NATIVE}${PYTHON_SITEPACKAGES_DIR}"
|
||||
PYTHONPATH_virtclass-native = "${PYTHON_SITEPACKAGES_DIR}"
|
||||
|
||||
FILES_${PN} += "\
|
||||
${prefix}/etc \
|
||||
${datadir}/ros/config/${ROS_BPN}.config \
|
||||
${datadir}/ros/core/${ROS_BPN} \
|
||||
${datadir}/${ROS_BPN} \
|
||||
${ros_bindir}/* ${ros_libexecdir}/* ${ros_libdir}/lib*.so \
|
||||
${PYTHON_SITEPACKAGES_DIR} \
|
||||
${ros_datadir} \
|
||||
${ros_sysconfdir} \
|
||||
${ros_stacksdir} \
|
||||
"
|
||||
|
||||
FILES_${PN}-dev += "\
|
||||
${ros_includedir} \
|
||||
${ros_libdir}/pkgconfig \
|
||||
${PYTHON_SITEPACKAGES_DIR}/*.la \
|
||||
${ros_datadir}/${ROS_BPN}/cmake \
|
||||
${datadir}/${ROS_BPN}/cmake \
|
||||
${datadir}/${ROS_BPN}/*.template \
|
||||
"
|
||||
|
||||
FILES_${PN}-dbg += "\
|
||||
${libdir}/${ROS_BPN}/.debug/* \
|
||||
${ros_bindir}/.debug ${ros_libexecdir}/.debug ${ros_libdir}/.debug \
|
||||
${ros_datadir}/*/bin/.debug \
|
||||
${PYTHON_SITEPACKAGES_DIR}/.debug \
|
||||
${PYTHON_SITEPACKAGES_DIR}/*/.debug \
|
||||
${PYTHON_SITEPACKAGES_DIR}/*/*/.debug \
|
||||
"
|
||||
|
||||
FILES_${PN}-staticdev += "\
|
||||
${ros_libdir}/*.a \
|
||||
${ros_libdir}/${BPN}/*.a \
|
||||
"
|
||||
|
||||
PACKAGES += "${PN}-commonlisp"
|
||||
|
@ -28,3 +63,19 @@ PACKAGES += "${PN}-commonlisp"
|
|||
FILES_${PN}-commonlisp += " \
|
||||
${datadir}/common-lisp/ \
|
||||
"
|
||||
|
||||
SYSROOT_PREPROCESS_FUNCS += "ros_sysroot_preprocess"
|
||||
ros_sysroot_preprocess () {
|
||||
sysroot_stage_dir ${D}${ros_includedir} ${SYSROOT_DESTDIR}${ros_includedir}
|
||||
if [ "${BUILD_SYS}" = "${HOST_SYS}" ]; then
|
||||
sysroot_stage_dir ${D}${ros_bindir} ${SYSROOT_DESTDIR}${ros_bindir}
|
||||
sysroot_stage_dir ${D}${ros_sysconfdir} ${SYSROOT_DESTDIR}${ros_sysconfdir}
|
||||
fi
|
||||
if [ -d ${D}${ros_libdir} ]; then
|
||||
sysroot_stage_libdir ${D}${ros_libdir} ${SYSROOT_DESTDIR}${ros_libdir}
|
||||
fi
|
||||
sysroot_stage_dir ${D}${ros_datadir} ${SYSROOT_DESTDIR}${ros_datadir}
|
||||
if [ -d ${D}${ros_stacksdir} ]; then
|
||||
sysroot_stage_dir ${D}${ros_stacksdir} ${SYSROOT_DESTDIR}${ros_stacksdir}
|
||||
fi
|
||||
}
|
||||
|
|
|
@ -9,3 +9,5 @@ BBFILE_PATTERN_ros-layer := "^${LAYERDIR}/"
|
|||
BBFILE_PRIORITY_ros-layer = "7"
|
||||
|
||||
LICENSE_PATH += "${LAYERDIR}/licenses"
|
||||
|
||||
ROSDISTRO := "hydro"
|
||||
|
|
|
@ -5,4 +5,8 @@ LIC_FILES_CHKSUM = "file://package.xml;beginline=14;endline=14;md5=d566ef916e9de
|
|||
|
||||
DEPENDS = "rospy tf2"
|
||||
|
||||
EXTRA_OECMAKE += "\
|
||||
-DCMAKE_SKIP_RPATH=ON \
|
||||
"
|
||||
|
||||
require geometry-experimental.inc
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
SRC_URI = "https://github.com/bmwcarit/${ROS_SPN}/archive/${PV}.tar.gz;downloadfilename=${ROS_SP}.tar.gz"
|
||||
SRC_URI[md5sum] = "8fbf5ff2bd671584da27272d45e11bc9"
|
||||
SRC_URI[sha256sum] = "0b36c6ee0035ab8c5c5e048d6a66bd83a55bcfe1d8ec6150fa8e62cab9fc4c4d"
|
||||
SRC_URI[md5sum] = "350c87a343c6657bc1516b4c7437a6c0"
|
||||
SRC_URI[sha256sum] = "2c6f17e4f84ef0f9663d0ced05417501dc770961951e4cd13871b75adbb8c72a"
|
||||
|
||||
S = "${WORKDIR}/${ROS_SP}/${ROS_BPN}"
|
||||
|
||||
|
|
Loading…
Reference in New Issue