Makefile - функция для проверки пустых переменных окружения - PullRequest
0 голосов
/ 27 марта 2020

Я пытаюсь написать функцию, чтобы проверить, установлены ли несколько переменных среды. В этом примере я только что попытался использовать функцию, которая не работает, вероятно, потому что call открывает подоболочку, в которой нет моей экспортированной переменной.

Что такое удобный способ проверки нескольких переменных среды ? Я пытаюсь избежать нескольких ifndef утверждений в моем Makefile.

Makefile

define func_test
ifndef ${1}
$(error ${1} is not set - does not works)
endif
endef

test:
    @$(call func_test, account_name)

ifndef account_name
$(error account_name is not set - works)
endif

Logs

~ $ export account_name=somename
~ $ make test
Makefile:8: ***  account_name is not set - does not works.  Stop.
~ $

1 Ответ

0 голосов
/ 27 марта 2020

Проверить, является ли переменная пустой

$(if $(some_var),,$(error some_var is not defined))
...