پس از هشت سال از انتشار نسخه 2.69
تاخیر زمانی قابل توجه نسبت به نسخه قبلی و پیش از انتشار نسخه بتا به دلیل گنجاندن تغییرات در شاخه 2.70 است که به طور بالقوه می تواند سازگاری با اسکریپت های Autoconf موجود را از بین ببرد. به کاربران توصیه می شود اسکریپت های خود را با نسخه پیشنهادی و
از جمله تغییرات:
- فرار از آرگومان های config.log در نظرات سرصفحه فعال شد. خوانایی بهبود یافته خروجی "config.status –config".
- گزینه "--runstatedir" را به اسکریپت پیکربندی اضافه کرد تا مسیر دایرکتوری /run را با فایل های pid تعیین کند.
- autoreconf دیگر از نسخه های automake و aclocal که زودتر از 1.8 منتشر شده اند پشتیبانی نمی کند.
- توصیه می شود از printf به جای echo استفاده کنید، ماکروهای AS_ECHO و AS_ECHO_N اکنون به
'printf "%s\n" و 'printf %s'. متغیرهای بدون سند $as_echo و منسوخ شد
$as_echo_n، به جای آن باید از ماکروهای AS_ECHO و AS_ECHO_N استفاده شود. - بسیاری از ماکروها تغییر کرده اند تا آرگومان ها را فقط یک بار گسترش دهند تا سرعت اجرای autoconf افزایش یابد، که ممکن است بر سازگاری با برخی از اسکریپت هایی که آرگومان ها را به درستی نقل قول نمی کنند، تأثیر بگذارد.
- برخی از ماکروها، مانند AC_PROG_CC، که معمولاً در اوایل پیکربندی اسکریپت استفاده میشوند، بهینه شدهاند و دیگر ماکروهای ثانویه زیادی را فراخوانی نمیکنند. این تغییر چندین کلاس از خطاها را شناسایی می کند که معمولاً به دلیل استفاده از ماکرو AC_REQUIRE ایجاد می شوند.
- ماکروهایی که فهرستهای آرگومانهای جداشده با فاصله را میپذیرند، اکنون همیشه با هر یک از آرگومانهای فهرستشده گسترش مییابند.
این تغییر روی ماکروهای AC_CHECK_FILES، AC_CHECK_FUNCS،
AC_CHECK_FUNCS_ONCE، AC_CHECK_HEADERS، AC_CHECK_HEADERS_ONCE،
AC_CONFIG_MACRO_DIRS، AC_CONFIG_SUBDIRS و AC_REPLACE_FUNCS؛ - ماکروهای جدید AC_C__GENERIC، AC_CONFIG_MACRO_DIRS و AC_CHECK_INCLUDES_DEFAULT اضافه شدند.
- در ماکرو AC_PROG_CC، در صورت وجود، یک کامپایلر با پشتیبانی از C11 اکنون انتخاب شده است (با بازگشت به C99 و C89، اگر یافت نشد)، و در AC_PROG_CXX - C++11 با بازگشت به C++98. ماکروهای AC_PROG_CC_STDC، AC_PROG_CC_C89 و AC_PROG_CC_C99 منسوخ شدهاند.
منبع: opennet.ru