.POSIX: FQDN = euandre.org .SUFFIXES: .SUFFIXES: .flac .ogg .flac.ogg: ffmpeg -y -i $< -ar 48000 -vn -c:a libvorbis -b:a 320k $@ favicons = static/lord-favicon.png static/lord-favicon.ico favicon.ico derived-assets = \ $(favicons) \ TODOs.html \ all: public dynamic: generated.mk $(MAKE) -f dynamic.mk all generated.mk: ALWAYS JEKYLL_COMPAT sh src/development/dynmake.sh > $@ JEKYLL_COMPAT: sh src/development/JEKYLL_COMPAT/copy-content.sh # NOOP rule to assert that the targets that depend on it are # always considered stale. ALWAYS: static/lord-favicon.png: static/lord-favicon.svg inkscape -o $@ -w 2048 -h 2048 -b white static/lord-favicon.svg static/lord-favicon.ico: static/lord-favicon.svg convert static/lord-favicon.svg $@ favicon.ico: static/lord-favicon.ico ln -fs static/lord-favicon.ico $@ TODOs.html: TODOs.md sh aux/workflow/TODOs.sh -n website -m public-inbox -o . check: sh aux/assert-shellcheck.sh sh aux/workflow/assert-todos.sh sh scripts/assert-spelling.sh sh scripts/extract-translations.sh sh scripts/apply-translations.sh dev-check: check clean: $(MAKE) -f dynamic.mk clean rm -rf \ public/ .jekyll-cache \ $(derived-assets) \ src/content/ # rm -f generated.mk JEKYLL = JEKYLL_ENV=production jekyll public: $(derived-assets) dynamic $(JEKYLL) build run: all open 'http://localhost:4000' $(JEKYLL) serve deploy: all rsync -avzP public/ $(FQDN):/home/user-data/www/default/ --delete fqdn: printf '$(FQDN)'