Po ośmiu latach od opublikowania wersji 2.69
Znaczące opóźnienie w stosunku do poprzedniej wersji i wstępnej publikacji wersji beta wynika z włączenia zmian w gałęzi 2.70, które mogą potencjalnie przerwać kompatybilność z istniejącymi skryptami Autoconf. Użytkownikom zaleca się przetestowanie swoich skryptów z sugerowaną wersją i
Wśród zmian:
- Włączono ucieczkę argumentów config.log w komentarzach nagłówka. Poprawiona czytelność wyjścia „config.status –config”;
- Do skryptu konfiguracyjnego dodano opcję „--runstatedir”, aby określić ścieżkę do katalogu /run z plikami pid;
- autoreconf nie obsługuje już wersji automake i aclocal wydanych wcześniej niż 1.8;
- Zaleca się użycie printf zamiast echo, makra AS_ECHO i AS_ECHO_N są teraz konwertowane do
„printf „%s\n”” i „printf %s”. Przestarzałe nieudokumentowane zmienne $as_echo i
$as_echo_n, zamiast którego należy zastosować makra AS_ECHO i AS_ECHO_N; - Wiele makr zostało zmienionych tak, aby tylko raz rozwijać argumenty, aby przyspieszyć wykonywanie autokonfiguracji, co może mieć wpływ na kompatybilność z niektórymi skryptami, które nie cytują poprawnie argumentów;
- Niektóre makra, takie jak AC_PROG_CC, powszechnie używane na początku skryptu konfiguracyjnego, zostały zoptymalizowane i nie wywołują już tak wielu dodatkowych makr. Zmiana identyfikuje kilka klas błędów, zazwyczaj spowodowanych użyciem makra AC_REQUIRE;
- Makra akceptujące listy argumentów oddzielonych spacjami są teraz zawsze rozwijane wraz z każdym z wymienionych argumentów.
Zmiana dotyczy makr AC_CHECK_FILES, AC_CHECK_FUNCS,
AC_CHECK_FUNCS_ONCE, AC_CHECK_HEADERS, AC_CHECK_HEADERS_ONCE,
AC_CONFIG_MACRO_DIRS, AC_CONFIG_SUBDIRS i AC_REPLACE_FUNCS; - Dodano nowe makra AC_C__GENERIC, AC_CONFIG_MACRO_DIRS i AC_CHECK_INCLUDES_DEFAULT;
- W makrze AC_PROG_CC, jeśli jest dostępny, wybrany jest teraz kompilator z obsługą C11 (z cofnięciem do C99 i C89, jeśli nie znaleziono), a w AC_PROG_CXX - C++11 z wycofaniem do C++ 98. Makra AC_PROG_CC_STDC, AC_PROG_CC_C89 i AC_PROG_CC_C99 zostały uznane za przestarzałe.
Źródło: opennet.ru