diff --git a/Makefile b/Makefile index e0d756fea3ac35..9c01f8f244ee19 100644 --- a/Makefile +++ b/Makefile @@ -115,6 +115,7 @@ $(NODE_EXE) $(NODE_G_EXE): config.gypi out/Makefile ln -fs out/${build_type}/$(NODE_EXE) $@; fi else ifeq ($(BUILD_WITH), ninja) +NINJA ?= ninja ifeq ($(V),1) NINJA_ARGS := $(NINJA_ARGS) -v endif @@ -124,11 +125,11 @@ else NINJA_ARGS := $(NINJA_ARGS) $(filter -j%,$(MAKEFLAGS)) endif $(NODE_EXE): config.gypi out/Release/build.ninja - ninja -C out/Release $(NINJA_ARGS) + $(NINJA) -C out/Release $(NINJA_ARGS) if [ ! -r $@ ] || [ ! -L $@ ]; then ln -fs out/Release/$(NODE_EXE) $@; fi $(NODE_G_EXE): config.gypi out/Debug/build.ninja - ninja -C out/Debug $(NINJA_ARGS) + $(NINJA) -C out/Debug $(NINJA_ARGS) if [ ! -r $@ ] || [ ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi else $(NODE_EXE) $(NODE_G_EXE): diff --git a/doc/contributing/building-node-with-ninja.md b/doc/contributing/building-node-with-ninja.md index 8aae340e227034..01a04c3c2cfbe2 100644 --- a/doc/contributing/building-node-with-ninja.md +++ b/doc/contributing/building-node-with-ninja.md @@ -40,4 +40,13 @@ To create a debug build rather than a release build: ./configure --ninja --debug && make ``` +## Customizing `ninja` path + +On some systems (such as RHEL7 and below), the Ninja binary might be installed +with a different name. For these systems use the `NINJA` env var: + +```bash +./configure --ninja && NINJA="ninja-build" make +``` + [Ninja]: https://ninja-build.org/