Je voudrais changer ce 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
Malheureusement, le second ne fonctionne pas (le processus de nœud s'exécute toujours avec la valeur par défaut NODE_ENV .
Qu'est-ce que j'ai raté?
Unfortunatelycommentaire découle d'un malentendu entre une variable d'environnement et uneMakefilevariable. La meilleure façon de prouver qu'une variable d'environnement a été définie est d'interroger cette variable d'environnement dans un autre programme qui l'makeappellera. Ilecho $(BLAH)suffit d'évaluer le mécanisme clé / valeur de Makefile dans le Makefile. En python, vous pouvezprint(os.getenv("MURDOC"))vraiment interroger la variable d'environnement.