Skip to content
This repository has been archived by the owner on Nov 13, 2017. It is now read-only.

catkin_lint and cleanup #305

Merged
merged 12 commits into from
Jul 7, 2016
Merged

catkin_lint and cleanup #305

merged 12 commits into from
Jul 7, 2016

Conversation

v4hn
Copy link
Contributor

@v4hn v4hn commented Jul 4, 2016

See #298.

This can not simply be cherry-picked to jade-devel,
so I'll open a new request for that once this one is merged.

v4hn added 7 commits July 3, 2016 22:01
This makes it possible to find something in there :)
lint complained that REQUIRED was missing and orocos_kdl wasn't even include_dir'ed
catkin_lint pointed that out.
This is discouraged use and users who put their libraries some place else,
have to register them in the system more low-level than within cmake
(e.g. LD_LIBRARY_PATH).
find_package(catkin REQUIRED
COMPONENTS
moveit_msgs
resource_retriever
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you intend to remove this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, you might want to look through the different commits for this request.
resource_retriever is not referenced in moveit_core.

@davetcoleman
Copy link
Member

Seems like big dependency changes like this maybe should be reserved for less stable releases (jade/kinetic) so as to prevent the risk of breaking other's builds who are incorrectly depending on included dependencies from this package. But I'm open to debating this.

Also you are switching to Eigen3 for indigo which we've already done for Jade. Maybe that shouldn't be in this commit? Especially since Travis is failing because of it

+1 to catkin linting the moveit codebase!

@v4hn
Copy link
Contributor Author

v4hn commented Jul 5, 2016

I do not get why travis is failing because of Eigen3.
ubuntu 14.04 already provides /usr/share/cmake-2.8/Modules/FindEigen3.cmake in libeigen3-dev and this is referenced in the package.xml as eigen.
This is why I moved to find_package(Eigen3).
@130s do you have an explanation for that?

@v4hn
Copy link
Contributor Author

v4hn commented Jul 5, 2016

On Tue, Jul 05, 2016 at 01:19:40PM -0700, Dave Coleman wrote:

Seems like big dependency changes like this maybe should be reserved for less stable releases (jade/kinetic) so as to prevent the risk of breaking other's builds who are incorrectly depending on included dependencies from this package. But I'm open to debating this.

Actually, although it looks like big changes, it is actually not.
It's mainly sorting entries, adding stuff that was missing to find_package(catkin COMPONENTS and catkin_package(CATKIN_DEPENDS
and correcting previously broken entries. The only relevant changes that might have to be discussed are
the removed dependencies on cmake_modules and actionlib_msgs.
The rest is actually additions of missing dependencies.

The line removing resource_retriever that you pointed out in find_package(catkin,
was not even present in the package.xml, so it was a plain error that travis did not pick up.

@v4hn
Copy link
Contributor Author

v4hn commented Jul 5, 2016

One thing I'm still unsure about is whether C/C++-only ros-packages have to specify run_depends
on the *_msgs packages they use. For Python they are probably required, but for C++ all message definitions are compiled into the binaries, so as far as I can see these can/should be removed in this case. Any ideas?

@davetcoleman
Copy link
Member

whether C/C++-only ros-packages have to specify run_depends on the *_msgs packages they use

I'm afraid I do not know

@130s
Copy link
Contributor

130s commented Jul 6, 2016

https://travis-ci.org/ros-planning/moveit_core/jobs/142586748#L2018 for indigo (and for jade it looks the same).

Errors     << moveit_core:cmake /home/travis/ros/ws_moveit/logs/moveit_core/build.cmake.000.log
CMake Error at /home/travis/ros/ws_moveit/src/moveit_core/CMakeLists.txt:13 (find_package):
  By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "Eigen3", but
  CMake did not find one.
  Could not find a package configuration file provided by "Eigen3" with any
  of the following names:
    Eigen3Config.cmake
    eigen3-config.cmake

I don't have a clear answer, but we've already got stuck and chose not to dig deeper #293 (comment).
Do you use catkin_make locally when you test this PR? These Travis jobs use catkin_tools. I wonder if there's a case where catkin_tools does not set CMAKE_MODULE_PATH but I'm not sure.

v4hn added 5 commits July 6, 2016 17:01
catkin_lint complains about this and it's a somewhat valid complain...
catkin_lint (rightfully) complains about this block that might
change CMAKE_BUILD_TYPE. Even so, without this block most people using
the git checkout (building locally) would wonder why MoveIt! is so slow
as they didn't specify Release build. So this will stay in here.
Nevertheless I suppose it's a good idea to leave a notice on the changed
build type in the logs.
... with other ROS-external packages.
@v4hn
Copy link
Contributor Author

v4hn commented Jul 6, 2016

en Wed, Jul 06, 2016 at 04:50:34AM -0700, Isaac I.Y. Saito wrote:

Do you use catkin_make locally when you test this PR?
These Travis jobs use catkin_tools.

That's probably the difference.

I wonder if there's a case where catkin_tools does not set CMAKE_MODULE_PATH but I'm not sure.

Afaik cmake automatically includes its own Modules folder, so maybe catkin_tools specifies some
magic flag to disable that behavior (whyever anyone understanding build systems would do that...).

I removed the Eigen3 changes from this request as well as the one in geometric_shapes to avoid this bug/discussion.
I'm perfectly fine with having cmake_modules as a dependency in indigo, I was just trying to get rid of old overhead.

Anything else?

@davetcoleman
Copy link
Member

+1 indigo onward

@davetcoleman davetcoleman merged commit 54b88fe into moveit:indigo-devel Jul 7, 2016
@davetcoleman
Copy link
Member

don't forget to cherry-pick this complicated commit

@v4hn
Copy link
Contributor Author

v4hn commented Jul 7, 2016

On Thu, Jul 07, 2016 at 11:49:37AM -0700, Dave Coleman wrote:

don't forget to cherry-pick this complicated commit

See my first message in this request :)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants