2017-05-16 13:39:59 +02:00
|
|
|
#
|
2017-05-29 12:55:22 +02:00
|
|
|
# Alice LG Backend
|
|
|
|
# ----------------
|
2017-05-16 13:39:59 +02:00
|
|
|
#
|
|
|
|
|
|
|
|
PROG=alice-lg
|
|
|
|
ARCH=amd64
|
|
|
|
|
|
|
|
APP_VERSION=$(shell cat ../VERSION)
|
|
|
|
VERSION=$(APP_VERSION)_$(shell git rev-parse --short HEAD)
|
|
|
|
|
|
|
|
LOCAL_RPMS=RPMS
|
|
|
|
|
|
|
|
# OS Detection
|
|
|
|
UNAME=$(shell uname)
|
|
|
|
ifeq ($(UNAME), Darwin)
|
|
|
|
TARGET=osx
|
|
|
|
else
|
|
|
|
TARGET=linux
|
|
|
|
endif
|
|
|
|
|
2017-05-19 11:57:25 +02:00
|
|
|
|
|
|
|
LDFLAGS=-ldflags="-X main.version=$(APP_VERSION)"
|
2019-01-08 10:15:05 +01:00
|
|
|
FILES=$(shell find . -depth 1 ! -name "*_test.go" -name "*.go")
|
2017-05-19 11:57:25 +02:00
|
|
|
|
2019-09-24 16:58:24 +02:00
|
|
|
all: deps $(TARGET)
|
2017-05-16 13:39:59 +02:00
|
|
|
@echo "Built $(VERSION) @ $(TARGET)"
|
|
|
|
|
2017-05-29 10:27:52 +02:00
|
|
|
deps:
|
2019-05-10 12:39:34 +02:00
|
|
|
GO111MODULE=on go get -v .
|
2017-05-29 10:27:52 +02:00
|
|
|
|
2019-09-24 16:58:24 +02:00
|
|
|
osx-dev:
|
2019-05-10 14:05:25 +02:00
|
|
|
GO111MODULE=on go run $(FILES)
|
2019-01-08 10:15:05 +01:00
|
|
|
|
2019-09-24 16:58:24 +02:00
|
|
|
osx:
|
2019-05-10 14:05:25 +02:00
|
|
|
GO111MODULE=on GOARCH=$(ARCH) GOOS=darwin go build $(LDFLAGS) -o $(PROG)-osx-$(ARCH)
|
2017-05-16 13:39:59 +02:00
|
|
|
|
2019-09-24 16:58:24 +02:00
|
|
|
linux:
|
2019-05-10 14:05:25 +02:00
|
|
|
GO111MODULE=on GOARCH=$(ARCH) GOOS=linux go build $(LDFLAGS) -o $(PROG)-linux-$(ARCH)
|
2017-05-16 13:39:59 +02:00
|
|
|
|
2019-09-24 16:58:24 +02:00
|
|
|
alpine:
|
|
|
|
GO111MODULE=on CGO_ENABLED=0 GOOS=linux go build \
|
|
|
|
-a -installsuffix cgo \
|
|
|
|
$(LDFLAGS) -o $(PROG)-linux-$(ARCH)
|
|
|
|
|
2018-06-26 00:10:53 +02:00
|
|
|
test:
|
2019-05-10 14:05:25 +02:00
|
|
|
GO111MODULE=on go test -v
|
|
|
|
cd api/ && GO111MODULE=on go test -v
|
|
|
|
cd caches/ && GO111MODULE=on go test -v
|
|
|
|
cd sources/birdwatcher && GO111MODULE=on go test -v
|
2018-06-26 00:10:53 +02:00
|
|
|
|
2017-05-16 13:39:59 +02:00
|
|
|
|
2017-07-04 11:34:53 +02:00
|
|
|
dev: clean all
|
|
|
|
|
2021-03-22 15:10:00 +01:00
|
|
|
prod: clean $(TARGET)
|
2018-07-16 17:31:53 +02:00
|
|
|
@echo "Build $(VERSION) [production] @ $(TARGET)"
|
|
|
|
|
|
|
|
|
2017-05-16 13:39:59 +02:00
|
|
|
clean:
|
|
|
|
rm -f $(PROG)-osx-$(ARCH)
|
|
|
|
rm -f $(PROG)-linux-$(ARCH)
|
2017-06-30 11:12:01 +02:00
|
|
|
|
|
|
|
coverage:
|
|
|
|
go test -coverprofile=coverage.out
|
|
|
|
go tool cover -func=coverage.out
|