[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