Discussion:
Questions about bakefile and IDE integration...
(too old to reply)
Garth Dahlstrom
2009-02-03 18:19:32 UTC
Permalink
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.

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)?

Cheers,

-G
__
--- == __/ t.O ==--
http://stacktrace.org/
Scott Bailey
2009-02-03 18:34:48 UTC
Permalink
I'll take a shot at this!

I'm using Bakefile to support 3 environments: XCode, MSVDS2005, and
GNUMake. We do not do autobuilds, BUT it would be easy enough to write a
script that would do this....

svn co <proj>
cd <bakefile/build dir>
bakefile_gen
<build command>

ta da! Add tests for platform and errors and your golden.

Personally, I have not found a Linux IDE--unless you count Emacs--that I
care for. RAD tool, though, wxFormBuilder gets my vote.

Extending Bakefiles is relatively easy.

SB
Post by Garth Dahlstrom
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.
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)?
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
https://lists.sourceforge.net/lists/listinfo/bakefile-devel
--
Scott Bailey
Kevin Ollivier
2009-02-03 18:58:39 UTC
Permalink
Hi Garth,
Post by Garth Dahlstrom
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?
Post by Garth Dahlstrom
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
Post by Garth Dahlstrom
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
https://lists.sourceforge.net/lists/listinfo/bakefile-devel
Loading...