[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ein neues buildsystem --> autotools endlich abloesen



Am Freitag, den 03.03.2006, 11:14 +0100 schrieb Andreas Pakulat:
> On 03.03.06 10:43:19, Jan-Benedict Glaw wrote:
> > On Fri, 2006-03-03 10:28:08 +0100, Enrico Weigelt <weigelt@metux.de> wrote:
> > > aufgrund zahlreicher Probleme der etablierten buildsysteme,
> > > vorallem automake+friends (die ich jetzt nicht unbedingt 
> > > nochmal auswalzen möchte ...) beschreite ich jetzt endlich 
> > > mal einen völlig neuen Ansatz:
> > 
> > [...]
> > 
> > Nimms mir nicht krumm, aber ich glaube, daß das nichts wird. Es ist
> > schon so verdammt viel Arbeit in autoconf/automake geflossen, daß es
> > IMHO wenig Sinn machen, das nochmal zu wiederholen.
> 
> Tja, es gibt aber durchaus Build-Systeme abseits der autotools. KDE wird
> wohl fuers naechste Major auf CMake umsteigen (scons/bksys hat nicht
> genug Unterstuetzung).
> 
> Ansonsten sollte man vllt. mal ueberlegen: Wenn schon XML-Beschreibungen
> wieso nicht ant nutzen? Oder maven?...

Igitt (IMHO). Hast du schon einmal die build.xml eines größeren
Projektes gesehen? Weißt du, wie viele Verrenkungen man für eine
einfache 'for i in ...'-Schleife machen muss, damit ant das hinkriegt?
Die autotools sind kryptisch, aber ant-build-Dateien sind einfach nur
schlecht, unübersichtlich und aufgrund XML mit einem sehr großen
Schreibaufwand verbunden (und da waren noch mehr Gründe, warum ich sie
nicht mag ;))

Einfaches Beispiel aus dem Anhang des OP

[..]
<source name="Attrib.c" />
<source name="CrBufFrI.c" />
<source name="CrBufFrP.c" />
<source name="CrDatFrI.c" />
<source name="CrDatFrP.c" />
<source name="CrIFrBuf.c" />
[..]

Jedes Element wird einzeln beschrieben. Gegenüber

SOURCES = Attrib.c ....

wirkt das viel zu umständlich. Einfacher wäre evtl. ein Element
<sources> dass so aussehen kann:

<sources separator=",">Attrib.c, CrBufFrI.c, ...</sources>
<sources separator=" ">Attrib.c CrBufFrI.c ...</sources>

Aber da XML eben jedes Element beschreibt, kommt viel mehr
Schreibaufwand als in der Makro-Sprache, die für die autotools benutzt
wird, heraus (IMHO). 

> Es gibt eigentlich genug verschiedene Build-Systeme da draussen...

ACK.

*just my 2 cents*
MfG Daniel



Reply to: