Skip to content

Commit cc39c9e

Browse files
committed
build: enable fast failing by default
1 parent 63c5af9 commit cc39c9e

File tree

1 file changed

+30
-1
lines changed

1 file changed

+30
-1
lines changed

tools/make/lib/install/addons.mk

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,21 @@ install_node_addons_list_addons_flags := "--pattern $(node_addons_pattern)"
6161
# make install-node-addons
6262
#/
6363
install-node-addons: $(NODE_MODULES) clean-node-addons
64+
ifeq ($(FAIL_FAST), true)
65+
$(QUIET) $(MAKE) LIST_PKGS_ADDONS_FLAGS=$(install_node_addons_list_addons_flags) -f $(this_file) list-pkgs-addons | while read -r pkg; do \
66+
if echo "$$pkg" | grep -v '^\/.*\|^[a-zA-Z]:.*' >/dev/null; then \
67+
continue; \
68+
fi; \
69+
echo ''; \
70+
echo "Building add-on: $$pkg"; \
71+
cd $$pkg && \
72+
MAKEFLAGS= \
73+
NODE_PATH="$(NODE_PATH)" \
74+
GYP_DEFINES="$(NODE_GYP_DEFINES)" \
75+
$(NODE_GYP) $(NODE_GYP_FLAGS) rebuild \
76+
|| { echo "Error: failed to build add-on: $$pkg"; exit 1; } \
77+
done
78+
else
6479
$(QUIET) $(MAKE) LIST_PKGS_ADDONS_FLAGS=$(install_node_addons_list_addons_flags) -f $(this_file) list-pkgs-addons | while read -r pkg; do \
6580
if echo "$$pkg" | grep -v '^\/.*\|^[a-zA-Z]:.*' >/dev/null; then \
6681
continue; \
@@ -74,6 +89,7 @@ install-node-addons: $(NODE_MODULES) clean-node-addons
7489
$(NODE_GYP) $(NODE_GYP_FLAGS) rebuild \
7590
|| { echo "Error: failed to build add-on: $$pkg"; exit 0; } \
7691
done
92+
endif
7793

7894
.PHONY: install-node-addons
7995

@@ -83,7 +99,19 @@ install-node-addons: $(NODE_MODULES) clean-node-addons
8399
# @example
84100
# make clean-node-addons
85101
#/
86-
clean-node-addons:
102+
clean-node-addons: $(NODE_MODULES)
103+
ifeq ($(FAIL_FAST), true)
104+
$(QUIET) $(MAKE) LIST_PKGS_ADDONS_FLAGS=$(install_node_addons_list_addons_flags) -f $(this_file) list-pkgs-addons | while read -r pkg; do \
105+
if echo "$$pkg" | grep -v '^\/.*\|^[a-zA-Z]:.*' >/dev/null; then \
106+
continue; \
107+
fi; \
108+
echo ''; \
109+
echo "Cleaning add-on: $$pkg"; \
110+
cd $$pkg/src && $(MAKE) clean && \
111+
cd $$pkg && $(NODE_GYP) clean \
112+
|| { echo "Error: failed to clean add-on: $$pkg"; exit 1; } \
113+
done
114+
else
87115
$(QUIET) $(MAKE) LIST_PKGS_ADDONS_FLAGS=$(install_node_addons_list_addons_flags) -f $(this_file) list-pkgs-addons | while read -r pkg; do \
88116
if echo "$$pkg" | grep -v '^\/.*\|^[a-zA-Z]:.*' >/dev/null; then \
89117
continue; \
@@ -94,5 +122,6 @@ clean-node-addons:
94122
cd $$pkg && $(NODE_GYP) clean \
95123
|| { echo "Error: failed to clean add-on: $$pkg"; exit 0; } \
96124
done
125+
endif
97126

98127
.PHONY: clean-node-addons

0 commit comments

Comments
 (0)