Глядя на руководство по Gnu make 4.2 для Определение многострочных переменных , мы видим пример:
define two-lines =
echo foo
echo $(bar)
endef
и комментарий
За директивой define в той же строке следует имя определяемой переменной и оператор присваивания ( необязательный ), и ничего более.
Меня несколько раз отключали, включая необязательный =
, а затем возникали (часто тонкие) проблемы при сборке на другой машине с использованием Gnu make 3.81. Конечно, я не должен использовать синтаксис 4.2 при запуске 3.81! Но я посчитал это легкой ошибкой, тем более что ни URL, ни содержимое 1 не указывают на то, какая версия документируется (вам нужно нажать Up
2 уровня, чтобы увидеть версию).
Итак, вернемся к моему вопросу: почему был введен опциональный =
?