diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..17c7548 --- /dev/null +++ b/Makefile @@ -0,0 +1,55 @@ +.SHELLFLAGS := -eu -o pipefail -c +.ONESHELL: +.DELETE_ON_ERROR: + +brotli := brotli --force +gzip := gzip --best --keep --force +zstd := zstd --force --no-pass-through -19 --quiet + +build: + zola build + +to_compress := $(shell fd . public --type=file -e html -e xml -e txt -e asc) +brotli_files := $(patsubst %, %.br, $(to_compress)) +gzip_files := $(patsubst %, %.gz, $(to_compress)) +zstd_files := $(patsubst %, %.zst, $(to_compress)) + +public/%.html.br: public/%.html + $(brotli) $< + +public/%.xml.br: public/%.xml + $(brotli) $< + +public/%.txt.br: public/%.txt + $(brotli) $< + +public/%.asc.br: public/%.asc + $(brotli) $< + +public/%.html.gz: public/%.html + $(gzip) $< + +public/%.xml.gz: public/%.xml + $(gzip) $< + +public/%.txt.gz: public/%.txt + $(gzip) $< + +public/%.asc.gz: public/%.asc + $(gzip) $< + +public/%.html.zst: public/%.html + $(zstd) $< + +public/%.xml.zst: public/%.xml + $(zstd) $< + +public/%.txt.zst: public/%.txt + $(zstd) $< + +public/%.asc.zst: public/%.asc + $(zstd) $< + +compress: $(brotli_files) $(gzip_files) $(zstd_files) + +.PHONY: all build compress |