Re: autoconf & co.

Ralf Corsepius <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
On Fri, 2004-10-15 at 11:00, Andre Heine wrote:
> Moin moin,
> 
> Am Donnerstag, 14. Oktober 2004 18:16 schrieb Ralf Corsepius:
> > On Thu, 2004-10-14 at 17:37, Andre Heine wrote:
> > > Am Donnerstag, 14. Oktober 2004 16:21 schrieb Ralf Corsepius:
> 
> [...]
> 
> > > > Mit autoconf-2.59 solltest Du statt "configure.in",
> > > > "configure.ac" verwenden.
> 
> Das Format ist gleich?
Jein, soll heissen, autoconf-2.13 configure.in's sind in der Regel
kompatibel zu autoconf-2.59. autoconf-2.59-configure.ac's sind aber
nicht Quellcode-kompatibel zu autoconf-2.13.

Von autoconf-2.13 generierte configure Scripte sind allerdings oftmals
nicht kompatibel zu den von autoconf-2.59 generierten.

D.h. in der Regel wird es Dir mit kleineren Adaptionen gelingen
autoconf-2.13 configure.ins mit autoconf-2.59 zu verarbeiten, die
generierten configure Scripte werden danach oftmals aber nicht
funktionieren oder andere Resultate liefern.

Das Problem dahinter: Die autoconf-2.13 Syntax war fehlerhaft.
Die Autoconf-2.59-Syntax ist sehr viel strenger und lässt einiges nicht
mehr durch, was autoconf-2.13 noch (fälschlicherweise) klaglos
durchliess. Auch hat sich einiges an der internen Funktionsweise
verändert, was teilweise funktionelle Inkompatibilitäten mit sich
bringt.

(Siehe auch autoconf.info und autoupdate)

> > Bei automake ist deutlich mehr im Fluss. Hier empfehle ich die
> > neueste Version (automake-1.9.2).
> 
> Ich installiere mal 1.8.5, das neuste was man bei gentoo gerade
> bekommt...

Nun ja, 1.8.5 ist halbwegs aktuell genug, um die modernen Features (z.B.
subdir-objects und flat-Makefiles nutzen zu können), da sich
feature-mässig zw. 1.8.x und 1.9.x äusserlich nicht viel geändert hat. 

Die wesentlichen Änderungen fanden unter der Haube statt:
http://lists.gnu.org/archive/html/automake/2004-07/msg00121.html

> > > Ich habe mal ein neues C-File mit Header eingebaut, man braucht
> > > _nichtmal_ die neue Datei irgendwo eintragen(SUFFIX-Regeln).
> > > Gut, das machen einige meiner selbst geschrieben Makefile auch,
> > > aber man muss sie eben selber schreiben.
> > > "touche" ich den Header, wird sofort das betroffene Modul
> > > neukompiliert.
> >
> > Yep. In einfachen Fällen wird es wirklich einfach, in wirklich
> > schwierigen Fällen verlagern sich die Probleme allerdings meist.
> 
> Ich habe jetzt mal ein etwas grösseres Projekt genommen, mit
> SUBDIR's usw..
> Habe zwar ein paar warnings bekommen, sonst aber keine Probleme;)
SUBDIRS sind noch keine "wirklich schwierigen Fälle" ;)

Schwierig sind solche Fälle, die vom Standardfunktionsumfang von
autoconf/automake/libtool/gettext u.Co. nicht abgedeckt werden.

Ralf



-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.