1
0
dwelling-radio/Makefile

70 lines
2.4 KiB
Makefile
Executable File

TARGET:=dwelling-radio
SYSDDIR_:=${shell pkg-config systemd --variable=systemdsystemunitdir}
SYSDDIR:=${SYSDDIR_:/%=%}
DESTDIR:=
PREFIX:=/usr/local
VERSION=23.38.0
FLAGS:=-buildmode=pie -modcacherw -mod=readonly -trimpath
LDFLAGS:= -ldflags "-s -w -X main.version=${VERSION}" -tags osusergo,netgo
.PHONY: run install uninstall clean
${TARGET}: web/*.pug.go
go build -o bin/$@ ${LDFLAGS} ${FLAGS} cmd/$@/main.go
go build -o bin/$@dj ${LDFLAGS} ${FLAGS} cmd/$@dj/main.go
web/*.pug.go: web/templates/*.pug
ifeq (,$(wildcard $(shell go env GOPATH)/bin/jade))
go install github.com/Joker/jade/cmd/jade@latest
endif
go generate web/web.go
run:
bin/dwelling-radio -listen 127.0.0.1:18322 -mls-file ./mls-test \
-playlist /mnt/data/appdata/radio/playlists/all-rand
run-dj:
bin/dwelling-radiodj -listen 127.0.0.1:18323 -list-length 10 \
-mls-file ./mls-test
install:
install -Dm 0755 bin/${TARGET} ${DESTDIR}${PREFIX}/bin/${TARGET}
install -Dm 0755 tools/radioctl ${DESTDIR}${PREFIX}/bin/${TARGET}ctl
install -Dm 0755 tools/radio-fetch ${DESTDIR}${PREFIX}/bin/${TARGET}-fetch
install -Dm 0755 tools/radio-listener-connect ${DESTDIR}${PREFIX}/bin/${TARGET}-listener-connect
install -Dm 0755 tools/radio-listener-disconnect ${DESTDIR}${PREFIX}/bin/${TARGET}dj-listener-disconnect
install -Dm 0644 configs/radio.liq ${DESTDIR}/etc/dwelling/radio.liq
install -Dm 0644 configs/radio.vars.liq ${DESTDIR}/etc/dwelling/radio.vars.liq
install -Dm 0644 configs/ezstream.xml ${DESTDIR}/etc/dwelling/ezstream.xml
install -Dm 0644 configs/logrotate ${DESTDIR}/etc/logrotate.d/${TARGET}
install -Dm 0644 init/radio.service ${DESTDIR}/${SYSDDIR}/${TARGET}.service
install -Dm 0644 init/liquidsoap.service ${DESTDIR}/${SYSDDIR}/${TARGET}-liquidsoap.service
install -Dm 0644 init/ezstream.service ${DESTDIR}/${SYSDDIR}/${TARGET}-ezstream.service
uninstall:
rm ${DESTDIR}${PREFIX}/bin/${TARGET}
rm ${DESTDIR}${PREFIX}/bin/${TARGET}ctl
rm ${DESTDIR}${PREFIX}/bin/${TARGET}-fetch
rm ${DESTDIR}${PREFIX}/bin/${TARGET}-listener-connect
rm ${DESTDIR}${PREFIX}/bin/${TARGET}-listener-disconnect
rm ${DESTDIR}/etc/dwelling/radio.liq
rm ${DESTDIR}/etc/dwelling/ezstream.xml
rm ${DESTDIR}/etc/logrotate.d/${TARGET}
rm ${DESTDIR}${SYSDDIR}/${TARGET}.service
rm ${DESTDIR}${SYSDDIR}/${TARGET}-liquidsoap.service
rm ${DESTDIR}${SYSDDIR}/${TARGET}-ezstream.service
clean:
rm -f web/*.jade.go
go clean