mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-01-14 09:12:11 +03:00
Shellcheck.am: add silent rules for shellcheck and checkbashisms
Sponsored-by: Klara, Inc. Sponsored-by: Wasabi Technology, Inc. Reviewed-by: Paul Dagnelie <paul.dagnelie@klarasystems.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Rob Norris <rob.norris@klarasystems.com> Closes #17747
This commit is contained in:
parent
406f76b7e3
commit
4698208c78
@ -16,10 +16,14 @@ SHELLCHECK_OPTS = $(call JUST_SHELLCHECK_OPTS,$(1)) $(call JUST_CHECKBAS
|
||||
|
||||
PHONY += shellcheck
|
||||
|
||||
shellcheck_verbose = $(shellcheck_verbose_@AM_V@)
|
||||
shellcheck_verbose_ = $(shellcheck_verbose_@AM_DEFAULT_V@)
|
||||
shellcheck_verbose_0 = @echo SHELLCHECK $(_STGT);
|
||||
|
||||
_STGT = $(subst ^,/,$(subst shellcheck-here-,,$@))
|
||||
shellcheck-here-%:
|
||||
if HAVE_SHELLCHECK
|
||||
shellcheck --format=gcc --enable=all --exclude=SC1090,SC1091,SC2039,SC2250,SC2312,SC2317,SC3043 $$([ -n "$(SHELLCHECK_SHELL)" ] && echo "--shell=$(SHELLCHECK_SHELL)") "$$([ -e "$(_STGT)" ] || echo "$(srcdir)/")$(_STGT)"
|
||||
$(shellcheck_verbose)shellcheck --format=gcc --enable=all --exclude=SC1090,SC1091,SC2039,SC2250,SC2312,SC2317,SC3043 $$([ -n "$(SHELLCHECK_SHELL)" ] && echo "--shell=$(SHELLCHECK_SHELL)") "$$([ -e "$(_STGT)" ] || echo "$(srcdir)/")$(_STGT)"
|
||||
else
|
||||
@echo "skipping shellcheck of" $(_STGT) "because shellcheck is not installed"
|
||||
endif
|
||||
@ -29,11 +33,15 @@ shellcheck: $(SHELLCHECKSCRIPTS) $(call JUST_SHELLCHECK_OPTS,$(SHELLCHECKSCRIPTS
|
||||
|
||||
PHONY += checkbashisms
|
||||
|
||||
checkbashisms_verbose = $(checkbashisms_verbose_@AM_V@)
|
||||
checkbashisms_verbose_ = $(checkbashisms_verbose_@AM_DEFAULT_V@)
|
||||
checkbashisms_verbose_0 = @echo CHECKBASHISMS $(_BTGT);
|
||||
|
||||
# command -v *is* specified by POSIX and every shell in existence supports it
|
||||
_BTGT = $(subst ^,/,$(subst checkbashisms-here-,,$@))
|
||||
checkbashisms-here-%:
|
||||
if HAVE_CHECKBASHISMS
|
||||
! { [ -n "$(SHELLCHECK_SHELL)" ] && echo '#!/bin/$(SHELLCHECK_SHELL)'; cat "$$([ -e "$(_BTGT)" ] || echo "$(srcdir)/")$(_BTGT)"; } | \
|
||||
$(checkbashisms_verbose)! { [ -n "$(SHELLCHECK_SHELL)" ] && echo '#!/bin/$(SHELLCHECK_SHELL)'; cat "$$([ -e "$(_BTGT)" ] || echo "$(srcdir)/")$(_BTGT)"; } | \
|
||||
checkbashisms -npx 2>&1 | grep -vFe "'command' with option other than -p" -e 'command -v' -e 'any possible bashisms' $(CHECKBASHISMS_IGNORE) >&2
|
||||
else
|
||||
@echo "skipping checkbashisms of" $(_BTGT) "because checkbashisms is not installed"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user