mrjbom
@mrjbom

Как использовать одну переменную в нескольких make файлах?

У меня есть два make-файла, первый вызывает второй.
Мне хотелось бы получить некоторые данные из второго make-файла.
Для лучшего понимания вопроса пример:
Makefile

SHAREDVAR =
all:
    cd test && $(MAKE)
    @echo main: $(SHAREDVAR) # Ожидается вывод: main: aaa

test/Makefile

SHAREDVAR = aaa
all:
    @echo test: $(SHAREDVAR) # Успешно выводит: aaa


А ещё я пробовал использовать такую схему:

Makefile

include Makefile.variable

all:
    cd test && $(MAKE)
    @echo main: $(SHAREDVAR)


Makefile.variable

SHAREDVAR = temp


test/Makefile

.PHONY: all

include ../Makefile.variable

SHAREDVAR = aaa

all:
@echo test: $(SHAREDVAR)
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
У меня есть два make-файла, первый вызывает второй.
Мне хотелось бы получить некоторые данные из второго make-файла.

Не предусмотрено такое логикой make, разве что через eval это можно накостылить. Обычно, когда нужна тесная связь между разными Makefile, один из них подключают в другой (и получают большой логический Makefile поделённый на несколько файлов).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы