44 lines
1.4 KiB
Makefile
Executable File
44 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
|
|
|
|
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
|