Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

catkin_make older validation broken for certain layouts #361

Closed
tkruse opened this issue Feb 13, 2013 · 6 comments
Closed

catkin_make older validation broken for certain layouts #361

tkruse opened this issue Feb 13, 2013 · 6 comments
Assignees

Comments

@tkruse
Copy link
Member

tkruse commented Feb 13, 2013

to reproduce, in any folder (using catkin 0.5.63):

$  catkin_make --source .
$ catkin_make --source .
The specified base path "/tmp/catkin_ws" contains a CMakeLists.txt but "catkin_make" must be invoked in the root of workspace.

This may be solved by the new marker-file design anyway.

Also note that with that design, catkin is prone to find packages in the installspace.

There should at least be a warning if the user decides to put the installspace anywhere under the sourcespace (unless a CATKIN_IGNORE file protects installed packages from being found, e.g. by having catkin_ws/builds/CATKIN_IGNORE and catkin_ws/builds/installspace).

@tkruse
Copy link
Member Author

tkruse commented Feb 13, 2013

@dirk-thomas
Copy link
Member

Adding a CATKIN_IGNORE file in install space is not an option. Than tools like catkin_pkg would not find any packages anymore.

Instead catkin_make(_isolated) should exclude the install space from the search for packages.

@tkruse
Copy link
Member Author

tkruse commented Feb 14, 2013

What I said was not putting CATKIN_IGNORE in the install space, but above the install space, yet under the sourcespace.

@dirk-thomas
Copy link
Member

How should that look like when source space is in the root of the workspace and install space in a subfolder install?

@tkruse
Copy link
Member Author

tkruse commented Feb 14, 2013

In that case it would not work, obviously. Ignoring the installspace is okay when there is just one installspace, but fails when a user has more than one installspace. Which is why users should be encouraged to use a location for installspaces that is safe from being found under the sourcespace, such as by having an intermediate folder with CATKIN_IGNORE. I like the ignoring as a solution for now, though.

@dirk-thomas
Copy link
Member

We should not recommend to use intermediate folders and place CATKIN_IGNORE files in there. These tools are intended to simplify the commands for beginners. They should work out-of-the-box and make life easier when the user follows the default layout.

The latest patch lets cm and cmi ignore any subspace under source.

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

No branches or pull requests

2 participants