0
指定目标,我是新来的makefile我有一个有点麻烦区分目标路径相对于在make文件存在的makefile文件命令
这里是我的Makefile
babel-ready:
make babel-install-preset module=es2015
make babel-install-preset module=stage-2
babel-install-preset:
npm install --save-dev babel-preset-$(module)
${CURDIR}/node_modules/.bin/json -I -f package.json -e 'if (!this.babel) this.babel = {}' ;\
${CURDIR}/node_modules/.bin/json -I -f package.json -e 'if (!this.babel.presets) this.babel.presets = []' ;\
${CURDIR}/node_modules/.bin/json -I -f package.json -e 'this.babel.presets.push("'$(module)'")' ;\
这里的DIR结构:
- node_modules
- .bin/
- json
- Makefile
- packages/
- my-package/
- package.json
- package.json
我想用三种方式使用这个Makefile。
一种是指定一个像这样的目标。
./ $ make babel-ready package=my-package
二是在根package.json上运行它。
./ $ make babel-ready
三是要在包中,只需运行命令。
./packages/my-package $ make -C ../../ babel-ready
我想如果三个人都可以使用相同的基本代码。
我继续使用cd
改变命令中的目录,但它使搞乱了我,因为一旦我cd
我松访问make命令,并有能力使用make -C ${CURDIR}
但后来我松散访问正确的package.json
文件,所以看起来我不能得到任何工作。