Build system (was Re: Future of KDE Development)

Mike Richardson mike at quaking.demon.co.uk
Thu Feb 17 05:28:17 GMT 2005


On Wednesday 16 February 2005 19:21, Guillaume Laurent wrote:
> On Wednesday 16 February 2005 19:47, Stanislav Karchebny wrote:
> > On Tuesday 15 February 2005 21:11, mETz wrote:
> > > I don't know anything about python and looking at scons doesn't create
> > > the wish to change that.
> >
> > I second that. After looking at some scons scripts I didn't find them too
> > convincing; especially for developer concentrated on getting his code
> > delivered, not fighting with buildsystem
>
> I can't spend much more than 12 hours a week on Rosegarden. So believe me,
> the last thing I want to do is "fight the buildsystem", and if scons had
> given me any serious trouble, I'd have thrown the whole thing away faster
> than you can spell 'automake'.

Seconded. I've no idea how much time I used up trying to get autohell to do 
what I needed for rekall, but it was *a lot*, plus there was often the 
upgrade treadmill every time a new release came out. I've invested a fair 
chunk of time in wrapping scons with support stuff for rekall but its now 
pretty trivial to add extensions.

We are dealing with some pretty complicated builds here, and as a "developer 
concentrated on getting his code delivered" the build system is part of that 
activity. If there is some magic pill that will fix it then can whoever has 
it please step forward, but I doubt it exists.

>
> > - and for trivial cases cost of
> > autohell setup is much lower than that of scons unless you blindly
> > copy-paste SConstruct files
>
> Which is pretty much what I did.

And which I think most people do, since autohell is soooo s*****g difficult, 
hence the huge agregation of configuration stuff that follows all the 
packages around. Anyway, if scons is wrapped with some stuff to handle the 
"trivial cases" when we can all win.

>
> > Probably forking off cmake into kmake and adding stuff like
> > ADD_KPART(akregatorpart akregatorpart.cpp blahblahblah) would be the most
> > efficient way to go (you don't have to learn anything - just look at
> > single kmake manual page for "KPart building" and off you go).
>
> Excuse me, but am I the only one who thinks that forking our own build
> system is worst possible option here ?

Hey, there are at least two of us!

>
> BTW with scons+bksys, kparts are built this way :
>
> myenv.SharedLibrary( target = "libtest3part.so", source = test3part_sources
> ) myenv.LaFile( target = "libtest3part", source = "libtest3part.so" )
>
> I think it wouldn't take much work to reduce this to a single line :-).


Regards
Mike
www.rekallrevealed.org




More information about the kde-core-devel mailing list