about summary refs log tree commit diff
path: root/makefile
blob: 626706abace4a37ab04b90f945d230ca70a772d7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
all: run

# content
PANDOC  ?= pandoc
PANDOC_PREPROC ?= preproc.lua
htm_SRC := $(shell find src/inc/ -name '*.htm' -print)
md_SRC  := $(shell find src/inc/ -name '*.md' -print)
SRC     := $(htm_SRC) $(md_SRC:%.md=%.htm)
DST     := site

# see https://pandoc.org/MANUAL.html#pandocs-markdown
%.htm: %.md $(PANDOC_PREPROC)
	@ echo "<!-- Generated file, you may edit and discard $< :) -->" >$@
	$(PANDOC) -fmarkdown -thtml5 --lua-filter=$(PANDOC_PREPROC) $< >>$@

# generator
ZIG     ?= zig
gen_SRC := src/main.zig
gen_BIN := bin/gen

$(gen_BIN): $(gen_SRC)
	$(ZIG) build-exe -lc -O Debug -freference-trace -femit-bin=$@ $<


clean:
	@ rm -f $(DST)/* bin/* $(md_SRC:%.md=%.htm)

run: $(gen_BIN) $(SRC)
	@ mkdir -p $(DST) && $(gen_BIN)

watch:
	@ find . -print | entr -nc -dd -- $(MAKE)


CADDY_HTTP_PORT ?= 1414

serve:
	@ caddy fmt --overwrite
	@ caddy run --watch

watch-and-serve:
	@ ${MAKE} -j2 watch serve

deploy: run
	@ rsync -vhhh --delete -Ccrz ./ $(DEPLOY_HOST):$(DEPLOY_DIR)/

.PHONY: all clean serve watch watch-and-serve