lipu-sona/Makefile

96 lines
3.2 KiB
Makefile
Raw Normal View History

2020-06-05 11:49:29 +03:00
-include Makefile.cfg
2020-03-13 16:06:12 +03:00
2020-03-13 15:35:20 +03:00
OUTDIR=out
PAGEDIR=pages
SRCDIR=src
TPLDIR=tpl
2020-06-05 11:49:29 +03:00
ifndef THEME
THEME=theme
endif
2020-10-05 13:32:44 +03:00
THEME_FLAGS=-c style,fencedcode
DC_THEME_FLAGS=$(THEME_FLAGS),nopants
2020-10-05 13:32:44 +03:00
2020-03-13 15:35:20 +03:00
_PNGS = $(shell find $(PAGEDIR) -name \*.png)
PNGS = $(patsubst $(PAGEDIR)/%,$(OUTDIR)/%,$(_PNGS))
_PAGES = $(shell find $(PAGEDIR) -name \*.md)
PAGES_HTML = $(patsubst $(PAGEDIR)/%.md,$(OUTDIR)/%.html,$(_PAGES))
PAGES_HTML_DC = $(patsubst $(PAGEDIR)/%.md,$(OUTDIR)/dc/%.html,$(_PAGES))
2020-03-13 15:35:20 +03:00
2020-05-31 12:12:45 +03:00
_BLOG_PAGES = $(shell find $(PAGEDIR)/blog -name \*.md | grep -v $(PAGEDIR)/blog/index\.md$)
_TEXT_PAGES = $(shell find $(PAGEDIR)/text -name \*.txt | grep -v $(PAGEDIR)/text/index\.txt$)
TEXT_PAGES_TXT = $(patsubst $(PAGEDIR)/text/%.txt,$(OUTDIR)/text/%.txt,$(_TEXT_PAGES))
TEXT_PAGES_HTML = $(patsubst $(PAGEDIR)/text/%.txt,$(OUTDIR)/text/%.html,$(_TEXT_PAGES))
2020-05-31 12:12:45 +03:00
2020-03-14 20:27:53 +03:00
_DIRECTORIES = $(shell find $(PAGEDIR)/* -type d)
DIRECTORIES = $(patsubst $(PAGEDIR)/, $(OUTDIR)/, $(_PAGES))
_STATIC_FILES = $(shell find -L static/ -type f -name \* | grep -v \\.h$)
2021-05-31 14:58:29 +03:00
_STATIC_HEADERS = $(shell find -L static/ -type f -name \*\\.h)
OUT_STATIC = $(patsubst static/%,out/%,$(_STATIC_FILES)) $(patsubst static/%.h,out/%,$(_STATIC_HEADERS))
2020-03-13 15:35:20 +03:00
.SUFFIXES:
2020-03-13 16:06:12 +03:00
.PHONY: all upload
2020-03-13 15:35:20 +03:00
all: $(OUTDIR)/blog/index.html $(OUTDIR)/dc/blog/index.html $(OUTDIR)/blog/main.rss $(OUTDIR)/text/index.html $(OUTDIR)/dc/text/index.html $(PAGES_HTML) $(PAGES_HTML_DC) $(TEXT_PAGES_TXT) $(TEXT_PAGES_HTML) $(OUT_STATIC)
2020-03-13 15:35:20 +03:00
2020-03-14 20:27:53 +03:00
upload:
./upload.sh
$(OUTDIR)/dc/blog/index.html: $(_BLOG_PAGES) $(TPLDIR)/blog_header.md $(TPLDIR)/blog_footer.md $(TPLDIR)/dreamcast.tpl
@mkdir -p $(@D)
./blogindex.sh | $(THEME) $(DC_THEME_FLAGS) -t $(TPLDIR)/dreamcast.tpl -p blog/index.html -o $@
2020-05-31 12:12:45 +03:00
$(OUTDIR)/blog/index.html: $(_BLOG_PAGES) $(TPLDIR)/blog_header.md $(TPLDIR)/blog_footer.md $(TPLDIR)/default.tpl
@mkdir -p $(@D)
2020-10-05 13:32:44 +03:00
./blogindex.sh | $(THEME) $(THEME_FLAGS) -t $(TPLDIR)/default.tpl -p blog/index.html -o $@
2020-05-31 12:12:45 +03:00
$(OUTDIR)/blog/main.rss: $(_BLOG_PAGES)
@mkdir -p $(@D)
2021-05-19 13:25:43 +03:00
./blogindex.sh -r > $@
$(OUTDIR)/text/%.txt: $(PAGEDIR)/text/%.txt
@mkdir -p $(@D)
cp $< $@
$(OUTDIR)/dc/text/index.html: $(_TEXT_PAGES)
@mkdir -p $(@D)
./textindex.sh -d | $(THEME) $(DC_THEME_FLAGS) -t $(TPLDIR)/dreamcast.tpl -p text/index.html -o $@
$(OUTDIR)/text/index.html: $(_TEXT_PAGES)
@mkdir -p $(@D)
./textindex.sh | $(THEME) $(THEME_FLAGS) -t $(TPLDIR)/default.tpl -p text/index.html -o $@
$(OUTDIR)/text/%.html: $(PAGEDIR)/text/%.txt $(TPLDIR)/text_style.css
@mkdir -p $(@D)
@cat $(TPLDIR)/text_style.css > tmpfile.md
@echo "<pre>" >> tmpfile.md
@cat $< >> tmpfile.md
@echo "</pre>" >> tmpfile.md
$(THEME) $(THEME_FLAGS) -t $(TPLDIR)/default.tpl -p $(patsubst $(OUTDIR)/%,%,$@) -o $@ tmpfile.md
@rm tmpfile.md
2020-03-14 20:27:53 +03:00
$(OUTDIR)/%.html: $(PAGEDIR)/%.md $(TPLDIR)/default.tpl
@mkdir -p $(@D)
2020-10-05 13:32:44 +03:00
$(THEME) $(THEME_FLAGS) -t $(TPLDIR)/default.tpl -p $(patsubst $(OUTDIR)/%,%,$@) -o $@ $<
2020-03-13 15:35:20 +03:00
2021-02-01 13:01:18 +03:00
$(OUTDIR)/dc/%.html: $(PAGEDIR)/%.md $(TPLDIR)/dreamcast.tpl
@mkdir -p $(@D)
2021-02-01 13:01:18 +03:00
$(THEME) $(DC_THEME_FLAGS) -t $(TPLDIR)/dreamcast.tpl -p $(patsubst $(OUTDIR)/%.tmp,%,$@) -o tmpfile.html $<
cat tmpfile.html | ./simplify.sh > $@
@rm tmpfile.html
$(OUTDIR)/%: static/%.h
@mkdir -p $(@D)
cpp -E -P -o $@ $<
2020-03-13 15:35:20 +03:00
$(OUTDIR)/%: static/%
2020-03-14 20:27:53 +03:00
@mkdir -p $(@D)
2020-03-13 15:35:20 +03:00
cp -r $< $@
clean:
2020-05-31 12:12:45 +03:00
rm -rf out/* pages/blog/index.md