mirror of
https://github.com/SCST-project/scst.git
synced 2026-08-24 16:16:40 +00:00
Makefiles: Propagate recursive command failures
Return the failing submake status from the top-level and Debian build loops instead of turning an early failure into success. Collect and check the statuses of the parallel iSCSI and SRP cleanup jobs as well.
This commit is contained in:
@@ -186,18 +186,19 @@ tags:
|
||||
find . -type f -name "*.[ch]" | ctags --c-kinds=+p --fields=+iaS --extra=+q -e -L-
|
||||
|
||||
cov-build:
|
||||
-for d in $(SCST_DIR) $(ISCSI_DIR) $(OLD_QLA_DIR) $(NEW_QLA_DIR) \
|
||||
for d in $(SCST_DIR) $(ISCSI_DIR) $(OLD_QLA_DIR) $(NEW_QLA_DIR) \
|
||||
$(SRP_DIR) $(SCST_LOCAL_DIR) $(FCST_DIR) $(USR_DIR) \
|
||||
$(SCSTADM_DIR); do \
|
||||
BUILD_2X_MODULE=y CONFIG_SCSI_QLA_FC=y \
|
||||
CONFIG_SCSI_QLA2XXX_TARGET=y $(MAKE) -j$$(nproc) -C "$$d"; \
|
||||
CONFIG_SCSI_QLA2XXX_TARGET=y $(MAKE) -j$$(nproc) -C "$$d" || \
|
||||
exit $$?; \
|
||||
done
|
||||
|
||||
all clean extraclean install uninstall:
|
||||
-if [ $@ = extraclean ]; then rm -f TAGS tags cscope.out; fi
|
||||
-for d in $(SCST_DIR) $(ISCSI_DIR) $(QLA_DIR) $(SRP_DIR) \
|
||||
if [ $@ = extraclean ]; then rm -f TAGS tags cscope.out; fi
|
||||
for d in $(SCST_DIR) $(ISCSI_DIR) $(QLA_DIR) $(SRP_DIR) \
|
||||
$(SCST_LOCAL_DIR) $(FCST_DIR) $(USR_DIR) $(SCSTADM_DIR); do \
|
||||
$(MAKE) -j$$(nproc) -C "$$d" $@ || break; \
|
||||
$(MAKE) -j$$(nproc) -C "$$d" $@ || exit $$?; \
|
||||
done
|
||||
|
||||
scst:
|
||||
|
||||
Vendored
+4
-4
@@ -58,7 +58,7 @@ build:
|
||||
export BUILD_2X_MODULE=y && \
|
||||
export CONFIG_SCSI_QLA_FC=y && \
|
||||
export CONFIG_SCSI_QLA2XXX_TARGET=y && \
|
||||
for d in $(SUBDIRS); do $(MAKE) -C $$d; done
|
||||
for d in $(SUBDIRS); do $(MAKE) -C $$d || exit $$?; done
|
||||
|
||||
build-indep: build
|
||||
|
||||
@@ -74,10 +74,10 @@ install:
|
||||
export CONFIG_SCSI_QLA2XXX_TARGET=y && \
|
||||
for d in $(SUBDIRS); do \
|
||||
if [ $$d = scst ]; then \
|
||||
{ $(MAKE) -C $$d install || break; } \
|
||||
$(MAKE) -C $$d install || exit $$?; \
|
||||
else \
|
||||
{ INSTALL_MOD_PATH="$(DESTDIR)" $(MAKE) -C $$d install; } ||\
|
||||
break; \
|
||||
INSTALL_MOD_PATH="$(DESTDIR)" $(MAKE) -C $$d install || \
|
||||
exit $$?; \
|
||||
fi; \
|
||||
done && \
|
||||
make $(PKG_BUILD_MODE) && \
|
||||
|
||||
+10
-3
@@ -194,11 +194,18 @@ uninstall:
|
||||
clean:
|
||||
rm -rf include/iscsi_scst_itf_ver.h
|
||||
rm -rf conftest/*/{build-output,result}*.txt
|
||||
status=0; pids=(); \
|
||||
for d in conftest/* kernel kernel/isert-scst; do \
|
||||
[ -d "$$d" ] && $(MAKE) -C $(KDIR) M=$(shell pwd)/$$d $@ & \
|
||||
rm -f $$d/result*.txt; \
|
||||
if [ -d "$$d" ]; then \
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)/$$d $@ & \
|
||||
pids+=("$$!"); \
|
||||
fi; \
|
||||
rm -f $$d/result*.txt || status=$$?; \
|
||||
done; \
|
||||
wait
|
||||
for pid in "$${pids[@]}"; do \
|
||||
wait "$$pid" || status=$$?; \
|
||||
done; \
|
||||
exit $$status
|
||||
$(MAKE) -C usr $@
|
||||
|
||||
extraclean: clean
|
||||
|
||||
+12
-3
@@ -6,6 +6,8 @@ ifndef PREFIX
|
||||
PREFIX=/usr/local
|
||||
endif
|
||||
|
||||
SHELL=/bin/bash
|
||||
|
||||
SCST_DIR := $(shell echo "$$PWD")/../scst/src
|
||||
|
||||
ifeq ($(KVER),)
|
||||
@@ -158,11 +160,18 @@ check:
|
||||
clean:
|
||||
rm -rf conftest/pre_cflags conftest/kcflags
|
||||
rm -rf conftest/*/{build-output,result}*.txt
|
||||
status=0; pids=(); \
|
||||
for d in conftest/* src; do \
|
||||
[ -d "$$d" ] && $(MAKE) -C $(KDIR) M=$(shell pwd)/$$d $@ & \
|
||||
rm -f $$d/result*.txt; \
|
||||
if [ -d "$$d" ]; then \
|
||||
$(MAKE) -C $(KDIR) M=$(shell pwd)/$$d $@ & \
|
||||
pids+=("$$!"); \
|
||||
fi; \
|
||||
rm -f $$d/result*.txt || status=$$?; \
|
||||
done; \
|
||||
wait
|
||||
for pid in "$${pids[@]}"; do \
|
||||
wait "$$pid" || status=$$?; \
|
||||
done; \
|
||||
exit $$status
|
||||
|
||||
extraclean: clean
|
||||
rm -f *.orig *.rej
|
||||
|
||||
Reference in New Issue
Block a user