surrealpatch/Makefile
2018-03-19 11:33:28 +00:00

60 lines
1.7 KiB
Makefile

# Copyright © 2016 Abcum Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
GO ?= CGO_ENABLED=0 go
CGO ?= CGO_ENABLED=1 go
LDF := -s -w
.PHONY: default
default:
@echo "Choose a Makefile target:"
@$(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print " - " $$1}}' | sort
.PHONY: kill
kill:
pkill -9 -f surreal
.PHONY: clean
clean:
rm -rf vendor
$(GO) clean -i -n
find . -type f \( -name '*.cover' -o -name '*.test' \) -exec rm -f {} \;
.PHONY: setup
setup:
glide install
.PHONY: tests
tests:
$(GO) test ./...
.PHONY: racer
racer:
$(CGO) test -race ./...
.PHONY: build
build: LDF += $(shell GOPATH=${GOPATH} build/flags.sh)
build:
$(GO) build -v -installsuffix cgo -ldflags '$(LDF)'
.PHONY: install
install: LDF += $(shell GOPATH=${GOPATH} build/flags.sh)
install:
$(GO) install -v -installsuffix cgo -ldflags '$(LDF)'
.PHONY: cover
cover:
echo 'mode: atomic' > main.cover
glide novendor | cut -d '/' -f-2 | xargs -I % sh -c 'touch temp.cover; $(GO) test -covermode=count -coverprofile=temp.cover %; tail -n +2 temp.cover >> main.cover; rm temp.cover;'
goveralls -coverprofile=./main.cover -service=circle-ci -repotoken=${COVERALLS}