From fa7bb7c67f0da3aed760f87e9edfc64138af0c60 Mon Sep 17 00:00:00 2001 From: jamesread Date: Thu, 20 May 2021 13:00:11 +0100 Subject: [PATCH] Early multi-architecture support --- .gitignore | 3 +++ Makefile | 46 ++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 45 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index a1b64a1..134a5dd 100644 --- a/.gitignore +++ b/.gitignore @@ -5,4 +5,7 @@ webui/node_modules gen/ go.sum OliveTin +OliveTin.armhf +OliveTin.exe reports +releases/ diff --git a/Makefile b/Makefile index 4442b7d..2eda27a 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,15 @@ -compile: daemon-compile +compile: daemon-compile-x64-lin -daemon-compile: - go build -o OliveTin github.com/jamesread/OliveTin/cmd/OliveTin +daemon-compile-armhf: + GOARCH=arm GOARM=6 go build -o OliveTin.armhf github.com/jamesread/OliveTin/cmd/OliveTin + +daemon-compile-x64-lin: + GOOS=linux go build -o OliveTin github.com/jamesread/OliveTin/cmd/OliveTin + +daemon-compile-x64-win: + GOOS=windows GOARCH=amd64 go build -o OliveTin.exe github.com/jamesread/OliveTin/cmd/OliveTin + +daemon-compile: daemon-compile-armhf daemon-compile-x64-lin daemon-compile-x64-win daemon-codestyle: go fmt ./... @@ -37,4 +45,34 @@ webui-codestyle: cd webui && eslint main.js js/* cd webui && stylelint style.css -.PHONY: grpc +release-common: + rm -rf releases/ + mkdir -p releases/common/ + cp -r webui releases/common/ + cp -r var/config.yaml releases/common/ + cp OliveTin.service releases/common/ + cp README.md releases/common/ + cp Dockerfile releases/common/ + +release-bin-rpi: daemon-compile-armhf release-common + mkdir -p releases/rpi/ + cd releases/common && cp -r * ../rpi/ + cp OliveTin.armhf releases/rpi/OliveTin + cd releases/rpi && tar cavf "../OliveTin-armhf-`date +'%Y-%m-%d'`.`git rev-parse --short HEAD`.tgz" . + +release-bin-x64-lin: daemon-compile-x64-lin release-common + mkdir -p releases/x64-lin/ + cd releases/common && cp -r * ../x64-lin/ + cp OliveTin releases/x64-lin/ + cd releases/x64-lin && tar cavf "../OliveTin-x64-linux-`date +'%Y-%m-%d'`.`git rev-parse --short HEAD`.tgz" . + +release-bin-x64-win: daemon-compile-x64-win release-common + mkdir -p releases/x64-win/ + cd releases/common && cp -r * ../x64-win/ + cp OliveTin.exe releases/x64-win/ + cd releases/x64-lin && zip -r "../OliveTin-x64-windows-`date +'%Y-%m-%d'`.`git rev-parse --short HEAD`.zip" . + +releases: release-bin-rpi release-bin-x64-lin release-bin-x64-win + + +.PHONY: grpc release-common