31 lines
758 B
Makefile
31 lines
758 B
Makefile
|
DIRS := \
|
||
|
. \
|
||
|
nl
|
||
|
|
||
|
DEPS = \
|
||
|
github.com/vishvananda/netns \
|
||
|
golang.org/x/sys/unix
|
||
|
|
||
|
uniq = $(if $1,$(firstword $1) $(call uniq,$(filter-out $(firstword $1),$1)))
|
||
|
testdirs = $(call uniq,$(foreach d,$(1),$(dir $(wildcard $(d)/*_test.go))))
|
||
|
goroot = $(addprefix ../../../,$(1))
|
||
|
unroot = $(subst ../../../,,$(1))
|
||
|
fmt = $(addprefix fmt-,$(1))
|
||
|
|
||
|
all: test
|
||
|
|
||
|
$(call goroot,$(DEPS)):
|
||
|
go get $(call unroot,$@)
|
||
|
|
||
|
.PHONY: $(call testdirs,$(DIRS))
|
||
|
$(call testdirs,$(DIRS)):
|
||
|
go test -test.exec sudo -test.parallel 4 -timeout 60s -test.v github.com/vishvananda/netlink/$@
|
||
|
|
||
|
$(call fmt,$(call testdirs,$(DIRS))):
|
||
|
! gofmt -l $(subst fmt-,,$@)/*.go | grep -q .
|
||
|
|
||
|
.PHONY: fmt
|
||
|
fmt: $(call fmt,$(call testdirs,$(DIRS)))
|
||
|
|
||
|
test: fmt $(call goroot,$(DEPS)) $(call testdirs,$(DIRS))
|