CURRENT_DIR := $(shell pwd | rev | awk -F \/ '{print $$1}' | rev)
|
BUILD_TIME := $(shell date "+%F %T")
|
COMMIT_SHA1 := $(shell git rev-parse HEAD)
|
SOURCE := main.go
|
CD := $(shell pwd)
|
|
ifndef MODULE_NAME
|
MODULE_NAME := $(CURRENT_DIR)
|
endif
|
|
ifndef APP_NAME
|
APP_NAME := $(MODULE_NAME)
|
endif
|
|
ifndef TAGS
|
TAGS :=
|
endif
|
|
CUR_OS := $(shell uname -m)
|
ifdef PLATFORM
|
CUR_OS =$(PLATFORM)
|
endif
|
ifeq ("${CUR_OS}", "aarch64")
|
export CGO_ENABLED=1
|
export GOOS=linux
|
export GOARCH=arm64
|
export CC=/opt/l4t-gcc/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
|
export CXX=/opt/l4t-gcc/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc
|
export CGO_CFLAGS=--sysroot=/opt/l4t-gcc/sysroot-glibc-linaro-2.25-2018.05-aarch64-linux-gnu
|
export CGO_CXXFLAGS=--sysroot=/opt/l4t-gcc/sysroot-glibc-linaro-2.25-2018.05-aarch64-linux-gnu
|
export CGO_LDFLAGS=--sysroot=/opt/l4t-gcc/sysroot-glibc-linaro-2.25-2018.05-aarch64-linux-gnu -lstdc++
|
endif
|
|
all:
|
go build ${TAGS} -ldflags "-X 'basic.com/valib/version.git.BuildVersion=${BUILD_VERSION}' -X 'basic.com/valib/version.git.BuildTime=${BUILD_TIME}' -X 'basic.com/valib/version.git.CommitSha1=${COMMIT_SHA1}' -X 'basic.com/valib/version.git.AppName=${APP_NAME}'" -a -o ${APP_NAME}
|
|
ifdef OUTPUT_DIR
|
mkdir -p $(OUTPUT_DIR)
|
mv ${APP_NAME} $(OUTPUT_DIR)
|
$(INI_SCRIPT) -m=w -f="$(MANIFEST)" -section="$(APP_NAME)" -key=Version -value="$(BUILD_VERSION)"
|
$(INI_SCRIPT) -m=w -f="$(MANIFEST)" -section="$(APP_NAME)" -key=BuildTime -value="$(BUILD_TIME)"
|
$(INI_SCRIPT) -m=w -f="$(MANIFEST)" -section="$(APP_NAME)" -key=Commit -value="$(COMMIT_SHA1)"
|
$(INI_SCRIPT) -m=w -f="$(MANIFEST)" -section="$(APP_NAME)" -key=Type -value=app
|
endif
|
|
clean:
|
rm -f ${APP_NAME}
|
|
.PHONY : all clean ${APP_NAME}
|