2021-05-19 22:57:46 +03:00
|
|
|
SOURCE ?= lithuania-latest.osm.pbf
|
2021-05-19 22:57:46 +03:00
|
|
|
WHERE ?= name='Visinčia' OR name='Šalčia' OR name='Nemunas'
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
SLIDES = slides-2021-03-29.pdf
|
|
|
|
NON_ARCHIVABLES = notes.txt referatui.txt slides-2021-03-29.txt
|
|
|
|
ARCHIVABLES = $(filter-out $(NON_ARCHIVABLES),$(shell git ls-files .))
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
GIT_DEP=
|
2021-05-19 22:57:46 +03:00
|
|
|
ifeq ($(shell git rev-parse --is-inside-git-dir),true)
|
|
|
|
GIT_DEP=$(shell git rev-parse --show-toplevel)/.git
|
|
|
|
endif
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.PHONY: test
|
2021-05-19 22:57:46 +03:00
|
|
|
test: .faux_test
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.PHONY: test-integration
|
|
|
|
test-integration: .faux_filter-rivers
|
|
|
|
./db -f tests-integration.sql
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.PHONY: clean
|
2021-05-19 22:57:46 +03:00
|
|
|
clean:
|
|
|
|
-./db stop
|
2021-05-19 22:57:46 +03:00
|
|
|
-rm -r .faux_test .faux_filter-rivers .faux_import-osm .faux.db \
|
|
|
|
version.tex test-figures.pdf _minted-mj-msc \
|
|
|
|
$(shell git ls-files -o mj-msc*) \
|
2021-05-19 22:57:46 +03:00
|
|
|
$(SLIDES)
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.PHONY: clean-tables
|
|
|
|
clean-tables:
|
2021-05-19 22:57:46 +03:00
|
|
|
for t in $$(./db -c '\dt' | awk '/demo|debug|integ/{print $$3}'); do \
|
2021-05-19 22:57:46 +03:00
|
|
|
./db -c "drop table $$t"; \
|
|
|
|
done
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.PHONY: slides
|
2021-05-19 22:57:46 +03:00
|
|
|
slides: $(SLIDES)
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
mj-msc.pdf: mj-msc.tex test-figures.pdf version.tex bib.bib
|
2021-05-19 22:57:46 +03:00
|
|
|
latexmk -shell-escape -g -pdf $<
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
mj-msc-full.pdf: mj-msc.pdf version.tex $(ARCHIVABLES)
|
2021-05-19 22:57:46 +03:00
|
|
|
cp $< .tmp-$@
|
|
|
|
for f in $^; do \
|
|
|
|
if [ "$$f" = "$<" ]; then continue; fi; \
|
|
|
|
pdfattach .tmp-$@ $$f .tmp2-$@; \
|
|
|
|
mv .tmp2-$@ .tmp-$@; \
|
|
|
|
done
|
|
|
|
mv .tmp-$@ $@
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
test-figures.pdf: layer2img.py .faux_test
|
2021-05-19 22:57:46 +03:00
|
|
|
python ./layer2img.py --group1-table=figures --group1-arrows=yes --outfile=$@
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.faux_test: tests.sql wm.sql .faux.db
|
|
|
|
./db -f tests.sql
|
|
|
|
touch $@
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.faux_filter-rivers: .faux_import-osm
|
2021-05-19 22:57:46 +03:00
|
|
|
./db -v where="$(WHERE)" -f aggregate-rivers.sql
|
2021-05-19 22:57:46 +03:00
|
|
|
touch $@
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
.faux_import-osm: $(SOURCE) .faux.db
|
2021-05-19 22:57:46 +03:00
|
|
|
PGPASSWORD=osm osm2pgsql \
|
|
|
|
-c --multi-geometry \
|
|
|
|
-H 127.0.0.1 -d osm -U osm \
|
|
|
|
$<
|
|
|
|
touch $@
|
|
|
|
|
|
|
|
.faux.db:
|
|
|
|
./db start
|
|
|
|
touch $@
|
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
$(SOURCE):
|
|
|
|
wget http://download.geofabrik.de/europe/$@
|
2021-05-19 22:57:46 +03:00
|
|
|
|
2021-05-19 22:57:46 +03:00
|
|
|
REF = $(shell git describe --abbrev=12 --always --dirty)
|
2021-05-19 22:57:46 +03:00
|
|
|
version.tex: Makefile $(GIT_DEP)
|
2021-05-19 22:57:46 +03:00
|
|
|
( \
|
2021-05-19 22:57:46 +03:00
|
|
|
TZ=UTC date '+\gdef\VCDescribe{%F ($(REF))}%'; \
|
2021-05-19 22:57:46 +03:00
|
|
|
) > $@
|
2021-05-19 22:57:46 +03:00
|
|
|
|
|
|
|
# slides
|
|
|
|
slides-2021-03-29.pdf: slides-2021-03-29.txt
|
|
|
|
pandoc -t beamer -i $< -o $@
|
|
|
|
|
|
|
|
slides-2021-03-29.html: slides-2021-03-29.txt
|
|
|
|
pandoc --verbose -t slidy --self-contained $< -o $@ $(SLIDY_ARGS)
|