Commit Graph

35 Commits

Author SHA1 Message Date
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
Lukas Bulwahn 0628f2661f ros: updating to 1.11.14 2017-03-19 21:59:47 +01:00
Lukas Bulwahn ccc01e6c3a ros: updating to 1.11.13 2016-09-02 08:31:58 +02:00
Lukas Bulwahn dd467b02ac ros: updating to 1.11.12 2016-06-14 11:28:46 +02:00
Lukas Bulwahn 5f7ae4cfda ros: updating to 1.11.11 2015-10-26 07:25:36 +01:00
Lukas Bulwahn 0b7ccf2a69 ros: updating to 1.11.9 2015-10-12 05:23:28 +02:00
Lukas Bulwahn 9ba75d83aa ros: updating to 1.11.8 2015-06-13 16:02:52 +02:00
Andreas Baak 185882428c catkin: split up catkin in order to reduce runtime dependencies
The catkin package has got a runtime dependency to cmake, make,
gcc and other build utilities. These dependencies, however, are
only needed if it is desired to build with catkin on the target
board. If we do not want to build on the target board, i.e., if
we just want to use ros tools like roslaunch, only a small part
of catkin (i.e., the corresponding python packages) is required
to be deployed on the target board.
Therefore, we introduce a new package called catkin-runtime.
It installs only the python packages that are required for
the ros tools to run. The roslib package now depends on
catkin-runtime (previously: catkin).

I also tried an alternative approach which just modifies catkin.bb:
- add a catkin-runtime package
- move PYTHON_SITEPACKAGES_DIR from FILES_catkin to FILES_CATKIN_RUNTIME
- make catkin_runtime RDEPEND on the python stuff
- make catkin RDEPEND on the cmake, binutils, ..., + catkin-runtime
With this setup, for some reason, bitbake thinks that
catkin-runtime still RDEPENDS on binutils. Therefore, I split up
the catkin recipe into two different recipes. Here, the
RDEPENDS are managed correctly.

If we want to deploy catkin as a build tool on the board, we can
simply add a runtime dependency to catkin. However, this should
not be the default setup.
Special thanks go to Tobias Henkel (tobias.henkel@bmw-carit.de)
who deserves most of the credits for this patch.

Signed-off-by: Andreas Baak <andreas.baak@bmw-carit.de>
2015-03-02 13:22:06 +01:00
Lukas Bulwahn a1153b8ce8 rosclean: simplifying run-time dependencies
When roslaunch is started, it checks the file size of the local log
directory by calling:

    disk_usage = rosclean.get_disk_usage(d) [1]

The function `get_disk_usage` [2] in rosclean creates a subprocess and
calls `du -sb` on Linux systems (cf. [3]).

However, the `du` command, which busybox usually provides on an
embedded Linux image, does not support the `-b` option, and only the
`du` command from the coreutils [4] supports this option.
This issue was first reported in April 2013 on the meta-ros issue
tracker [5]. Hence, on the first iteration of this issue, the
commit db0c8d5c [6] simply adds the dependency on coreutils to
roslaunch.

However, this has certain disadvantages:
  - coreutils is licensed under GPLv3 and must not be deployed in a
    product, which is massively distributed to customers.
  - coreutils has larger file-system foot print than busybox and makes
    the minimal Linux images considerably larger.

As a fortuitous circumstance, Alexis Ballier [7] had already observed
this disadvantage and provides a patch [8, 9] that makes
`get_disk_usage` use `du -k`, which works with busybox and coreutils.

So, on the second iteration of this issue, this commit here patches
rosclean's `get_disk_usage` function with the aforementioned patch.
This slightly modifies the semantics of this function. However, I
believe this plays only a minor role for the overall intended
functionality to check if the log usage has reached a critical file-size
limit, and it allows us to remove the dependency on coreutils, which is
much more critical.

Andreas Baak reported the disadvantages of the previous solution, which
triggered the re-investigation. The current resolution has been
discussed and worked out in collaboration with Andreas Baak.

