2.69 版本發布八年後
與先前的版本和 Beta 版本的預發布相比存在顯著的時間滯後,這是由於 2.70 分支中包含了一些更改,這些更改可能會破壞與現有 Autoconf 腳本的兼容性。 建議用戶使用建議的版本測試他們的腳本並
其中的變化:
- 啟用標頭註解中 config.log 參數的轉義。 提高了「config.status –config」輸出的可讀性;
- 在配置腳本中新增了「--runstatedir」選項,以確定帶有 pid 檔案的 /run 目錄的路徑;
- autoreconf 不再支援 1.8 之前發布的 automake 和 aclocal 版本;
- 建議使用 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