TARGET=dwelling-home SYSDDIR_=${shell pkg-config systemd --variable=systemdsystemunitdir} SYSDDIR=${SYSDDIR_:/%=%} DESTDIR:= PREFIX:=/usr/local VERSION=24.16.1 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/*_templ.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 web/*_templ.go: web/*.templ ifeq (,$(wildcard $(shell go env GOPATH)/bin/templ)) go install github.com/a-h/templ/cmd/templ@latest endif TEMPL_EXPERIMENT=rawgo $(shell go env GOPATH)/bin/templ generate sed -ri 's/a> "/a>"/g' web/*_templ.go run: | ${TARGET} bin/${TARGET} -listen 127.0.0.1:18123 -database-path . -captcha-expiry 10m \ -guestbook-page-size 10 install: install -Dm 0755 bin/${TARGET} ${DESTDIR}${PREFIX}/bin/${TARGET} install -Dm 0644 init/systemd.service ${DESTDIR}${SYSDDIR}/${TARGET}.service # install -Dm 0644 LICENSE ${DESTDIR}/usr/share/licenses/${TARGET}/LICENSE # install -Dm 0644 LICENSE.RobotoCondensed.txt \ # ${DESTDIR}/usr/share/licenses/${TARGET}/LICENSE.RobotoCondensed # install -Dm 0644 LICENSE.ShareTechMono.txt \ # ${DESTDIR}/usr/share/licenses/${TARGET}/LICENSE.ShareTechMono uninstall: rm ${DESTDIR}${PREFIX}/bin/${TARGET} rm ${DESTDIR}${SYSDDIR}/${TARGET}.service # rm -r ${DESTDIR}/usr/share/licenses/${TARGET} clean: rm -f bin/${TARGET} rm -f web/*.pug.go web/jade.go