Я хотів би змінити цей 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
.
Що я пропустив?
all: <\n\t>export PROJ_ROOT=$(CURDIR)<\n\t>echo $(PROJ_ROOT)<\n>
виводить правильне розширення для першого ряду, але тількиecho
для другого.PROJ_ROOT
не встановлюється після запуску make. Проміжки навколо=
дають "неправильну назву змінної" для експорту. Перший рядок, який є обов'язковою умовою, як у вашому прикладі, дає "команди починаються перед першою ціллю"