Включить Makefile и Echo переменные в несколько Makefile

Внутри Makefile, который мне недавно пришлось посмотреть, он включает include $(MAKERULES)

Теперь для меня, я думаю, что где-то в начале make-файла MAKERULES = xyz но это не так. Так что я распечатаю MAKERULES

test:

    @echo "Rules: $(MAKERULES)"

Тогда я делаю тест. Он запускается и распечатывает другое местоположение Makefile, Makefile2.

Путь X/Y/Z/Makefile2. Я захожу в этот Makefile и пытаюсь выписать некоторые эхо-операторы, чтобы я мог видеть, что печатает, но ничего не печатает.

Можно ли распечатать переменные из другого Makefile (Makefile2), на который ссылается мой локальный Makefile (Makefile)?

1 ответ

Решение

Да, это возможно. Вы не показали нам свою попытку отобразить эти переменные, поэтому мы не можем сказать вам, почему это не сработало. (Ну, я не могу.)

Вот как я это сделаю:

$(info the variable FOO contains $(FOO))

Если вы хотите сделать это для нескольких переменных:

$(foreach X, FOO BAR BAZ, $(info $(X) is $($(X))))

И список всех в настоящее время определенных глобальных переменных .VARIABLES, так что вы можете использовать "$(.VARIABLES)" вместо "FOO BAR BAZ", чтобы распечатать их все.

Другие вопросы по тегам