GNU Autoconf 2.69b 可用於測試潛在的破壞性相容性更改

2.69 版本發布八年後 提出了 GNU Autoconf 2.69b 軟體包的發布,它提供了一組 M4 宏,用於建立自動配置腳本,用於在各種類 Unix 系統上建立應用程式(根據準備好的模板,產生「配置」腳本)。 此版本定位為即將推出的 2.70 版本的 Beta 版本。

與先前的版本和 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

添加評論