The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск системы сборки GNU Make 4.4

31.10.2022 16:24

После почти трёх лет разработки состоялся релиз системы сборки GNU Make 4.4. Кроме исправления ошибок, в новой версии можно отметить следующие изменения:

  • Объявлены устаревшими платформы OS/2 (EMX), AmigaOS, Xenix и Cray, поддержка которых будет прекращена в следующем выпуске.
  • Повышены требования к сборочному окружению, для сборки GNU Gnulib теперь необходим компилятор, поддерживающий элементы из стандарта C99.
  • Добавлена специальная сборочная цель .WAIT, позволяющая приостановить запуск сборки определённых целей до того как будет завершена сборка других целей.
  • В специальной сборочной цели .NOTPARALLEL реализована возможность указания пререквизитов (файлов, необходимых для сборки цели) для последовательного запуска связанных с ними целей (как если бы между каждым пререквизитом был выставлен ".WAIT").
  • Добавлена специальная сборочная цель .NOTINTERMEDIATE, отключающая поведение, связанное с использованием промежуточных целей (.INTERMEDIATE), для указанных файлов, файлов подпадающих под маску или всего makefile.
  • Реализована функция $(let ...), позволяющая определять локальные переменные в пользовательских функциях.
  • Реализована функция $(intcmp ...) для сравнения чисел.
  • При использовании опции "-l" (--load-average) при определении числа запускаемых работ теперь учитываются данные из файла /proc/loadavg о нагрузке на систему.
  • Добавлена опция "--shuffle" для перемешивания пререквизитов, что позволяет добиться недетерминированного поведения при распараллеленной сборке (например, для fuzzing тестирования корректности определения пререквизитов в makefile).
  • На системах с поддержкой mkfifo обеспечено использование нового метода взаимодействия с jobserver при параллельном выполнении работ, основанного на использовании именованных каналов. Для возвращения старого метода на основе неименованных каналов предложена опция "--jobserver-style=pipe".
  • Расширено применение временных файлов в процессе работы (могут возникнуть проблемы при выставлении сборочной системой альтернативного каталога для временных файлов (TMPDIR) и удаления содержимого TMPDIR во время сборки).


  1. Главная ссылка к новости (https://lists.gnu.org/archive/...)
  2. OpenNews: Релиз системы сборки CMake 3.23
  3. OpenNews: В редакторе кода Visual Studio Code появилась поддержка Makefile
  4. OpenNews: Сотрудник Red Hat представил сборочную систему Goals. Выпуск GNU Make 4.3
  5. OpenNews: Выпуск системы сборки GNU Make 4.2
  6. OpenNews: Релиз goredo 1.0.0, реализации системы сборки redo, предложенной DJB
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/58014-make
Ключевые слова: make
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (37) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, iCat (ok), 16:35, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Оно теперь вообще перестанет собирать программы без основательного карнавала?
     
     
  • 2.2, Ыыыыыы (?), 16:42, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Требуется пояснительная бригада
     
     
  • 3.16, Аноним (16), 18:14, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > добиться недетерминированного поведения
     
     
  • 4.24, Аноним (24), 04:11, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > для fuzzing тестирования

    это специальный ключ для fuzzing тестирования, к обычной сборке это не относится

     
     
  • 5.30, я (?), 10:26, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Немного относится. make --shuffle нужен для проверки Makefile на полноту зависимостей: https://trofi.github.io/posts/249-an-update-on-make-shuffle.html
     
  • 2.12, Аноним (-), 17:42, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    паисни
     
     
  • 3.20, Аноним (16), 19:29, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    какие именно слова тебе не понятны?
     
     
  • 4.23, Аноним (24), 04:09, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Почему решил что перестанет?
     
  • 4.31, Аноним (-), 13:29, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Карнавал
     
     
  • 5.34, Аноним (34), 15:39, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Карнавал - это в Рио-де-Жанейро. Танцуй, танцуй, моя Орейро
     

  • 1.3, Аноним (3), 16:43, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А вот мне синтаксис их не нравится, в бзд Майк все лаконичнее.
     
     
  • 2.13, Аноним (-), 17:43, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +4 +/
    мэйби бэйбэ.
     
  • 2.25, Аноним (24), 04:12, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    и менее функциональный
     

  • 1.4, Аноним (4), 16:52, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >Объявлены устаревшими платформы OS/2 (EMX), AmigaOS, Xenix и Cray, поддержка которых будет прекращена в следующем выпуске.

    Ушла эпоха?

    Вообще, я пришёл сюда потроллить, но что-то жалко стало такой былинный проект, и я просто пришёл сказать "Слава Прологу".

     
     
  • 2.11, Аноним (-), 17:41, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >жалко стало такой былинный проект

    В смысле? Ты LFS собирал? Исходники собираемые пр помощи Make и ninja/meson раз-два и обчёлся. Без make, GNU/Linux не собирёшь.

     
     
  • 3.33, Аноним (-), 14:44, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Исходники собираемые пр помощи CMake и ninja/meson раз-два и обчёлся

    поправил. не благодари.

     
  • 2.21, Аноним (21), 19:30, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Кто и когда видел последний живой Xenix? OS/2, наверное, где-то ещё сохранились работающими. (В банкоматах?)
     
     
  • 3.28, 1 (??), 09:07, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Даже когда он продавался и поддерживался его мало кто видел.
     

  • 1.5, Аноним (5), 16:59, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > необходим компилятор, поддерживающий элементы из стандарта C99

    Потихоньку переходят в 21 век, молодцы.

     
     
  • 2.14, Аноним (-), 17:44, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ма-лат-сы!
     

  • 1.6, анонимкус (?), 17:01, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Зачем продолжаюст это пилить, если ninja на порядок лучше)
     
     
  • 2.17, Аноним (17), 18:39, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Пилить мейк действительно смысла нет, его давно пора закапывать. Но сравнивать его с ниндзей глупо и некорректно: синтаксис ниндзи предназначен для генераторов, а не для людей (это сам авторы заявляют), поэтому ему необходим высокоуровневый фронтенд для описания проекта.
     
  • 2.19, Аноним (21), 19:26, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вдумайтесь в смысл полного названия: "GNU Makе". А эта Ninja не их проект. С чего бы им её пилить?
     
  • 2.26, Аноним (24), 04:14, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что им надо, а вам раз нужен ninja вы и пилите
     
  • 2.32, Аноним (32), 13:44, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > ninja

    Зачем продолжаюст это пилить, если Make на порядок лучше)

     

  • 1.7, Реальный пацан (?), 17:01, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Непонятно в чём устарелость OS/2.
     
     
  • 2.9, Аноним (9), 17:16, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Во всем.
     
  • 2.10, Аноним (-), 17:40, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Она была половиной ос в прошлом столетии, а сегодня может процентов 10% от ос. Надо старое название обновить, назвать OS/10, тогда будет ок.
     
     
  • 3.35, maximnik0 (?), 21:39, 03/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >сегодня может процентов 10% от ос. Надо старое название обновить, назвать OS/10, тогда будет ок.

    Потдержка юсб,sata,современные видиокарты,даже есть SAS и 64 бита.Правда там другое ядро и совместимость достигается через паравиртулизацию и слой совместимости. Правда цены на современную версию полуоси весьма не демакротичные, можно 4 рабочих места по самой деловой лицензии под Винду оборудовать. Ибм отдала эту операционку на аутсорсинг ,я не пойму как там сразу у 2 компаний лицензии оказались,вот одна из компаний и заморочилось с новым ядром и драйверами.

     
  • 3.36, Реальный пацан (?), 20:40, 11/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Так а чего там, например, нет и невозможно добавить?
     
  • 2.22, BJ (ok), 19:55, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Устарела не OS/2, а EMX. аналог mingw для винды.
     
     
  • 3.37, Реальный пацан (?), 20:41, 11/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Устарела не OS/2, а EMX. аналог mingw для винды.

    Программы как работали так и продолжают работать. Компиляторы копилировали и продолжают компилировать.

     

  • 1.8, pashev.ru (?), 17:07, 31/10/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Добавлена специальная сборочная цель .WAIT

    Слава яйцам!


    https://git.pashev.ru/gunmake/commit/?id=f312d23f4598097b56883d95d598dc4b50249

     
     
  • 2.15, Аноним (15), 18:13, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Пашев.ру, а это что это у тебя за херня? ганмейк какой-то. Объясни, пашев.ру.
     
     
  • 3.18, Аноним (18), 18:41, 31/10/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    всё очень просто! выполни sed s/p/kak/ да sed s/\.r/\.sr/ над его ником и всё встанет на свои места!
     
  • 3.27, freehck (ok), 04:23, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Чё тут объяснять? Игорёк взял чей-то патч к мейку аж 2005го года выпуска, да впилил его в форк. Видимо в далёком 2015м для него это было аж целое достижение. И спустя 7 лет оно так и осталось достижением, что странно, ибо такая хеpня обычно проходит.
     
  • 3.29, n00by (ok), 09:14, 01/11/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > ганмейк какой-то.

    gunmake это GNU is Not Unix Make в обратной польской нотации.

     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру