forked from hush/lightwalletd
mdr0id
5 years ago
1 changed files with 76 additions and 0 deletions
@ -0,0 +1,76 @@ |
|||
# /************************************************************************
|
|||
# File: Makefile |
|||
# Author: mdr0id |
|||
# Date: 7/16/2019 |
|||
# Description: Used for local and container dev in CI deployments |
|||
# Usage: make <target_name> |
|||
# |
|||
# Known bugs/missing features: |
|||
# |
|||
# ************************************************************************/ |
|||
PROJECT_NAME := "lightwalletd" |
|||
GO_FILES := $(shell find . -name '*.go' | grep -v /vendor/ | grep -v '*_test.go') |
|||
GO_TEST_FILES := $(shell find . -name '*_test.go' -type f | rev | cut -d "/" -f2- | rev | sort -u) |
|||
GO_BUILD_FILES := $(shell find . -name 'main.go') |
|||
|
|||
#PKG_LIST := $(shell go list | grep -v /vendor/)
|
|||
#GO_COV_REPORTS :=
|
|||
|
|||
.PHONY: all dep build clean test coverage coverhtml lint |
|||
|
|||
all: build |
|||
|
|||
# Lint golang files
|
|||
lint: |
|||
@golint -set_exit_status |
|||
|
|||
show_tests: |
|||
@echo ${GO_TEST_FILES} |
|||
|
|||
# Run unittests
|
|||
test: |
|||
@go test -v -short ${GO_TEST_FILES} |
|||
|
|||
# Run data race detector
|
|||
race: dep |
|||
@go test -v -race -short ${GO_TEST_FILES} |
|||
|
|||
# Run memory sanitizer (need to ensure proper build flag is set)
|
|||
msan: dep |
|||
@go test -v -msan -short ${GO_TEST_FILES} |
|||
|
|||
# Generate global code coverage report
|
|||
coverage: |
|||
@go test -coverprofile=coverage.out ${GO_TEST_FILES} |
|||
|
|||
# Generate code coverage report
|
|||
coverage_report: |
|||
@go tool cover -func=coverage.out |
|||
|
|||
# Generate code coverage report in HTML
|
|||
coverage_html: |
|||
@go tool cover -html=coverage.out |
|||
|
|||
# Generate documents
|
|||
docs: |
|||
@echo "Generating docs..." |
|||
|
|||
# Generate docker image
|
|||
image: |
|||
@echo "Building lightwalletd image..." |
|||
|
|||
# Get dependencies
|
|||
dep: |
|||
@go get -v -d ./... |
|||
|
|||
# Build binary
|
|||
build: #dep
|
|||
@go build -i -v ${GO_BUILD_FILES} |
|||
|
|||
# Install binaries into Go path
|
|||
install: |
|||
go install ./... |
|||
|
|||
clean: |
|||
@echo "clean project..." |
|||
#rm -f $(PROJECT_NAME) |
Loading…
Reference in new issue