2018-02-09 21:20:32 +01:00
|
|
|
OS := $(shell uname)
|
|
|
|
ifeq ($(OS),Linux)
|
|
|
|
TAR_OPTS := --wildcards
|
|
|
|
endif
|
|
|
|
|
2018-06-28 17:39:45 +02:00
|
|
|
all: deps lint test install
|
2014-12-22 16:01:23 +01:00
|
|
|
|
2015-09-17 20:57:27 +02:00
|
|
|
fmt:
|
|
|
|
go fmt ./...
|
2013-09-08 19:37:41 +02:00
|
|
|
|
|
|
|
test:
|
2015-09-17 20:57:27 +02:00
|
|
|
go test ./...
|
2014-12-22 16:53:41 +01:00
|
|
|
|
2016-04-15 17:59:56 +02:00
|
|
|
vet:
|
|
|
|
go vet ./...
|
|
|
|
|
2018-06-28 17:39:45 +02:00
|
|
|
megacheck:
|
|
|
|
ifdef TRAVIS
|
|
|
|
megacheck 2> /dev/null; if [ $$? -eq 127 ]; then \
|
|
|
|
go get -v honnef.co/go/tools/cmd/megacheck; \
|
|
|
|
fi
|
|
|
|
megacheck ./...
|
|
|
|
endif
|
|
|
|
|
|
|
|
check-fmt:
|
2018-08-14 21:00:55 +02:00
|
|
|
bash -c 'diff --line-format="%L" <(echo -n) <(gofmt -d -s $$(find . -type f -name "*.go" -not -path "./vendor/*"))'
|
2018-06-28 17:39:45 +02:00
|
|
|
|
|
|
|
lint: check-fmt vet megacheck
|
|
|
|
|
2016-04-15 17:59:56 +02:00
|
|
|
deps:
|
|
|
|
go get -d -v ./...
|
|
|
|
|
2015-09-17 20:57:27 +02:00
|
|
|
install:
|
2018-02-09 21:57:33 +01:00
|
|
|
go install ./...
|
2015-09-17 22:25:37 +02:00
|
|
|
|
2018-02-09 21:20:32 +01:00
|
|
|
databases := GeoLite2-City GeoLite2-Country
|
|
|
|
|
|
|
|
$(databases):
|
|
|
|
mkdir -p data
|
2018-08-20 20:51:56 +02:00
|
|
|
curl -fsSL -m 30 https://geolite.maxmind.com/download/geoip/database/$@.tar.gz | tar $(TAR_OPTS) --strip-components=1 -C $(PWD)/data -xzf - '*.mmdb'
|
2018-02-09 21:20:32 +01:00
|
|
|
test ! -f data/GeoLite2-City.mmdb || mv data/GeoLite2-City.mmdb data/city.mmdb
|
|
|
|
test ! -f data/GeoLite2-Country.mmdb || mv data/GeoLite2-Country.mmdb data/country.mmdb
|
|
|
|
|
|
|
|
geoip-download: $(databases)
|