LabCodeHub öffentliche Ansicht
Anmelden
Küpper / ehc-tvwall öffentlich
Branch: main
ehc-tvwall / Makefile
Verlauf Rohdaten
R Rüdiger Küpper fix: v1.0.0
14518d05 vor 11 Tagen
Makefile 56 Zeilen · 1.6 KB · Makefile
1
# TV-Wall - Bauen und Paketieren
2
#
3
#   make                 lokal bauen (build/tvwall)
4
#   make pi64            fuer Raspberry Pi OS 64 Bit (Pi 3/4/5)
5
#   make pi32            fuer Raspberry Pi OS 32 Bit (Pi 2/3/Zero 2)
6
#   make dist            fertiges Installationspaket bauen (dist/*.tar.gz)
7
#   make run             lokal starten (ohne mpv, Web auf :8080)
8
9
BINARY  := tvwall
10
VERSION ?= 1.0.0
11
LDFLAGS := -s -w -X main.version=$(VERSION)
12
PKG     := ./cmd/tvwall
13
14
.PHONY: all build pi64 pi32 dist clean run test fmt vet
15
16
all: build
17
18
build:
19
	@mkdir -p build
20
	go build -trimpath -ldflags "$(LDFLAGS)" -o build/$(BINARY) $(PKG)
21
22
pi64:
23
	@mkdir -p build
24
	GOOS=linux GOARCH=arm64 CGO_ENABLED=0 \
25
		go build -trimpath -ldflags "$(LDFLAGS)" -o build/$(BINARY)-linux-arm64 $(PKG)
26
27
pi32:
28
	@mkdir -p build
29
	GOOS=linux GOARCH=arm GOARM=7 CGO_ENABLED=0 \
30
		go build -trimpath -ldflags "$(LDFLAGS)" -o build/$(BINARY)-linux-arm $(PKG)
31
32
# Paket zum Kopieren auf den Pi: Binaries + Installer + Konfiguration.
33
dist: pi64 pi32
34
	@rm -rf dist/$(BINARY)-$(VERSION)
35
	@mkdir -p dist/$(BINARY)-$(VERSION)/build
36
	cp build/$(BINARY)-linux-arm64 build/$(BINARY)-linux-arm dist/$(BINARY)-$(VERSION)/build/
37
	cp -r install.sh config systemd scripts README.md dist/$(BINARY)-$(VERSION)/
38
	chmod +x dist/$(BINARY)-$(VERSION)/install.sh dist/$(BINARY)-$(VERSION)/scripts/*
39
	cd dist && tar czf $(BINARY)-$(VERSION).tar.gz $(BINARY)-$(VERSION)
40
	@echo
41
	@echo "Fertig: dist/$(BINARY)-$(VERSION).tar.gz"
42
43
fmt:
44
	gofmt -w ./cmd ./internal
45
46
vet:
47
	go vet ./...
48
49
test:
50
	go test ./...
51
52
run: build
53
	./build/$(BINARY) -no-player -config /dev/null -state-dir ./.devstate -addr :8080
54
55
clean:
56
	rm -rf build dist