Re: Questions about bakefile and IDE integration...

Kevin Ollivier <[email protected]> Tue, 3 Feb 2009 10:58:39 -0800
Newsgroups gmane.comp.sysutils.bakefile.devel
Message-ID <[email protected]>
Hi Garth,

On Feb 3, 2009, at 10:19 AM, Garth Dahlstrom wrote:

> Hi all,
>
> I'm one of the devs on the Mixxx DJ software project (http:// 
> mixxx.org).  Currently, we use SCons to do our builds on Linux, OSX  
> and Win32...  Our project is C++ based.
>
> Our SConscript is a ~1400 line python script that builds the  
> software calling whichever compiler and using whatever methods it  
> can to solve deps on each target.
>
> It works decently well from the command line, but it tends to repeat  
> with a lot of target platform conditional stuff and it doesn't lend  
> itself to autobuilds or IDE-based development...   I think we can  
> generate msvc project files, but being a Linux guy I'm stuck editing  
> in nano or gedit.

What precisely do you mean by autobuilds? SCons is Python code so I  
would think it would be easy to run the whole build via a Python script?

> I'm wondering if people can comment on their experinces with  
> Bakefile in setting up autobuilds and if bakefile would be an  
> appropriate fit for generating some type of cross-platform IDE  
> project file for something like Eclipse/CDT (xml format) or Qt  
> Creator (qmake project files)?
>
> Or if there is a C++ IDE that people already use on Linux (Glade,  
> KDevelop or whatever)?

Bakefile will allow you to open projects in an IDE, but it will not  
retain any edits you make in the IDE. So it is sort of like a read- 
only project creator. If you just want to get the headers and C++  
files into the IDE, it would probably work okay for you. To be honest,  
though, I've been doing cross-platform C++ development from years, and  
I found myself gravitating more and more towards scripts, not away  
from them. The benefits of having an IDE project file tend to be  
outweighed by the fact that you have to follow manual steps to build,  
and have to test all your changes in each IDE you support. Bakefile  
tries to do the right thing in terms of differences between IDEs, but  
different IDEs support different features and take different  
approaches, so you will still need to deal with IDE-specific issues  
like how to structure your MSVC projects, etc., plus when you start  
having pre and post build steps (e.g. automated tests, bindings  
generation) the IDEs really just start to get in the way and become  
more of a hassle than a help. In the end result, I've personally found  
that anything other than a simple "automated one command build" just  
turns into a time sink in terms of maintenance.

As for cross-platform IDEs in general, Eclipse is the one I hear a lot  
about, particularly as it seems to have a lot of plugins for things  
like Python and even IIRC SCons. I don't use it myself; I just tend to  
use whatever comes with the platform (e.g. XCode, MSVC) for editing  
source files and such.

Regards,

Kevin

>
> Cheers,
>
> -G
>               __
> --- == __/ t.O ==--
> http://stacktrace.org/
> ------------------------------------------------------------------------------
> Create and Deploy Rich Internet Apps outside the browser with  
> Adobe(R)AIR(TM)
> software. With Adobe AIR, Ajax developers can use existing skills  
> and code to
> build responsive, highly engaging applications that combine the  
> power of local
> resources and data with the reach of the web. Download the Adobe AIR  
> SDK and
> Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com_______________________________________________
> Bakefile-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/bakefile-devel

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com

_______________________________________________
Bakefile-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bakefile-devel