gnumake
v0.3.5
Published
cross platform gnu make
Downloads
774
Readme
gnumake
cross platform gnu make for nodejs
Please ★ this repo if you found it useful ★ ★ ★
Features
- supports windows
- supports osx
- supports linux
Installation
npm install --save-dev gnumake
Dependencies
Usage
Create a Makefile
You must include
node_modules/gnumake/gnumake.mk
.Makefile
include node_modules/gnumake/gnumake.mk .PHONY: build build: lib lib: -@$(RM) -rf lib || $(TRUE) @babel src -d lib
Reference Makefile from npm scripts
package.json
"scripts": { "build": "make -s build" }
Cross Platform Commands
The following commands should be referenced from make variables instead of the raw unix commands for cross platform suport on linux, osx and windows.
| unix command | make variable | example |
| ----------- | ------------- | --------------------------------------- |
| /dev/null
| $(NULL)
| echo hello >$(NULL)
|
| cat
| $(CAT)
| $(CAT) hello.txt
|
| chmod
| $(CHMOD)
| $(CHMOD) hello.txt
|
| cd
| $(CD)
| $(CD) hello
|
| cp
| $(CP)
| $(CP) -r hello world
|
| false
| $(FALSE)
| echo fail && $(FALSE)
|
| find
| $(FIND)
| $(FIND) *.txt
|
| grep
| $(GREP)
| $(GREP) ".+\.txt$"
|
| git
| $(GIT)
| $(GIT) ls-files
|
| ln
| $(LN)
| $(LN) -s hello.txt world.txt
|
| ls
| $(LS)
| $(LS) -a
|
| make
| $(MAKE)
| $(MAKE) -s hello
|
| mkdir -p
| $(MKDIRP)
| $(MKDIRP) hello/world
|
| mv
| $(MV)
| $(MV) hello world
|
| npm
| $(NPM)
| $(NPM) install
|
| pwd
| $(PWD)
| $(PWD)
|
| rm
| $(RM)
| $(RM) -rf hello
|
| sed
| $(SED)
| $(SED) -i "s/hello/world/g" hello.txt
|
| tail
| $(TAIL)
| $(TAIL) -f hello.log
|
| touch
| $(TOUCH)
| $(TOUCH) hello.txt
|
| true
| $(TRUE)
| echo success && $(TRUE)
|
Support
Submit an issue
Contributing
Review the guidelines for contributing
License
Jam Risser © 2020
Changelog
Review the changelog
Credits
- Jam Risser - Author