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 marker file should not be created when --source is non-default #653

Closed
tkruse opened this issue Jun 11, 2014 · 2 comments
Closed
Labels

Comments

@tkruse
Copy link
Member

tkruse commented Jun 11, 2014

For discussion. Catkin has no true notion of a workspace folder, it only know source space, devel space, install space, and so on.
We still talk about the workspace root folder because that is the most common, standard and default catkin_make usage pattern. However catkin_make also allows invoking catkin_make on some target folder using --source. I believe in that case, the tool cannot guess which folder should be the workspace root (it would be different if there was an argument like --target-workspace pointing to the intended workspace root), and should not write any marker file.

So minimally catkin marker file creation should be suppressed (maybe with warning) when the --source argument was given. The same applies to cmi.

An alternative would be to put the marker file into the source folder instead of the workspace root. This alone however would defeat the purpose of easily locating the parent folder from which catkin_make can be invoked, since the tool cannot assume that the parent of a source-space is intended as a workspace root (same reasons as above).

@dirk-thomas
Copy link
Member

Currently cmi command has a workspace argument which defaults to the current directory (

add('-C', '--directory', dest='workspace', default=os.curdir,
). So the location of the workspace root is defined clearly. That is the location where the marker file is placed and it enables that the command can be invoked anywhere below this path.

All command line arguments are resolved relative to the workspace root. Placing the marker file in the source folder instead is therefore not really an option since the tool would not be able to find the workspace root anymore.

Also by passing a different source folder (e.g. --source my-src) the current behavior does not automatically become invalid. Therefore I don't think the marker file should be skipped when a source argument is passed.

@tkruse
Copy link
Member Author

tkruse commented Jun 11, 2014

That's a valid way of seeing things (though I am not 100% convinced), so you may close this issue as invalid or wont fix as far as I am concerned.

cwecht pushed a commit to cwecht/catkin that referenced this issue Mar 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants