Commit Graph

1025 Commits

Author SHA1 Message Date
KristofRobot fd9394c287 Merge pull request #321 from bulwahn/master-next
changes to create version 0.2-rc3
2015-05-05 18:25:05 +02:00
Lukas Bulwahn 4a941b3ba4 catkin: improve formatting
During some code inspections, I discovered that two consecutive
empty lines slipped in with the commit 185882428c.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-05-05 07:11:56 +02:00
Lukas Bulwahn f87cca4ce6 geometric-shapes: updating to 0.3.9 2015-05-04 14:03:04 +02:00
Lukas Bulwahn a5f624e374 navigation: updating to 1.11.16 2015-05-04 14:03:04 +02:00
Lukas Bulwahn 745a532051 freenect-stack: updating to 0.3.3 2015-05-04 14:03:03 +02:00
Lukas Bulwahn 7d5d5bfb25 laser-assembler: updating to 1.7.3
Due to the update, this commit also drops the upstream patch.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-05-04 14:01:45 +02:00
Lukas Bulwahn 49af8b3d80 frontier-exploration: updating to 0.2.5
Due to the update, the pointer to the license line is adjusted.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-05-04 14:00:27 +02:00
Lukas Bulwahn eebcb7c6f7 frontier-exploration: point to license provided in package.xml
The frontier-exploration recipe stated that the software is under
BSD license, probably due to a copy-and-paste inattention. The
commit now points to the license line for version 0.2.2 and changes
the license to GPLv3, which is stated in the package.xml.
Strangely, the package.xml states that the frontier_exploration
ROS package is licensed under GPLv3, but the license text in the
LICENSE file is the GPLv2.1 terms and conditions; so the actual
intended license by the copyright holders remain unclear.
However, assuming the conditions for GPLv3 must be fulfilled
for usage and distribution is a 'safe' approximation, even if
the conditions for GPLv2.1 apply.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-05-04 13:31:05 +02:00
Lukas Bulwahn d63e4fee33 ar-track-alvar: updating to 0.4.2
With the poky-dizzy distribution, the do_rootfs task for
core-image-ros-world fails with:

  ERROR: Unable to install packages. Command '/[...]/build/tmp/sysroots/x86_64-linux/usr/bin/smart --quiet --data-dir=/[...]/core-image-ros-world/1.0-r0/rootfs/var/lib/smart install -y run-postinsts@all packagegroup-core-boot@beaglebone packagegroup-ros-world@all' returned 1:
  error: Can't install ar-track-alvar-0.4.1-r0@cortexa8hf_vfp_neon: no package provides libmedianFilter.so

Build Configuration: poky 1.7.1;
  poky: "dizzy:ec75238f6cc2d2d8d40e0268f6d2acc070cbe9a4";
  meta-openembedded: "dizzy:9efaed99125b1c4324663d9a1b2d3319c74e7278"

To resolve this problem, this commit updates ar-track-alvar to the
latest Hydro version 0.4.2. Unfortunately, there is no archive file
for version 0.4.2, so the recipe uses the git repository with the
commit intended to mark version 0.4.2 to fetch the source code.
Due to the update, this commit also removes the upstream-accepted
patch file from this repository here.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-04-09 10:27:58 +02:00
KristofRobot 312e6c4ddd Merge pull request #320 from bulwahn/master
libpoco: compiling with arm64 architecture
2015-04-08 18:17:43 +02:00
Lukas Bulwahn 68990c8c8d libpoco: compiling with arm64 architecture
During bitbaking core-image-ros-world for v0.2-rc1 release testing,
compiling libpoco for the qemuarm64 machine failed with:

  In file included from [...]/poco-poco-1.5.3-release/Foundation/src/diy-fp.h:31:0,
                   from [...]/poco-poco-1.5.3-release/Foundation/src/diy-fp.cc:29,
                   from [...]/poco-poco-1.5.3-release/Foundation/src/NumericString.cpp:23:
  [...]/poco-poco-1.5.3-release/Foundation/src/utils.h:72:2: error: #error Target architecture was not detected as supported by Double-Conversion.

This issue has been already been reported in the libpoco github issue
tracker [1] and has been resolved with a simple patch [2] in the libpoco
repository and libpoco releases since 1.5.4. Hence, this commit simply
adds this patch to the current libpoco recipe.

To address the libpoco issue, I also considered to update libpoco to
version 1.6.0. However, this was not possible as version 1.6.0 requires
CMake >= 3.0.0 and this would require updating cmake in
OpenEmbedded-Core, which has major impact on all layers. Also, updating
libpoco to 1.5.4 lead to a problem with the OpenEmbedded-Core-provided
pcre 1.5.36 and the POCO_UNBUNDLED setting during compilation:

  In file included from [...]/poco-poco-1.5.4-release/Foundation/src/RegularExpression.cpp:21:0:
  [...]/usr/include/pcre.h:325:26: error: conflicting declaration 'typedef struct real_pcre pcre'
  In file included from [...]/poco-poco-1.5.4-release/Foundation/src/RegularExpression.cpp:17:0:
  [...]/poco-poco-1.5.4-release/Foundation/include/Poco/RegularExpression.h:37:34: note: previous declaration as 'typedef struct real_pcre8_or_16 pcre'

