Многое можно сказать о , а не . Прочитайте Рекурсивное создание, считающееся вредным . Также в формате PDF .
Короткая короткая версия состоит в том, что рекурсивная сборка эффективно создает несколько непересекающихся, но, возможно, перекрывающихся деревьев зависимостей и не может гарантировать ни правильную, ни максимально эффективную сборку. Проблема усугубляется, если вы собираетесь строить параллельно.
Чтобы решить эту проблему, вы организуете одну нерекурсивную программу make, которая создает единственное всеобъемлющее дерево зависимостей, которое позволяет программе make решить все вышеуказанные проблемы.
Примеры структур для нерекурсивного построения и решения нескольких хитрых проблем, возникающих при их написании, можно найти в оригинальной статье и в ответах: