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 \ -ic-url http://radio.arav.home.arpa/status-json.xsl -ic-playlist ./p.log run-dj: bin/dwelling-radiodj -listen 127.0.0.1:18323 -list-length 10 \ -playlist /mnt/data/appdata/radio/playlists/all-rand \ -mls-file ./mls-test install: install -Dm 0755 bin/${TARGET} ${DESTDIR}${PREFIX}/bin/${TARGET} install -Dm 0755 bin/${TARGET}dj ${DESTDIR}${PREFIX}/bin/${TARGET}dj install -Dm 0755 tools/radioctl ${DESTDIR}${PREFIX}/bin/${TARGET}ctl install -Dm 0755 tools/radiodj-fetch ${DESTDIR}${PREFIX}/bin/${TARGET}dj-fetch install -Dm 0755 tools/radiodj-listener-connect ${DESTDIR}${PREFIX}/bin/${TARGET}dj-listener-connect install -Dm 0755 tools/radiodj-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/radiodj.service ${DESTDIR}/${SYSDDIR}/${TARGET}dj.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}dj rm ${DESTDIR}${PREFIX}/bin/${TARGET}ctl rm ${DESTDIR}${PREFIX}/bin/${TARGET}dj-fetch rm ${DESTDIR}${PREFIX}/bin/${TARGET}dj-listener-connect rm ${DESTDIR}${PREFIX}/bin/${TARGET}dj-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}dj.service rm ${DESTDIR}${SYSDDIR}/${TARGET}-liquidsoap.service rm ${DESTDIR}${SYSDDIR}/${TARGET}-ezstream.service clean: rm -f web/*.jade.go go clean