TARGET:=dwelling-radio SYSDDIR_:=${shell pkg-config systemd --variable=systemdsystemunitdir} SYSDDIR:=${SYSDDIR_:/%=%} DESTDIR:= PREFIX:=/usr/local VERSION=24.10.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 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 -fallback-song /mnt/data/appdata/radio/fallback.ogg 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}-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 configs/override.icecast.service ${DESTDIR}/etc/systemd/system/icecast.service.override.d/override.conf 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}/etc/systemd/system/icecast.service.override.d/override.conf 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