1
0
mirror of https://github.com/alice-lg/alice-lg.git synced 2024-05-11 05:55:03 +00:00
2021-03-22 15:10:00 +01:00

66 lines
1.2 KiB
Makefile

#
# Alice LG Backend
# ----------------
#
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
LDFLAGS=-ldflags="-X main.version=$(APP_VERSION)"
FILES=$(shell find . -depth 1 ! -name "*_test.go" -name "*.go")
all: deps $(TARGET)
@echo "Built $(VERSION) @ $(TARGET)"
deps:
GO111MODULE=on go get -v .
osx-dev:
GO111MODULE=on go run $(FILES)
osx:
GO111MODULE=on GOARCH=$(ARCH) GOOS=darwin go build $(LDFLAGS) -o $(PROG)-osx-$(ARCH)
linux:
GO111MODULE=on GOARCH=$(ARCH) GOOS=linux go build $(LDFLAGS) -o $(PROG)-linux-$(ARCH)
alpine:
GO111MODULE=on CGO_ENABLED=0 GOOS=linux go build \
-a -installsuffix cgo \
$(LDFLAGS) -o $(PROG)-linux-$(ARCH)
test:
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
dev: clean all
prod: clean $(TARGET)
@echo "Build $(VERSION) [production] @ $(TARGET)"
clean:
rm -f $(PROG)-osx-$(ARCH)
rm -f $(PROG)-linux-$(ARCH)
coverage:
go test -coverprofile=coverage.out
go tool cover -func=coverage.out