Доступен GNU Autoconf 2.69b для тестирования изменений, потенциально нарушающих совместимость

15 июля 2020 года

После восьми лет с момента публикации версии 2.69 представлен выпуск пакета GNU Autoconf 2.69b, в котором поставляется набор M4-макросов для создания скриптов автоконфигурации для сборки приложений в различных Unix-подобных системах (на основе подготовленного шаблона выполняется генерации скрипта "configure"). Выпуск позиционируется как бета-версия будущей версии 2.70.

Значительный разрыв во времени с прошлым выпуском и предварительная публикация бета-версии объясняется включением в ветку 2.70 изменений, которые потенциально могут привести к нарушению совместимости с существующими скриптами Autoconf. Пользователям рекомендуется протестировать свои скрипты с предложенным выпуском и уведомить разработчиков в случае выявления проблем.

Среди изменений:

  • Обеспечено экранирование аргументов config.log в заголовочном комментарии. Улучшена читаемость вывода "config.status --config";
  • В скрипт configure добавлена опция '--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, обычно используемые на начальной стадии работы скрипта configure, оптимизированы и больше не вызывают так много вторичных макросов. Изменение позволяет выявить несколько классов ошибок, как правило, вызванных использованием макроса 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 объявлены устаревшими.

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Доступен GNU Autoconf 2.69b для тестирования изменений, потенциально нарушающих совместимость», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.