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]