GNU Autoconf 2.69b ist verfügbar, um potenziell störende Kompatibilitätsänderungen zu testen

Acht Jahre nach der Veröffentlichung von Version 2.69 eingereicht Veröffentlichung des GNU Autoconf 2.69b-Pakets, das eine Reihe von M4-Makros zum Erstellen von Autokonfigurationsskripten zum Erstellen von Anwendungen auf verschiedenen Unix-ähnlichen Systemen bereitstellt (basierend auf der vorbereiteten Vorlage wird das „configure“-Skript generiert). Die Veröffentlichung ist als Beta-Version der kommenden Version 2.70 positioniert.

Die erhebliche Zeitverzögerung gegenüber der vorherigen Version und der Vorveröffentlichung der Beta-Version ist auf die Aufnahme von Änderungen im 2.70-Zweig zurückzuführen, die möglicherweise die Kompatibilität mit vorhandenen Autoconf-Skripten beeinträchtigen könnten. Benutzern wird empfohlen, ihre Skripte mit der empfohlenen Version zu testen benachrichtigen Wenn Probleme festgestellt werden, wenden Sie sich bitte an die Entwickler.

Zu den Änderungen gehören:

  • Maskierung von config.log-Argumenten in Header-Kommentaren aktiviert. Verbesserte Lesbarkeit der Ausgabe von „config.status –config“;
  • Dem Konfigurationsskript wurde die Option „--runstatedir“ hinzugefügt, um den Pfad zum /run-Verzeichnis mit PID-Dateien zu bestimmen;
  • autoreconf unterstützt keine Versionen von automake und aclocal mehr, die vor 1.8 veröffentlicht wurden;
  • Es wird empfohlen, printf anstelle von echo zu verwenden, die Makros AS_ECHO und AS_ECHO_N werden jetzt konvertiert
    'printf "%s\n"' und 'printf %s'. Die undokumentierten Variablen $as_echo und sind veraltet
    $as_echo_n, stattdessen sollten die Makros AS_ECHO und AS_ECHO_N verwendet werden;

  • Viele Makros wurden so geändert, dass sie Argumente nur einmal erweitern, um die Ausführung von Autoconf zu beschleunigen, was sich möglicherweise auf die Kompatibilität mit einigen Skripten auswirkt, die Argumente nicht korrekt in Anführungszeichen setzen.
  • Einige Makros, wie z. B. AC_PROG_CC, die häufig zu Beginn des Konfigurationsskripts verwendet werden, wurden optimiert und rufen nicht mehr so ​​viele sekundäre Makros auf. Die Änderung identifiziert mehrere Fehlerklassen, die typischerweise durch die Verwendung des AC_REQUIRE-Makros verursacht werden;
  • Makros, die durch Leerzeichen getrennte Argumentlisten akzeptieren, werden jetzt immer mit jedem der aufgelisteten Argumente erweitert.
    Die Änderung betrifft die Makros AC_CHECK_FILES, AC_CHECK_FUNCS,
    AC_CHECK_FUNCS_ONCE, AC_CHECK_HEADERS, AC_CHECK_HEADERS_ONCE,
    AC_CONFIG_MACRO_DIRS, AC_CONFIG_SUBDIRS und AC_REPLACE_FUNCS;

  • Neue Makros AC_C__GENERIC, AC_CONFIG_MACRO_DIRS und AC_CHECK_INCLUDES_DEFAULT hinzugefügt;
  • Im AC_PROG_CC-Makro ist nun, falls verfügbar, ein Compiler mit C11-Unterstützung ausgewählt (mit einem Rollback auf C99 und C89, falls nicht gefunden), und im AC_PROG_CXX - C++11 mit einem Rollback auf C++98. Die Makros AC_PROG_CC_STDC, AC_PROG_CC_C89 und AC_PROG_CC_C99 sind veraltet.

Source: opennet.ru

Kommentar hinzufügen