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

explicitly link rviz' default_plugin library - indigo request #658

Merged
merged 1 commit into from
Mar 30, 2016

Conversation

v4hn
Copy link
Contributor

@v4hn v4hn commented Mar 29, 2016

This is the indigo version of #657. Feel free to cherry-pick
the commit to indigo instead of merging this request.

The library is not exported anymore and now is provided separately from
rviz_LIBRARIES. See ros-visualization/rviz#979 for
details.

The library is not exported anymore and now is provided separately from rviz_LIBRARIES.
See ros-visualization/rviz#979 for details.
@k-okada
Copy link
Contributor

k-okada commented Mar 30, 2016

This fixes #654, merge please!

@dornhege
Copy link
Contributor

This does not seem to build with catkin_make (but with catkin build), because the generated target cmake file is build at compile time, but required at cmake configuration time.

I will merge this now as it is an improvement and should remove the regression in the build farm.

@dornhege dornhege merged commit 1d80d2f into moveit:indigo-devel Mar 30, 2016
@v4hn
Copy link
Contributor Author

v4hn commented Mar 30, 2016

@dornhege: you're right. This only resolves the problem with catkin_make_isolated
and for cases where rviz is already installed before compiling moveit_ros.

The CFG_EXTRAS mechanism @wjwwood pulled out of his magic hat seems to be broken w.r.t. that.
Maybe one could also export the real library target as rviz_DEFAULT_PLUGIN_LIBRARIES in rviz' CMakeLists.txt?
I'm not sure there's a clean solution for the general issue though.

Anyways, this solves most of the use-cases. rviz is usually only
in the core system that must be built with catkin_build_isolated afair.

Thanks for merging.

@wjwwood
Copy link
Contributor

wjwwood commented Mar 30, 2016

I can put the default plugins in the exported targets maybe. I'd have to think about that some more.

The problem with getting the library name at configure time is that CMake doesn't actually know it, or in the future it won't, until generation is done, which is why they introduced generator expressions.

@wjwwood
Copy link
Contributor

wjwwood commented Mar 30, 2016

Actually I think I can just put the target in the rviz_DEFAULT_PLUGIN_LIBRARIES cmake variable within the rviz CMakeLists.txt. That way with catkin_make the rviz_DEFAULT_PLUGIN_LIBRARIES will be defined and point to the right target.

@wjwwood
Copy link
Contributor

wjwwood commented Mar 30, 2016

I opened ros-visualization/rviz#983 as a potential solution.

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.

4 participants