В GNU Make вы можете экспортировать переменную для цели:
foo: export X=42
foo:
echo $$X
# Call several more commands that use $X.
Есть ли способ сделать это в переносимом POSIX Make?Пока я нашел два пути.Первый заключается в том, чтобы объединить все команды в одну:
foo:
export X=42; \
echo $$X; \
# Call several more commands that use $X.
Это плохо, потому что теперь все собрано вместе.Второй - позвонить $(MAKE)
:
foo:
$(MAKE) foo_ X=42
foo_:
echo $$X
# Call several more commands that use $X.
Но для этого нужно сделать еще один звонок.Есть ли лучший способ?