Я хотел бы изменить этот Makefile:
SHELL := /bin/bash
PATH := node_modules/.bin:$(PATH)
boot:
@supervisor \
--harmony \
--watch etc,lib \
--extensions js,json \
--no-restart-on error \
lib
test:
NODE_ENV=test mocha \
--harmony \
--reporter spec \
test
clean:
@rm -rf node_modules
.PHONY: test clean
чтобы:
SHELL := /bin/bash
PATH := node_modules/.bin:$(PATH)
boot:
@supervisor \
--harmony \
--watch etc,lib \
--extensions js,json \
--no-restart-on error \
lib
test: NODE_ENV=test
test:
mocha \
--harmony \
--reporter spec \
test
clean:
@rm -rf node_modules
.PHONY: test clean
К сожалению, второй не работает (процесс узла по-прежнему работает со значением по умолчанию NODE_ENV.
Что я пропустил?
Unfortunatelyкомментарий связан с недоразумением между переменной среды иMakefileпеременной. Лучший способ доказать, что переменная среды установлена, - это запросить эту переменную среды внутри другой программы, которая будетmakeвызывать. Только действиеecho $(BLAH)- это просто оценка механизма ключа / значения Makefile внутри Makefile. В python вы можетеprint(os.getenv("MURDOC"))действительно запросить переменную среды.