In special situations, the prefix used by yocto is prefixed by an
additional staging dir and thus not always starting at /. The current
class already covered the special case for building native packages, but
was erroneous when trying to build nativesdk packages.
Instead of dealing with these special cases ourselves, we can prefix the
ros_prefix with yocto's base_prefix. This prefix will contain any
additional dirs yocto decides to use and will therefore always result in
valid directory variables automatically.
Following standard convention, place ROS/Catkin packages under the
prefix /opt/ros/${ROSDISTRO} (exported as ${ros_prefix}) rather than in
the usual ${prefix}.
This commit provides the autotools-brokensep class and uses it for
the log4cxx recipe.
The autotools-brokensep indicates that the log4cxx currently cannot
handle out-of-source builds, and hence the in-source build must be
kept until this is resolved.
The autotools-brokensep class is a copy of the autotools-brokensep
class provided in the openembedded-core commit 006b8a78 [1].
To make this commit backwards compatible to even earlier versions
of openembedded-core, we provide this class in meta-ros ourselves.
[1] http://cgit.openembedded.org/openembedded-core/commit/?id=006b8a7808a58713af16c326dc37d07765334b12
The native packages are not required anymore, because the needed
python scripts during compile time are also provided by the
cross-compiled packages and the python scripts are platform
independent. Only the catkin package is provided as native package.
The new definition was the original intention, and the originally
wrong definition happened to slip in.
Initial commit and discussion about the intention is in commit
c6837ecbf8.
In the topic-tools recipe, a QA error was raised as the .debug files were put
into the main package. By adding this line in the catkin class, the files are
now placed in the dbg package.
The CMake generate_messages function from the genmsg package
detects the installed message generators via files in the
/usr/etc/ros/genmsg directory. Stage the /usr/etc directory
manually as it is not a common path.
Fixed#50
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Add additonal file entries with standard ros paths to fix the following warnings:
WARNING: QA Issue: std-msgs: Files/directories were installed but not shipped
/usr/share/std_msgs/msg
WARNING: QA Issue: rosconsole: Files/directories were installed but not shipped
/usr/share/ros/config/rosconsole.config
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Build catkin packages out of tree as this is the default of ros and
makes it simple to identify build paths.
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
Remove all ${BPN} file entries as catkin packages always use
underlines instead of hyphens.
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>