shell – 如何在Makefile中设置环境变量

前端之家收集整理的这篇文章主要介绍了shell – 如何在Makefile中设置环境变量前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想更改这个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,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。

我错过了什么?

Make变量不会导出到进程调用的环境中…默认情况下。然而,你可以使用make的导出来强制他们这样做。更改:
test: NODE_ENV = test

对此:

test: export NODE_ENV = test

(假设你有一个足够现代版本的GNU make)。

猜你在找的Bash相关文章