This issue is probably caused by the commit 'PCRE 8.35.0 Update' [3],
which defines types from pcre 8.35 that are incompatible to pcre 8.36.

[1] https://github.com/pocoproject/poco/issues/508
[2] 9258e482d7.patch
[3] 010f7a5370.patch

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-04-07 06:47:54 +02:00
KristofRobot bdc603b821 Merge pull request #318 from bulwahn/master-next
resolving last major issue and last updates for 0.2-rc1
2015-03-30 22:22:54 +02:00
Lukas Bulwahn c31be9bd37 python-rosdep: adding new dependency due to update
When compiling python-rosdep before python-nose has been built,
'bitbake python-rosdep' fails with:

| distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('nose>=1.0')
| ERROR: python setup.py build_ext execution failed.
| WARNING: /[...]/build/tmp-glibc/work/i586-oe-linux/python-rosdep/0.11.0-r0/temp/run.do_compile.14813:1 exit 1 from
|   exit 1
| ERROR: Function failed: do_compile (log file is located at /[...]/build/tmp-glibc/work/i586-oe-linux/python-rosdep/0.11.0-r0/temp/log.do_compile.14813)
ERROR: Task 6 (/[...]/meta-ros/recipes-devtools/python/python-rosdep_0.11.0.bb, do_compile) failed with exit code '1'

In a recent commit in the rosdep repository [1], the dependency for
the rosdep setup on python's nose package is added. Hence, we must
also add this dependency in the rosdep recipe, which then resolves
the reported failure.

[1] fc8b56be07

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-03-30 17:36:12 +02:00
Lukas Bulwahn 3727c70ccf python: making bbappend files version independent
In the recent commit d4ad95f0 [1], the OpenEmbedded-Core repository
updated python from version 2.7.3 to 2.7.9. To make meta-ros
compatible to the latest commits, the bbappend files are renamed to
be version independent.

