Привет ! Меня зовут Ксавье Жувено, и в этом небольшом посте мы увидим, как обрабатывать пользовательскую переменную в Makefile.

Самореклама: Другие статьи вы можете найти на моем сайте 😉

Проблемный

При создании некоторых команд make в вашем Makefile вы можете захотеть, чтобы некоторые параметры были доступны пользователю, чтобы он мог либо передать некоторые входные данные вашей команде, либо указать некоторые элементы, для которых вы установите какое-то значение по умолчанию.

Есть несколько способов сделать это, но мы рассмотрим самое простое и мощное решение для меня. Надеюсь, вам тоже будет удобно 😉

Решение

Давайте погрузимся прямо в Makefile и посмотрим, как выглядит определение пользовательской переменной:

VARIABLE ?= DEFAULT_VALUE command: echo "${VARIABLE}"

Довольно просто, не так ли?! Тем не менее, если вы не знаете, что он существует, вы не можете его догадаться 😆 Все делает оператор ?=, который установит наш VARIABLE только в том случае, если он не был определен ранее.

Теперь все, что нам нужно, это передать значение переменной следующим образом:

make foo # uses the default value specified in the Makefile for VARIABLE make foo VARIABLE= # set VARIABLE to an empty value make foo VARIABLE=SPECIFIC_VALUE # set VARIABLE to a SPECIFIC_VALUE

И вуаля, теперь вы знаете, что оператор ?= существует и как его использовать 😉

Спасибо всем за прочтение этой статьи, и до моей следующей статьи, хорошего дня 😉

Интересные ссылки

Первоначально опубликовано на http://10xlearner.com 5 февраля 2021 г.