[1] 9da29441f3/tools/roslaunch/src/roslaunch/rlutil.py (L63)
[2] c6e91f9af1/tools/rosclean/src/rosclean/__init__.py (L120)
[3] c6e91f9af1/tools/rosclean/src/rosclean/__init__.py (L130)
[4] http://cgit.openembedded.org/cgit.cgi/openembedded-core/tree/meta/recipes-core/coreutils/coreutils_8.23.bb?h=master
[5] https://github.com/bmwcarit/meta-ros/issues/60
[6] db0c8d5cd1
[7] https://github.com/aballier
[8] https://github.com/ros/ros/pull/76
[9] bbf1f945c7

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
Signed-off-by: Andreas Baak <andreas.baak@bmw-carit.de>
2015-03-02 13:21:44 +01:00
Lukas Bulwahn eb0e7ce025 ros: updating to 1.10.11 2015-01-21 09:23:17 +01:00
Lukas Bulwahn a78a31afc6 ros: updating to 1.10.10 2014-06-23 09:27:09 +02:00
Lukas Bulwahn fc350a5437 ros: updating to 1.10.9 2014-03-03 08:12:12 +01:00
Lukas Bulwahn c8abc16d09 ros: updating to 1.10.8 2013-10-21 07:54:35 +02:00
Lukas Bulwahn d645493fe4 ros: updating to 1.10.7
The ros recipes are updated to 1.10.7 to be in line with
ef3a7449d7/hydro/release.yaml.
2013-10-11 10:42:21 +02:00
Lukas Bulwahn aa2ce283b6 removing native packages and dependencies
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.
2013-09-23 09:56:18 +02:00
Lukas Bulwahn 55f692a5b3 ros: updating to 1.10.6
The ros recipes are updated to 1.10.6 to be in line with
4551e7c32d/hydro/release.yaml.
The previously applied patch has been included in 1.10.6 and is
removed from the recipe and this repository.
2013-08-26 10:57:16 +02:00
Stefan Herbrechtsmeier c19a3f1707 ros: Backport relocation changes
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
2013-08-26 07:40:21 +02:00
Stefan Herbrechtsmeier 3e6b386d2f Unify ros recipes
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
2013-08-26 07:40:20 +02:00
Lukas Bulwahn a0a2aa9eaf tuning newlines 2013-08-05 08:12:20 +02:00
Lukas Bulwahn 1b746e8d45 ros: removing superfluous definitions 2013-08-05 08:12:20 +02:00
Lukas Bulwahn 785eae0216 ros: updated to hydro release version
The rosunit patch required some minor adjustments.
2013-07-22 15:53:38 +02:00
Lukas Bulwahn 2624af109a rosbash: adding run-time dependencies
The rosbash tools does not run with the BusyBox shell, and requires
the bash and the common find utility.
2013-05-17 14:20:04 +02:00
Lukas Bulwahn 9866e59447 roslib: adding runtime dependencies 2013-04-04 13:05:15 +02:00
Stefan Herbrechtsmeier 2f1fde1189 Use native dependencies for binaries and python scripts
All ROS packages with install tools in the bin directory or install
python code with is used by other packages should be used as native
version. Adapte the DEPENDS accordingly.

Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
2013-03-14 11:36:35 +01:00
Lukas Bulwahn 29fdf17343 Adding initial untested recipes
The recipes were created by manually extracting the information
from the corresponding package.xml.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2013-03-04 08:44:13 +01:00
Lukas Bulwahn 754740fe18 Removed discontinued work of cross-compiling ROS fuerte
After the release of ROS groovy, there is no strong reason to
continue to work on the cross-compilation of the previous ROS
version fuerte. Hence, this commit removes the initial
non-functioning recipe and the reference in the README file.

For cross-compiling ROS fuerte, the repository at
https://github.com/yida/yida-collections
might be a better starting point anyway.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2013-03-04 07:37:29 +01:00
Lukas Bulwahn 62c767058c Merge branch 'master' of https://github.com/bmwcarit/meta-ros 2013-03-01 15:11:02 +01:00
Stefan Herbrechtsmeier 5b4a5d25c2 rosunit: Search rosunit in the native sysroot
Cmake should search in the native sysroot for rosunit. Remove
NO_CMAKE_FIND_ROOT_PATH from the find_program call to allow
cmake to search in the native sysroot.

Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
2013-02-28 13:17:50 +01:00
Lukas Bulwahn f57416b65a roslang: initial untested recipe by manually extracting meta data from package.xml 2013-02-26 11:19:39 +01:00
Stefan Herbrechtsmeier ab7738a3b4 ros: use include file and unify recipes
Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
2013-02-15 16:02:38 +01:00
Lukas Bulwahn a107c93090 adding a bunch of ros recipes, but they still come with a couple of unsolved issues 2013-02-08 14:16:26 +01:00
Lukas Bulwahn a7680708ac removed obsolete preconfigure in ros recipe 2013-01-02 10:07:06 +01:00
Lukas Bulwahn 4af57644ac describing the current error of the ros package; experimenting with ros package 2012-12-21 09:06:37 +01:00
Lukas Bulwahn 8dc7120e5e adjusting ros recipe 2012-12-20 15:54:45 +01:00
Lukas Bulwahn 86850d5c35 moved files to more appropriate place 2012-12-20 14:25:55 +01:00