wit-new-machine/Makefile

105 lines
2.6 KiB
Makefile

GITCOMMIT = $(shell git rev-list -1 HEAD)
GOVERSION = $(shell go version | cut -d' ' -f 3)
BUILDTIME = $(shell date -u --iso-8601=seconds)
VERSION = $(shell cat resources/VERSION)
# PATH=/usr/bin:$PATH go version
build:
git pull
# reset
GO111MODULE="off" go build -v
./wit-new-machine
release:
wit go update
go install -ldflags " \
-X main.GITCOMMIT=${GITCOMMIT} \
-X main.GOVERSION='${GOVERSION}' \
-X main.BUILDTIME='${BUILDTIME}' \
-X main.VERSION=${VERSION}"
~/go/bin/wit-new-machine
static:
# CGO_ENABLED=0 GO111MODULE="off" go build
# GO111MODULE="off" go build -v -x -ldflags="-d"
# GO111MODULE="off" go build -v -x -ldflags="-extldflags='-static -L /usr/lib/x86_64-linux-gnu/ -l /usr/lib/x86_64-linux-gnu/libayatana-appindicator3.so'"
GO111MODULE="off" go build -v -x -ldflags="-extldflags='-static'"
GO111MODULE="off" go build -v -x -ldflags="-extldflags=-static"
gomod-update:
wit go update
gomod-init:
-go mod init
go mod tidy -v
gomod-clean:
rm -f go.*
# https://golang.cafe/blog/golang-debugging-with-delve.html
# debug using 'delve'
debug:
dlv debug
push:
wit git push
tag-check:
wget https://proxy.golang.org/git.wit.org/wit/gui/@v/list
cat list
rm -f list
tag-version:
# git push --delete origin v0.6.15 # to delete a tag upstream
git diff --quiet
# go build # just an extra check to make sure the damn thing builds
# git tag v${VERSION}
git push --tags
# a custom go target name
generate:
go generate
build-all: build-darwin build-windows
# https://www.digitalocean.com/community/tutorials/how-to-build-go-executables-for-multiple-platforms-on-ubuntu-16-04
build-darwin:
env GOOS=darwin GOARCH=amd64 go build
build-windows:
env GOOS=windows GOARCH=amd64 go build
build-linux:
env GOOS=linux GOARCH=amd64 go build
gaper:
# 'gaper' is a simple and smart golang tool that just rebuilds every time you change a file
# go get -u github.com/maxcnunes/gaper
gaper
build-1-18:
PATH=/usr/lib/go-1.18/bin/:${PATH} make
deb:
cd debian && make
-wit mirrors
# From: https://github.com/liweiyi88/gosnakego # Sept 11 2022
#
# .PHONY: install release
#
# ARTIFACTS_DIR=artifacts/${VERSION}
# GITHUB_USERNAME=liweiyi88
#
# install:
# echo version=${VERSION}
# go install
#
# release:
# GOOS=windows GOARCH=amd64 go build -o $(ARTIFACTS_DIR)/gosnakego_windows_amd64.exe
# GOOS=darwin GOARCH=amd64 go build -o $(ARTIFACTS_DIR)/gosnakego_darwin_amd64
# GOOS=linux GOARCH=amd64 go build -o $(ARTIFACTS_DIR)/gosnakego_linux_amd64
# This uploads to github releases:
# ghr -u $(GITHUB_USERNAME) --replace ${VERSION} $(ARTIFACTS_DIR)