|
| 1 | +BUILD_VERSION := $(if $(BUILD_VERSION),$(BUILD_VERSION),$(shell git describe --tags --always --dirty)) |
| 2 | +BUILD_COMMIT := $(if $(BUILD_COMMIT),$(BUILD_COMMIT),$(shell git log --format="%H" -n 1)) |
| 3 | +BUILD_COMMIT_TS := $(if $(BUILD_COMMIT_TS),$(BUILD_COMMIT_TS),$(shell git log --format="%ct" -n 1)) |
| 4 | +BUILD_BRANCH := $(if $(BUILD_BRANCH),$(BUILD_BRANCH),$(shell git rev-parse --abbrev-ref HEAD)) |
| 5 | +BUILD_TIME := $(if $(BUILD_TIME),$(BUILD_TIME),$(shell date +%FT%T%z)) |
| 6 | +BUILD_MACHINE := $(if $(BUILD_MACHINE),$(BUILD_MACHINE),$(shell uname -n -m -r -s)) |
| 7 | +BUILD_GO_VERSION := $(if $(BUILD_GO_VERSION),$(BUILD_GO_VERSION),$(shell go version | cut -d' ' -f3)) |
| 8 | + |
| 9 | +COMMON_BUILD_VARS := \ |
| 10 | + -X 'github.com/vkcom/tl/internal/build.buildTimestamp=$(BUILD_TIME)' \ |
| 11 | + -X 'github.com/vkcom/tl/internal/build.machine=$(BUILD_MACHINE)' \ |
| 12 | + -X 'github.com/vkcom/tl/internal/build.commit=$(BUILD_COMMIT)' \ |
| 13 | + -X 'github.com/vkcom/tl/internal/build.version=$(BUILD_VERSION)' \ |
| 14 | + -X 'github.com/vkcom/tl/internal/build.commitTimestamp=$(BUILD_COMMIT_TS)' \ |
| 15 | + -X 'github.com/vkcom/tl/internal/build.branchName=$(BUILD_BRANCH)' \ |
| 16 | + |
| 17 | +COMMON_LDFLAGS = $(COMMON_BUILD_VARS) -extldflags '-O2' |
| 18 | + |
| 19 | +GO = go |
| 20 | + |
| 21 | +SHA256_CHECKSUM := $(shell go run ./cmd/sha256sum ./internal) |
| 22 | +ifndef SHA256_CHECKSUM |
| 23 | +$(error SHA256_CHECKSUM failed to set, problem with go run cmd/sha256sum internal) |
| 24 | +endif |
| 25 | + |
| 26 | +.PHONY: build |
| 27 | + |
| 28 | +all: build |
| 29 | + |
| 30 | +build: |
| 31 | + @echo "Building tlgen with sha256 checksum $(SHA256_CHECKSUM)" |
| 32 | + @$(GO) build -ldflags "$(COMMON_LDFLAGS) -X 'github.com/vkcom/tl/internal/tlcodegen.buildSHA256Checksum=$(SHA256_CHECKSUM)'" ./cmd/tlgen |
| 33 | + |
| 34 | + |
0 commit comments