1
0
dwelling-home/Makefile

48 lines
1.5 KiB
Makefile
Executable File

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