2023-01-16 05:24:07 +04:00
|
|
|
TARGET=dwelling-home
|
|
|
|
|
|
|
|
SYSDDIR_=${shell pkg-config systemd --variable=systemdsystemunitdir}
|
|
|
|
SYSDDIR=${SYSDDIR_:/%=%}
|
2023-09-23 03:59:17 +04:00
|
|
|
DESTDIR:=
|
2023-09-25 02:17:12 +04:00
|
|
|
PREFIX:=/usr/local
|
2023-01-16 05:24:07 +04:00
|
|
|
|
2024-04-16 18:39:52 +04:00
|
|
|
VERSION=24.16.1
|
2023-05-06 05:18:12 +04:00
|
|
|
|
2023-09-23 04:01:48 +04:00
|
|
|
FLAGS:=-buildmode=pie -modcacherw -mod=readonly -trimpath
|
2023-05-06 05:18:12 +04:00
|
|
|
LDFLAGS=-ldflags "-s -w -X main.version=${VERSION}" -tags osusergo,netgo
|
2023-01-16 05:24:07 +04:00
|
|
|
|
2023-09-23 04:03:28 +04:00
|
|
|
.PHONY: run install uninstall clean
|
2023-01-16 05:24:07 +04:00
|
|
|
|
2024-06-13 04:49:55 +04:00
|
|
|
${TARGET}: web/*_templ.go
|
2023-09-23 04:03:28 +04:00
|
|
|
go build -o bin/$@ ${LDFLAGS} ${FLAGS} cmd/$@/main.go
|
2023-01-16 05:24:07 +04:00
|
|
|
|
2023-05-27 21:00:22 +04:00
|
|
|
web/*.pug.go: web/templates/*.pug
|
2023-09-23 04:03:28 +04:00
|
|
|
ifeq (,$(wildcard $(shell go env GOPATH)/bin/jade))
|
2023-05-27 21:00:22 +04:00
|
|
|
go install github.com/Joker/jade/cmd/jade@latest
|
2023-09-23 04:03:28 +04:00
|
|
|
endif
|
2023-05-27 21:00:22 +04:00
|
|
|
go generate web/web.go
|
|
|
|
|
2024-06-13 04:49:55 +04:00
|
|
|
web/*_templ.go: web/*.templ
|
|
|
|
ifeq (,$(wildcard $(shell go env GOPATH)/bin/templ))
|
|
|
|
go install github.com/a-h/templ/cmd/templ@latest
|
|
|
|
endif
|
2024-06-27 03:03:36 +04:00
|
|
|
TEMPL_EXPERIMENT=rawgo $(shell go env GOPATH)/bin/templ generate
|
|
|
|
sed -ri 's/a> "/a>"/g' web/*_templ.go
|
2024-06-13 04:49:55 +04:00
|
|
|
|
2024-06-25 04:38:49 +04:00
|
|
|
run: | ${TARGET}
|
2023-09-23 21:48:40 +04:00
|
|
|
bin/${TARGET} -listen 127.0.0.1:18123 -database-path . -captcha-expiry 10m \
|
2023-09-25 16:58:08 +04:00
|
|
|
-guestbook-page-size 10
|
2023-02-05 00:50:58 +04:00
|
|
|
|
2023-01-16 05:24:07 +04:00
|
|
|
install:
|
2023-09-23 04:10:37 +04:00
|
|
|
install -Dm 0755 bin/${TARGET} ${DESTDIR}${PREFIX}/bin/${TARGET}
|
2023-01-16 05:24:07 +04:00
|
|
|
install -Dm 0644 init/systemd.service ${DESTDIR}${SYSDDIR}/${TARGET}.service
|
2023-09-23 04:11:18 +04:00
|
|
|
# install -Dm 0644 LICENSE ${DESTDIR}/usr/share/licenses/${TARGET}/LICENSE
|
2023-09-23 21:48:40 +04:00
|
|
|
# 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
|
2023-01-16 05:24:07 +04:00
|
|
|
|
|
|
|
uninstall:
|
2023-09-23 04:10:37 +04:00
|
|
|
rm ${DESTDIR}${PREFIX}/bin/${TARGET}
|
2023-02-05 00:50:58 +04:00
|
|
|
rm ${DESTDIR}${SYSDDIR}/${TARGET}.service
|
2023-09-23 05:22:27 +04:00
|
|
|
# rm -r ${DESTDIR}/usr/share/licenses/${TARGET}
|
2023-02-05 00:50:58 +04:00
|
|
|
|
|
|
|
clean:
|
2023-05-22 03:10:09 +04:00
|
|
|
rm -f bin/${TARGET}
|
|
|
|
rm -f web/*.pug.go web/jade.go
|