github.com/observiq/carbon@v0.9.11-0.20200820160507-1b872e368a5e/Makefile (about)

     1  GOOS=$(shell go env GOOS)
     2  GOARCH=$(shell go env GOARCH)
     3  
     4  GIT_SHA=$(shell git rev-parse --short HEAD)
     5  
     6  BUILD_INFO_IMPORT_PATH=github.com/observiq/carbon/internal/version
     7  BUILD_X1=-X $(BUILD_INFO_IMPORT_PATH).GitHash=$(GIT_SHA)
     8  ifdef VERSION
     9  BUILD_X2=-X $(BUILD_INFO_IMPORT_PATH).Version=$(VERSION)
    10  endif
    11  BUILD_INFO=-ldflags "${BUILD_X1} ${BUILD_X2}"
    12  
    13  
    14  .PHONY: install-tools
    15  install-tools:
    16  	go install github.com/golangci/golangci-lint/cmd/golangci-lint
    17  	go install github.com/vektra/mockery/cmd/mockery
    18  
    19  .PHONY: test
    20  test:
    21  	go test -race -coverprofile coverage.txt -coverpkg ./... ./...
    22  
    23  .PHONY: bench
    24  bench:
    25  	go test -run=NONE -bench '.*' ./... -benchmem
    26  
    27  .PHONY: lint
    28  lint:
    29  	golangci-lint run ./...
    30  
    31  .PHONY: generate
    32  generate:
    33  	go generate ./...
    34  
    35  .PHONY: build
    36  build:
    37  	CGO_ENABLED=0 go build -o ./artifacts/carbon_$(GOOS)_$(GOARCH) $(BUILD_INFO) .
    38  
    39  .PHONY: install
    40  install:
    41  	CGO_ENABLED=0 go install $(BUILD_INFO) .
    42  
    43  .PHONY: build-all
    44  build-all: build-darwin-amd64 build-linux-amd64 build-windows-amd64
    45  
    46  .PHONY: build-darwin-amd64
    47  build-darwin-amd64:
    48  	@GOOS=darwin GOARCH=amd64 $(MAKE) build
    49  
    50  .PHONY: build-linux-amd64
    51  build-linux-amd64:
    52  	@GOOS=linux GOARCH=amd64 $(MAKE) build
    53  
    54  .PHONY: build-windows-amd64
    55  build-windows-amd64:
    56  	@GOOS=windows GOARCH=amd64 $(MAKE) build