[1] http://cgit.openembedded.org/openembedded-core/commit/?id=d4ad95f0d5f08891637c644e85b09da9c4585059

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-03-30 09:26:14 +02:00
Lukas Bulwahn fdef05ee5e genlisp: updating to 0.4.15 2015-03-30 09:26:14 +02:00
Lukas Bulwahn be6640c11a razor-imu-9dof: updating to 1.1.0
In version 1.1.0, razor-imu-9dof depends on dynamic-reconfigure.
2015-03-30 09:23:19 +02:00
Lukas Bulwahn 40c4945b07 gscam: updating the patch's upstream status 2015-03-30 09:23:19 +02:00
Lukas Bulwahn beb467747d catkin: including root path in library search (addresses #291)
On the meta-ros issue tracker, the issue #291 reports a
linking problem with rosconsole if ROS Hydro is also installed
on the host system. Kristof investigated in that, and published
a patch [1] on September 27th, 2014, which resolved the rosconsole
issue, but showed issues with urdfdom.

After reading through the discussion of issue #291, I started
initial testing with Kristof's patch. After testing Kristof's
patch, I also investigated the urdfdom problem, and came up with
the solution to revert the part of his patch, which moved
`-DCMAKE_INSTALL_PREFIX:PATH='${ros_prefix}'` to ros.bbclass.

Initially, I believed that the issue that was addressed with
the second part of Kristof's patch, has been resolved with
commit 7e2eb25e51. However,
the issue remains, but is only reproducible with the Ubuntu
saucy distribution.

On my first local setup, I could reproduce the issue #291 with
rosconsole on commit 47eab4263c.
After applying this commit, the issue with rosconsole did not
occur anymore on a clean fresh build.
`bitbake packagegroup-ros-world` did not show any other further
issues.

On my second local setup, on a newly-installed Ubuntu 12.04
(precise) system, I checked that the proposed commit resolves
some linking problems to boost, with some latest
OpenEmbedded-Core repository and the poky-dizzy distribution.
A detailed report of the investigation of this second local
setup is at my Github Gist [2].

In the first review of the pull request #318, Kristof noticed
that on an Ubuntu 13.10 (saucy), an issue with message-filters
still occurs. I could not reproduce this and other reported
errors on the Ubuntu 12.04 system, so I believe certain errors
only appear on certain Ubuntu distributions, which makes them
difficult to pinpoint. Therefore, we decided to defer the
resolution of this problem with Ubuntu 13.10.

To adjust to the concurrent work in pull request #319, during
the rebasing, the patch has been moved from the catkin directory
to the files directory.

Kristof remains the author of the applied patch, as I have not
modified the patch. I have put myself as this author's commit,
as I take the responsibility of the modifications compared to
Kristof's original work and I have tested this commit in my
test setting.

[1] 9ff76ffb7a
[2] https://gist.github.com/bulwahn/a8d5b7c27550b399f866

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>

catkin: move to files directory (fixup)
2015-03-30 09:19:42 +02:00
Lukas Bulwahn 0b5907495d README.md: acknowledge recent contributors 2015-03-30 07:05:23 +02:00
Lukas Bulwahn 2ade7620c5 packagegroup-ros-world: completing package list 2015-03-09 11:21:12 +01:00
Lukas Bulwahn c1fcaff73b dwa-local-planner: updating patch's upstream status 2015-03-09 11:21:12 +01:00
KristofRobot 224b15a0b0 Merge pull request #319 from andreasbaak/master
Reduction of runtime dependencies
2015-03-03 18:36:27 +01: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
KristofRobot 47eab4263c Merge pull request #317 from bulwahn/master-next
tuning und updating
2015-02-20 19:58:08 +01:00
Lukas Bulwahn 9a5f1dbb1b laser-assembler: updating patch's upstream status 2015-02-20 15:05:19 +01:00
Lukas Bulwahn f11b591ac7 navigation: updating to 1.11.15 2015-02-20 15:05:19 +01:00
Lukas Bulwahn bdd682152a dwa-local-planner: improving linking in CMakeLists.txt
I discovered the linking issue while investigating #291.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-02-20 15:05:19 +01:00
KristofRobot ee404cf2b0 Merge pull request #316 from bulwahn/master-next
work on octomap and README.md
2015-02-18 14:06:22 +01:00
Lukas Bulwahn 37913b13b0 README.md: informing about setup for cv-bridge 2015-02-18 10:55:28 +01:00
Lukas Bulwahn 6eeb185b4c octomap: simplifying recipe
When I investigated the issue #291 with Kristof's patch applied,
I noticed that `bitbake octomap` failed.

Due to my inspection, I believe that the inheritance on ros
was only needed as the ROS_SPN and ROS_SP variables were used in
the recipe. After simply using the default variables, BPN and BP,
I removed the inheritance on ros.

Furthermore, as meta-ros only has one recipe for octomap base
library for now, we do not need to split the recipe definition
in an include and a recipe file.
Probably, this was done as premature optimization believing
that the libraries from the octomap repository, e.g., octovis,
would be added shortly after.

Testing with `bitbake packagegroup-ros-world` reported no errors.

Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de>
2015-02-18 10:55:28 +01:00
Lukas Bulwahn 80b853a27a Merge pull request #315 from KristofRobot/hector-mapping
hector-mapping: initial commit
2015-02-10 10:13:30 +01:00
Kristof Robot 30750e9578 hector-mapping: initial commit 2015-02-08 18:14:03 +01:00
Lukas Bulwahn e43e8c5f76 Merge pull request #314 from KristofRobot/frontier-exploration
frontier-exploration: initial commit
2015-01-31 13:07:28 +01:00
Kristof Robot 6dd53a4e65 frontier-exploration: initial commit 2015-01-31 11:07:39 +01:00
KristofRobot 25a1464796 Merge pull request #312 from bulwahn/master-next
updates and tuning until mid of January 2015
2015-01-21 21:47:04 +01:00
Lukas Bulwahn 6532fab678 python-wstool: updating to 0.1.5 2015-01-21 09:23:18 +01:00
Lukas Bulwahn 8137f62532 python-vcstools: updating to 0.1.36 2015-01-21 09:23:18 +01:00
Lukas Bulwahn 2722544c3f python-rospkg: updating to 1.0.33 2015-01-21 09:23:18 +01:00
Lukas Bulwahn 252eea1003 python-rosinstall: updating to 0.7.4 2015-01-21 09:23:17 +01:00
Lukas Bulwahn f23aabbdb2 python-rosdep: updating to 0.11.0 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 458bbd2d7d python-pyyaml: updating to 3.11 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 3f078157f3 python-netifaces: updating to 0.10.4 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 272e8655c0 python-empy: updating to 3.3.2 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 8f006d5c36 python-catkin-pkg: updating to 0.2.6 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 49fc3ef629 message-runtime: add missing dependency 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 3c6959aba3 gscam: adding patch to compile with boost 1.57 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 031ec5b504 pcl-ros: updating to 1.1.11 2015-01-21 09:23:17 +01:00
Lukas Bulwahn 20a1e98a36 ros-arduino-bridge: initial commit 2015-01-21 09:23:17 +01:00
Lukas Bulwahn d82de65305 ros-comm: updating to 1.10.12 2015-01-21 09:23:17 +01:00