@@ -21,14 +21,14 @@ LINTERS :=
2121FIXERS :=
2222
2323SHELLCHECK_VERSION ?= v0.8.0
24- SHELLCHECK_BIN := out/linters/shellcheck-$(SHELLCHECK_VERSION ) -$(LINT_ARCH )
24+ SHELLCHECK_BIN := $( LINT_ROOT ) / out/linters/shellcheck-$(SHELLCHECK_VERSION ) -$(LINT_ARCH )
2525$(SHELLCHECK_BIN ) :
26- mkdir -p out/linters
26+ mkdir -p $( LINT_ROOT ) / out/linters
2727 curl -sSfL -o $@ .tar.xz https://github.com/koalaman/shellcheck/releases/download/$(SHELLCHECK_VERSION ) /shellcheck-$(SHELLCHECK_VERSION ) .$(LINT_OS_LOWER ) .$(LINT_ARCH ) .tar.xz \
2828 || echo " Unable to fetch shellcheck for $( LINT_OS) /$( LINT_ARCH) : falling back to locally install"
2929 test -f $@ .tar.xz \
30- && tar -C out/linters -xJf $@ .tar.xz \
31- && mv out/linters/shellcheck-$(SHELLCHECK_VERSION ) /shellcheck $@ \
30+ && tar -C $( LINT_ROOT ) / out/linters -xJf $@ .tar.xz \
31+ && mv $( LINT_ROOT ) / out/linters/shellcheck-$(SHELLCHECK_VERSION ) /shellcheck $@ \
3232 || printf " #!/usr/bin/env shellcheck\n" > $@
3333 chmod u+x $@
3434
@@ -41,9 +41,9 @@ shellcheck-fix: $(SHELLCHECK_BIN)
4141 $(SHELLCHECK_BIN ) $(shell find . -name "* .sh") -f diff | { read -t 1 line || exit 0; { echo " $$ line" && cat; } | git apply -p2; }
4242
4343HADOLINT_VERSION ?= v2.8.0
44- HADOLINT_BIN := out/linters/hadolint-$(HADOLINT_VERSION ) -$(LINT_ARCH )
44+ HADOLINT_BIN := $( LINT_ROOT ) / out/linters/hadolint-$(HADOLINT_VERSION ) -$(LINT_ARCH )
4545$(HADOLINT_BIN ) :
46- mkdir -p out/linters
46+ mkdir -p $( LINT_ROOT ) / out/linters
4747 curl -sSfL -o $@ .dl https://github.com/hadolint/hadolint/releases/download/$(HADOLINT_VERSION ) /hadolint-$(LINT_OS ) -$(LINT_ARCH ) \
4848 || echo " Unable to fetch hadolint for $( LINT_OS) /$( LINT_ARCH) , falling back to local install"
4949 test -f $@ .dl && mv $(HADOLINT_BIN ) .dl $@ || printf " #!/usr/bin/env hadolint\n" > $@
@@ -55,28 +55,28 @@ hadolint-lint: $(HADOLINT_BIN)
5555
5656GOLANGCI_LINT_CONFIG := $(LINT_ROOT ) /.golangci.yml
5757GOLANGCI_LINT_VERSION ?= v1.43.0
58- GOLANGCI_LINT_BIN := out/linters/golangci-lint-$(GOLANGCI_LINT_VERSION ) -$(LINT_ARCH )
58+ GOLANGCI_LINT_BIN := $( LINT_ROOT ) / out/linters/golangci-lint-$(GOLANGCI_LINT_VERSION ) -$(LINT_ARCH )
5959$(GOLANGCI_LINT_BIN ) :
60- mkdir -p out/linters
61- rm -rf out/linters/golangci-lint-*
62- curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b out/linters $(GOLANGCI_LINT_VERSION )
63- mv out/linters/golangci-lint $@
60+ mkdir -p $( LINT_ROOT ) / out/linters
61+ rm -rf $( LINT_ROOT ) / out/linters/golangci-lint-*
62+ curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $( LINT_ROOT ) / out/linters $(GOLANGCI_LINT_VERSION )
63+ mv $( LINT_ROOT ) / out/linters/golangci-lint $@
6464
6565LINTERS += golangci-lint-lint
6666golangci-lint-lint : $(GOLANGCI_LINT_BIN )
67- $(GOLANGCI_LINT_BIN ) run
67+ find . -name go.mod -execdir " $( GOLANGCI_LINT_BIN) " run -c " $( GOLANGCI_LINT_CONFIG ) " \;
6868
6969FIXERS += golangci-lint-fix
7070golangci-lint-fix : $(GOLANGCI_LINT_BIN )
71- $(GOLANGCI_LINT_BIN ) run -- fix
71+ find . -name go.mod -execdir " $( GOLANGCI_LINT_BIN) " run -c " $( GOLANGCI_LINT_CONFIG ) " -- fix \;
7272
7373YAMLLINT_VERSION ?= 1.26.3
74- YAMLLINT_ROOT := out/linters/yamllint-$(YAMLLINT_VERSION )
74+ YAMLLINT_ROOT := $( LINT_ROOT ) / out/linters/yamllint-$(YAMLLINT_VERSION )
7575YAMLLINT_BIN := $(YAMLLINT_ROOT ) /dist/bin/yamllint
7676$(YAMLLINT_BIN ) :
77- mkdir -p out/linters
78- rm -rf out/linters/yamllint-*
79- curl -sSfL https://github.com/adrienverge/yamllint/archive/refs/tags/v$(YAMLLINT_VERSION ) .tar.gz | tar -C out/linters -zxf -
77+ mkdir -p $( LINT_ROOT ) / out/linters
78+ rm -rf $( LINT_ROOT ) / out/linters/yamllint-*
79+ curl -sSfL https://github.com/adrienverge/yamllint/archive/refs/tags/v$(YAMLLINT_VERSION ) .tar.gz | tar -C $( LINT_ROOT ) / out/linters -zxf -
8080 cd $(YAMLLINT_ROOT ) && pip3 install --target dist . || pip install --target dist .
8181
8282LINTERS += yamllint-lint
0 commit comments