Аналогично, да, за исключением зависимостей, топологической сортировки, обработки макросов и экспертной системы
Если вы ничего не делаете, но помещаете команды оболочки в Makefile , тогда он фактически очень похож на каталог "пакетных файлов" и выполняет каждую из них, когда ассоциируется с именем target * Указано 1006 *.
Однако более типичным является указание графика зависимостей в make-файле, в этом случае make выполняет топологическую сортировку всех зависимостей для умного построения всего только один раз и в правильном порядке, начиная с самых ранних предпосылок.
И для полноты я должен добавить, что make также является макропроцессором. Он ориентирован на системы сборки программного обеспечения, поэтому он предоставляет дескрипторы символических элементов в своей проблемной области, таких как имена источников и целей.
Теперь, make не является , в частности экспертной системой общего назначения, 1 , но он делает больше, чем просто упаковывает шелл-код, и технически он соответствует определению экспертной системы.
Марка содержит двигатель логического вывода . Все версии make имеют суффиксные правила , некоторые версии также реализуют шаблонные правила , В сочетании с вашей спецификацией (больше правил, обычно тех, которые определяют программное приложение), получается экспертная система , которая решит, что нужно скомпилировать, связать , приобретено на eBay , в зависимости от того, какие данные и команды вы указали.
1. Это простая в использовании экспертная система. Skynet, вероятно, не выйдет из случайной опечатки в сложном Makefile.