Можно ли передать переменные в make-файл верхнего уровня из sub make-файла? - PullRequest
0 голосов
/ 30 апреля 2019

Я знаю, что export используется для рекурсивной передачи значения переменной вниз от Make-файла верхнего уровня к вспомогательным Make-файлам. Однако, если мне нужно передать переменные вверх, что мне делать?

Побочный эффект изменения экспортируемой переменной, по-видимому, исчезает после обработки вспомогательного Make-файла. Я пытался экспортировать его в подфайл Makefile, но он не работает.

Например, мне нужно собрать объектные файлы, сгенерированные вложенным Make-файлом в переменной L1.

Makefile верхнего уровня

$(info Top-level makefile)

export L1 = one.obj

sub1:
  cd sub1; make

all: sub1
  $(info $(L1))

Подфайл: sub1/Makefile

$(info sub makefile)

L1 += two.obj
export L1

all:
  $(info want to pass to the top-level: $(L1))

Я ожидаю, что L1 содержит one.obj и two.obj при построении цели all. Тем не менее, он имеет только one.obj.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...