Подробное обсуждение этого вопроса: Рекурсивный маркер считается вредным
Как можно догадаться из заголовка, RCMH утверждает, что включение всего в один make-файл ("не рекурсивный") предпочтительнее, чем запуск субмейков ("рекурсивный").
Основными аргументами в пользу нерекурсивных make
являются производительность и точность межмодульных зависимостей (что также влияет на производительность для параллельных сборок).
Преимущество рекурсивных систем make-файлов заключается в том, что их проще писать, потому что вызов make
каждого модуля отделен от всех остальных. Однако, как указывает RCMH, это полное разделение на самом деле вызывает проблемы позже.