@@ -171,6 +171,7 @@ uninstall: ## Uninstalls node from $PREFIX (default=/usr/local).
171171 $(PYTHON ) tools/install.py $@ ' $(DESTDIR)' ' $(PREFIX)'
172172
173173.PHONY : clean
174+ .NOTPARALLEL : clean
174175clean : # # Remove build artifacts.
175176 $(RM ) -r out/Makefile $(NODE_EXE ) $(NODE_G_EXE ) out/$(BUILDTYPE ) /$(NODE_EXE ) \
176177 out/$(BUILDTYPE ) /node.exp
@@ -183,12 +184,14 @@ clean: ## Remove build artifacts.
183184 $(MAKE ) bench-addons-clean
184185
185186.PHONY : testclean
187+ .NOTPARALLEL : testclean
186188testclean :
187189# Next one is legacy remove this at some point
188190 $(RM) -r test/tmp*
189191 $(RM) -r test/.tmp*
190192
191193.PHONY : distclean
194+ .NOTPARALLEL : distclean
192195distclean :
193196 $(RM ) -r out
194197 $(RM ) config.gypi icu_config.gypi config_fips.gypi
@@ -203,6 +206,7 @@ distclean:
203206check : test
204207
205208.PHONY : coverage-clean
209+ .NOTPARALLEL : coverage-clean
206210# Remove files generated by running coverage, put the non-instrumented lib back
207211# in place
208212coverage-clean :
@@ -316,19 +320,23 @@ test-only: all ## For a quick test, does not run linter or build docs.
316320 $(MAKE ) tooltest
317321
318322# Used by `make coverage-test`
323+ .PHONY : test-cov
319324test-cov : all
320325 $(MAKE ) build-addons
321326 $(MAKE ) build-js-native-api-tests
322327 $(MAKE ) build-node-api-tests
323328 $(MAKE ) cctest
324329 CI_SKIP_TESTS=$(COV_SKIP_TESTS ) $(MAKE ) jstest
325330
331+ .PHONY : test-parallel
326332test-parallel : all
327333 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) parallel
328334
335+ .PHONY : test-valgrind
329336test-valgrind : all
330337 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) --valgrind sequential parallel message
331338
339+ .PHONY : test-check-deopts
332340test-check-deopts : all
333341 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) --check-deopts parallel sequential
334342
@@ -457,16 +465,20 @@ clear-stalled:
457465 echo $$ {PS_OUT} | xargs kill -9; \
458466 fi
459467
468+ .PHONY : test-build
460469test-build : | all build-addons build-js-native-api-tests build-node-api-tests
461470
471+ .PHONY : test-build-js-native-api
462472test-build-js-native-api : all build-js-native-api-tests
463473
474+ .PHONY : test-build-node-api
464475test-build-node-api : all build-node-api-tests
465476
466477.PHONY : test-all
467478test-all : test-build # # Run default tests with both Debug and Release builds.
468479 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=debug,release
469480
481+ .PHONY : test-all-valgrind
470482test-all-valgrind : test-build
471483 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=debug,release --valgrind
472484
@@ -544,30 +556,39 @@ build-ci:
544556run-ci : build-ci
545557 $(MAKE ) test-ci -j1
546558
559+ .PHONY : test-release
547560test-release : test-build
548561 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER )
549562
563+ .PHONY : test-debug
550564test-debug : test-build
551565 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=debug
552566
567+ .PHONY : test-message
553568test-message : test-build
554569 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) message
555570
571+ .PHONY : test-wpt
556572test-wpt : all
557573 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) wpt
558574
575+ .PHONY : test-simple
559576test-simple : | cctest # Depends on 'all'.
560577 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) parallel sequential
561578
579+ .PHONY : test-pummel
562580test-pummel : all
563581 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) pummel
564582
583+ .PHONY : test-internet
565584test-internet : all
566585 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) internet
567586
587+ .PHONY : test-benchmark
568588test-benchmark : | bench-addons-build
569589 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) benchmark
570590
591+ .PHONY : test-tick-processor
571592test-tick-processor : all
572593 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) tick-processor
573594
@@ -588,13 +609,16 @@ test-doc: doc-only lint-md ## Builds, lints, and verifies the docs.
588609test-doc-ci : doc-only
589610 $(PYTHON ) tools/test.py --shell $(NODE ) $(TEST_CI_ARGS ) $(PARALLEL_ARGS ) doctool
590611
612+ .PHONY : test-known-issues
591613test-known-issues : all
592614 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) known_issues
593615
594616# Related CI job: node-test-npm
617+ .PHONY : test-npm
595618test-npm : $(NODE_EXE ) # # Run the npm test suite on deps/npm.
596619 $(NODE ) tools/test-npm-package --install --logfile=test-npm.tap deps/npm test
597620
621+ .PHONY : test-npm-publish
598622test-npm-publish : $(NODE_EXE )
599623 npm_package_config_publishtest=true $(NODE ) deps/npm/test/run.js
600624
@@ -603,6 +627,7 @@ test-js-native-api: test-build-js-native-api
603627 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) js-native-api
604628
605629.PHONY : test-js-native-api-clean
630+ .NOTPARALLEL : test-js-native-api-clean
606631test-js-native-api-clean :
607632 $(RM ) -r test/js-native-api/* /build
608633 $(RM ) test/js-native-api/.buildstamp
@@ -612,6 +637,7 @@ test-node-api: test-build-node-api
612637 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) node-api
613638
614639.PHONY : test-node-api-clean
640+ .NOTPARALLEL : test-node-api-clean
615641test-node-api-clean :
616642 $(RM ) -r test/node-api/* /build
617643 $(RM ) test/node-api/.buildstamp
@@ -621,16 +647,19 @@ test-addons: test-build test-js-native-api test-node-api
621647 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) addons
622648
623649.PHONY : test-addons-clean
650+ .NOTPARALLEL : test-addons-clean
624651test-addons-clean :
625652 $(RM ) -r test/addons/?? _* /
626653 $(RM ) -r test/addons/* /build
627654 $(RM ) test/addons/.buildstamp test/addons/.docbuildstamp
628655 $(MAKE ) test-js-native-api-clean
629656 $(MAKE ) test-node-api-clean
630657
658+ .PHONY : test-async-hooks
631659test-async-hooks :
632660 $(PYTHON ) tools/test.py $(PARALLEL_ARGS ) --mode=$(BUILDTYPE_LOWER ) async-hooks
633661
662+ .PHONY : test-with-async-hooks
634663test-with-async-hooks :
635664 $(MAKE ) build-addons
636665 $(MAKE ) build-js-native-api-tests
@@ -783,6 +812,7 @@ docserve: $(apidocs_html) $(apiassets)
783812 @$(PYTHON ) -m http.server 8000 --bind 127.0.0.1 --directory out/doc/api
784813
785814.PHONY : docclean
815+ .NOTPARALLEL : docclean
786816docclean :
787817 $(RM ) -r out/doc
788818 $(RM ) " $( VERSIONS_DATA) "
@@ -951,6 +981,7 @@ XZ_COMPRESSION ?= 9e
951981PKG =$(TARNAME ) .pkg
952982MACOSOUTDIR =out/macos
953983
984+ .PHONY : check-xz
954985ifeq ($(SKIP_XZ ) , 1)
955986check-xz :
956987 $(info SKIP_XZ=1 supplied, skipping .tar.xz creation)
@@ -1086,6 +1117,7 @@ endif
10861117# Builds the macOS installer for releases.
10871118pkg : $(PKG )
10881119
1120+ .PHONY : corepack-update
10891121corepack-update :
10901122 rm -rf /tmp/node-corepack-clone
10911123 git clone ' https://github.com/nodejs/corepack.git' /tmp/node-corepack-clone
@@ -1094,6 +1126,7 @@ corepack-update:
10941126 cd deps/corepack && tar xf /tmp/node-corepack-clone/package.tgz --strip-components=1
10951127 chmod +x deps/corepack/shims/*
10961128
1129+ .PHONY : pkg-upload
10971130# Note: this is strictly for release builds on release machines only.
10981131pkg-upload : pkg
10991132 ssh $(STAGINGSERVER ) " mkdir -p nodejs/$( DISTTYPEDIR) /$( FULLVERSION) "
@@ -1142,6 +1175,7 @@ endif
11421175.PHONY : tar
11431176tar : $(TARBALL ) # # Create a source tarball.
11441177
1178+ .PHONY : tar-upload
11451179# Note: this is strictly for release builds on release machines only.
11461180tar-upload : tar
11471181 ssh $(STAGINGSERVER ) " mkdir -p nodejs/$( DISTTYPEDIR) /$( FULLVERSION) "
@@ -1154,6 +1188,7 @@ ifeq ($(XZ), 1)
11541188 ssh $(STAGINGSERVER) "touch nodejs/$(DISTTYPEDIR)/$(FULLVERSION)/$(TARNAME).tar.xz.done"
11551189endif
11561190
1191+ .PHONY : doc-upload
11571192# Note: this is strictly for release builds on release machines only.
11581193doc-upload : doc
11591194 ssh $(STAGINGSERVER ) " mkdir -p nodejs/$( DISTTYPEDIR) /$( FULLVERSION) /docs/"
@@ -1179,8 +1214,10 @@ ifeq ($(XZ), 1)
11791214endif
11801215 $(RM) $(TARNAME)-headers.tar
11811216
1217+ .PHONY : tar-headers
11821218tar-headers : $(TARBALL ) -headers # # Build the node header tarball.
11831219
1220+ .PHONY : tar-headers-upload
11841221tar-headers-upload : tar-headers
11851222 ssh $(STAGINGSERVER ) " mkdir -p nodejs/$( DISTTYPEDIR) /$( FULLVERSION) "
11861223 chmod 664 $(TARNAME ) -headers.tar.gz
@@ -1224,6 +1261,7 @@ endif
12241261# This requires NODE_VERSION_IS_RELEASE defined as 1 in src/node_version.h.
12251262binary : $(BINARYTAR ) # # Build release binary tarballs.
12261263
1264+ .PHONY : binary-upload
12271265# Note: this is strictly for release builds on release machines only.
12281266binary-upload : binary
12291267 ssh $(STAGINGSERVER ) " mkdir -p nodejs/$( DISTTYPEDIR) /$( FULLVERSION) "
@@ -1246,6 +1284,7 @@ bench bench-all: bench-addons-build
12461284bench-addons-build : | $(NODE_EXE ) benchmark/napi/.buildstamp
12471285
12481286.PHONY : bench-addons-clean
1287+ .NOTPARALLEL : bench-addons-clean
12491288bench-addons-clean :
12501289 $(RM ) -r benchmark/napi/* /build
12511290 $(RM ) benchmark/napi/.buildstamp
@@ -1256,6 +1295,7 @@ lint-md-rollup:
12561295 cd tools/lint-md && npm ci && npm run build
12571296
12581297.PHONY : lint-md-clean
1298+ .NOTPARALLEL : lint-md-clean
12591299lint-md-clean :
12601300 $(RM ) -r tools/lint-md/node_modules
12611301 $(RM ) tools/.* mdlintstamp
@@ -1372,9 +1412,12 @@ LINT_CPP_FILES = $(filter-out $(LINT_CPP_EXCLUDE), $(wildcard \
13721412# and the actual filename is generated so it won't match header guards
13731413ADDON_DOC_LINT_FLAGS =-whitespace/ending_newline,-build/header_guard
13741414
1415+ .PHONY : format-cpp-build
13751416format-cpp-build :
13761417 cd tools/clang-format && $(call available-node,$(run-npm-ci ) )
13771418
1419+ .PHONY : format-cpp-clean
1420+ .NOTPARALLEL : format-cpp-clean
13781421format-cpp-clean :
13791422 $(RM ) -r tools/clang-format/node_modules
13801423
@@ -1434,8 +1477,8 @@ lint-py-build:
14341477 $(PYTHON ) -m pip install --no-user --upgrade -t tools/pip/site-packages flake8 || \
14351478 $(PYTHON ) -m pip install --no-user --upgrade --system -t tools/pip/site-packages flake8
14361479
1437- ifneq ("","$(wildcard tools/pip/site-packages/flake8) ")
14381480.PHONY : lint-py
1481+ ifneq ("","$(wildcard tools/pip/site-packages/flake8) ")
14391482# Lints the Python code with flake8.
14401483# Flag the build if there are Python syntax errors or undefined names
14411484lint-py :
@@ -1500,6 +1543,7 @@ lint-clean:
15001543
15011544HAS_DOCKER ?= $(shell command -v docker > /dev/null 2>&1; [ $$? -eq 0 ] && echo 1 || echo 0)
15021545
1546+ .PHONY : gen-openssl
15031547ifeq ($(HAS_DOCKER ) , 1)
15041548DOCKER_COMMAND ?= docker run -it -v $(PWD ) :/node
15051549IS_IN_WORKTREE = $(shell grep '^gitdir: ' $(PWD ) /.git 2>/dev/null)
0 commit comments