LINUX.ORG.RU

полседовательно выполнение makefile-ов


0

0
Ситуация такая. В проекте есть Makefile, лежит в корне. В нем надо предусмотреть выполнение другого Makefile1 ... Makefile5, который лежит в поддиректории. Таких выполнений как минимум 5. Это выглядит так:

---Makefile

| |-Dir1/Makefile1

|-Dir2/Makefile2 . . .

|-Dir4/Makefile4

| |-Dir5/Makefile5

Как это можно реализовать в Makefile?


Примерно так:

subsystems = Dir1 Dir2 Dir4 .PHONY $(subsystems) $(subsystems): $(MAKE) -C $@

Отличие от запрошенного тобой в том, что предполагается, что во всех каталогах лежит Makefile, а не Makefile[0-9]. Если это очень плохо, то я могу еще чуть-чуть напрячься ;)

anonymous
()
Ответ на: комментарий от anonymous
понятно. А если надо, каждый Makefile с различными параметрами командной строки надо запускать?
dream
() автор топика
Ответ на: комментарий от dream
МАКЕ переменная среды окружения или мне самому надо ее задавать? У меня этот пример не прошел, на строку

(MAKE) -C $@

выдает

*** missing separator.

dream
() автор топика
Ответ на: комментарий от dream
1. Думаю, что переменная MAKE имеет предопределенное значение, но не вполне в этом уверен.

2. Что-то мне подсказывает, что ты забыл символ табуляции.

anonymous
()
Ответ на: комментарий от anonymous
спасибо. Ты был прав насчет символа табуляции
dream
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.