この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
残念ながら、2つ目は機能しません(ノードプロセスはデフォルトで実行されますNODE_ENV
。
私は何を取りこぼしたか?
all: <\n\t>export PROJ_ROOT=$(CURDIR)<\n\t>echo $(PROJ_ROOT)<\n>
、最初の行に対しては正しい展開を出力しますがecho
、2番目の行に対してのみです。PROJ_ROOT
makeの実行後は設定されません。周りのスペースは=
、エクスポートに「不正な変数名」を与えます。例のように最初の行を前提条件にすると、「最初のターゲットの前にコマンドが開始されます」