Есть ли простой способ автоматической загрузки файла, содержащего локальные конфигурации, в Makefile
?Загрузить .env файл в Makefile
У меня есть файл, .env
, содержащий key=value
пары в каждой строке:
var1=val1
var2=val2
В настоящее время я импортирующей каждую переменную в мой Makefile
вручную, как это:
var1=$$(grep '^var1=' .env | cut -d= -f2-)
Это чувствует себя неуклюжим и склонным к ошибкам при добавлении дополнительных переменных.
Я также попытался добавить дополнительную цель в Makefile
читать каждую строку .env
и передать его export
, но значения экспортируемых в одной цели, не доступны для других.
Я ожидаю, что есть встроенная функция для этого в make
, но я не смог найти документацию для нее.
Включает ли 'include' то, что вы хотите здесь? Нужны ли эти значения для экспорта именно тем процессам, которые выполняются? –
@ EtanReisner yep, include работает отлично - спасибо! Вероятно, я должен был найти это в документах !! Добавьте это как ответ, и я с радостью приму это. – Armand
Из [docs] (https://www.gnu.org/software/make/manual/html_node/Include.html) 'Один раз для использования include-директив является то, когда требуется несколько программ, обрабатываемых отдельными make-файлами в разных каталогах использовать общий набор определений переменных (см. раздел «Настройка переменных») или шаблонов (см. Определение и переопределение правил шаблонов). – Armand