Ask Your Question
1

catkin command for rosbuild_invoke_rospack(${PROJECT_NAME} ${_prefix} DIRS depends-manifests)

asked 2013-08-01 00:46:28 -0500

Kei Okada gravatar image

I'm currently working to update our package from from rosbuild to catkin and would like know how to write get list of packages that depends on current target package.

in the rosbuild system, we used following command and we're looking for the equivalent function/procedure in catkin system.

rosbuild_invoke_rospack(${PROJECT_NAME} ${_prefix} DIRS depends-manifests)

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2013-08-01 06:49:47 -0500

Dirk Thomas gravatar image

The catkin migration guide (http://ros.org/wiki/catkin/migrating_from_rosbuild#line-95) says "do not do this". Conceptually a package should not query its downstream dependencies.

Could you describe why you have been doing this before? Perhaps there is another way to get to the same goal.

edit flag offensive delete link more

Comments

thanks, we have defined idl message compilation helper cmake functions, that searches all downlostreamy dependent directories with ./idl folder and compile them https://code.google.com/p/rtm-ros-robotics/source/browse/trunk/rtmros_common/rtmbuild/#rtmbuild%2Fcmake

Kei Okada gravatar image Kei Okada  ( 2013-08-01 13:18:22 -0500 )edit

Without further information I would just guess that this should be handled differently. Message generation is very similar to this an genmsg/genpy/gencpp provide cmake functions and additional scripts to perform the generation. But each downstream package explicitly invokes the generation for its messages. That also makes it more in line with the goal that the result should be bundled within each package (and not with the generator).

Dirk Thomas gravatar image Dirk Thomas  ( 2013-08-01 13:30:34 -0500 )edit

Ok, but how about [1] case, To invoke message generation for each downstream package, for custom client library which is not available as ubuntu system package? [1] http://ros-users.122217.n3.nabble.com/Shared-installation-wiki-page-td1313245.html

Kei Okada gravatar image Kei Okada  ( 2013-08-01 14:05:29 -0500 )edit

The clean way is to write a generator and build all message packages from source to also generate messages with your custom generator. Otherwise I don't see a good way to perform clean dependencies and checking for rebuilds.

Dirk Thomas gravatar image Dirk Thomas  ( 2013-08-01 14:12:04 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2013-08-01 00:46:28 -0500

Seen: 81 times

Last updated: Aug 01 '13