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
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.