1
0
dwelling-home/Makefile

45 lines
1.4 KiB
Makefile
Executable File

TARGET=dwelling-home
SYSDDIR_=${shell pkg-config systemd --variable=systemdsystemunitdir}
SYSDDIR=${SYSDDIR_:/%=%}
DESTDIR:=
PREFIX:=/usr/local
VERSION?=24.27.1
FLAGS:=-buildmode=pie -modcacherw -mod=readonly -trimpath
LDFLAGS=-ldflags "-s -w -X 'git.arav.su/Arav/dwelling-home/internal/version.ver=v${VERSION}'" -tags osusergo,netgo
.PHONY: run install uninstall clean
${TARGET}: web/*_templ.go
go build -o bin/$@ ${LDFLAGS} ${FLAGS} cmd/$@/main.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/*_templ.go