[CMake] Trouble with CMake + Eclipse + SVN/CVS
Mike Jackson
imikejackson at gmail.com
Wed Oct 17 10:14:37 EDT 2007
I agree that there are some conflicting philosophies here. I am a bit
more practical about this. I just need to get my work done.
CMake's philosophy of "out-of-source" builds is great. I agree with
it whole heartedly. The problem is that this does not always work in
the world we live in. I can get "pretty close" to out-of-source
builds by creating the "Build" folder within the source. It is easy
enough to put this folder on a CVS ignore list. As for the eclipse
project files, same thing goes for those. I put them on the CVS
ignore list and don't worry about it. CDT projects do not usually
work for my team for several reasons so we do not use them.
Most most people the out-of-source build strictness is OK. For the
rest of us, CMake is just flexible enough to allow me to create a
programming environment and workflow that "works for me". If it works
for others then great. If it does not, then fine. I at least like to
make those new to Eclipse+CDT+CMake aware that there are scenarios
that _do_ work.
Also, I can accept having the eclipse project files clutter my
project tree because:
1: There are 2 or 3 of them ONLY. They are well defined and easy to
get rid of or put on the CVS ignore list
2: Cmake creates lots more than 2 or 3. Having these sandboxed into
a "Build" folder is acceptable to me.
I _do_ advocate at least a "Build" directory if someone _really_
wants to build inside the source tree. Usually by getting them to
just listen to the logic is enough to get them to change. It is not
hard to say "Look at all those build files. Wouldn't it be nice if
all those were sandboxed somewhere else?".
Just my 2 cents to help make others aware that there are "other" ways
to use Cmake that end up working just fine.
Peace.
--
Mike Jackson Senior Research Engineer
Innovative Management & Technology Services
On Oct 17, 2007, at 9:56 AM, Eric Noulard wrote:
> 2007/10/17, Mike Jackson <imikejackson at gmail.com>:
>> I do "B" all the time without CVS problems at all. Then again, I have
>> CMake just produce makefiles and manually setup a "Makefiles" based
>> project in Eclipse. Too many headaches any other way.
>
> I do that too when needed.
> The trouble is it clashes with the CMake hypothesis of
> separate source tree from build tree.
>
> For doing that properly CDT4 CMake generator should break
> this hypothesis and output
> the .cproject/.project in the source tree and not the build tree....
>
> You would accept to have those particular files in your source tree
> but not "others" generated files like CMakeCache and the like :=)
>
> It IS annoying I agree but I don't really know if I want to break
> CMake build/source tree separation rules.
>
>
> --
> Erk
More information about the CMake
mailing list