stud/IV/Makefile

91 lines
2.2 KiB
Makefile
Raw Normal View History

2021-03-13 16:46:32 +02:00
SOURCE ?= lithuania-latest.osm.pbf
2021-03-13 16:44:31 +02:00
WHERE ?= name='Visinčia' OR name='Šalčia' OR name='Nemunas'
2021-03-13 15:53:22 +02:00
2021-03-30 17:37:13 +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-03-28 12:49:46 +03:00
2021-04-01 19:30:20 +03:00
GIT_DEP=
2021-03-31 15:24:23 +03:00
ifeq ($(shell git rev-parse --is-inside-git-dir),true)
GIT_DEP=$(shell git rev-parse --show-toplevel)/.git
endif
2021-03-15 18:58:16 +02:00
.PHONY: test
2021-04-01 19:30:20 +03:00
test: .faux_test
2021-03-15 18:58:16 +02:00
2021-03-17 11:32:12 +02:00
.PHONY: test-integration
test-integration: .faux_filter-rivers
./db -f tests-integration.sql
2021-03-15 18:58:16 +02:00
2021-03-23 18:40:25 +02:00
.PHONY: clean
2021-03-21 16:52:31 +02:00
clean:
-./db stop
2021-04-02 06:27:32 +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-04-01 19:30:20 +03:00
$(SLIDES)
2021-03-21 16:52:31 +02:00
2021-03-23 18:40:25 +02:00
.PHONY: clean-tables
clean-tables:
2021-04-05 16:32:42 +03:00
for t in $$(./db -c '\dt' | awk '/\y(demo_wm|debug_wm|figures)\y/{print $$3}'); do \
2021-03-23 18:40:25 +02:00
./db -c "drop table $$t"; \
done
2021-04-05 16:32:42 +03:00
-rm .faux_test
2021-03-23 18:40:25 +02:00
2021-03-28 13:19:10 +03:00
.PHONY: slides
2021-03-29 06:48:08 +03:00
slides: $(SLIDES)
2021-03-28 13:19:10 +03:00
2021-04-01 19:30:20 +03:00
mj-msc.pdf: mj-msc.tex test-figures.pdf version.tex bib.bib
2021-03-30 17:37:13 +03:00
latexmk -shell-escape -g -pdf $<
2021-04-02 06:22:10 +03:00
mj-msc-full.pdf: mj-msc.pdf version.tex $(ARCHIVABLES)
2021-03-30 17:37:13 +03:00
cp $< .tmp-$@
for f in $^; do \
if [ "$$f" = "$<" ]; then continue; fi; \
pdfattach .tmp-$@ $$f .tmp2-$@; \
mv .tmp2-$@ .tmp-$@; \
done
mv .tmp-$@ $@
2021-04-02 06:31:47 +03:00
test-figures.pdf: layer2img.py .faux_test
2021-04-01 20:54:20 +03:00
python ./layer2img.py --group1-table=figures --group1-arrows=yes --outfile=$@
2021-03-27 13:01:21 +02:00
2021-04-01 19:30:20 +03:00
.faux_test: tests.sql wm.sql .faux.db
./db -f tests.sql
touch $@
2021-03-28 12:35:15 +03:00
2021-03-13 15:53:22 +02:00
.faux_filter-rivers: .faux_import-osm
2021-03-13 16:44:31 +02:00
./db -v where="$(WHERE)" -f aggregate-rivers.sql
2021-03-13 15:53:22 +02:00
touch $@
2021-03-13 16:46:32 +02:00
.faux_import-osm: $(SOURCE) .faux.db
2021-03-13 15:53:22 +02:00
PGPASSWORD=osm osm2pgsql \
-c --multi-geometry \
-H 127.0.0.1 -d osm -U osm \
$<
touch $@
.faux.db:
./db start
touch $@
2021-03-13 16:46:32 +02:00
$(SOURCE):
wget http://download.geofabrik.de/europe/$@
2021-03-30 17:37:13 +03:00
2021-03-30 17:45:06 +03:00
REF = $(shell git describe --abbrev=12 --always --dirty)
2021-03-31 15:24:23 +03:00
version.tex: Makefile $(GIT_DEP)
2021-03-30 17:37:13 +03:00
( \
2021-03-30 17:45:06 +03:00
TZ=UTC date '+\gdef\VCDescribe{%F ($(REF))}%'; \
2021-03-30 17:37:13 +03:00
) > $@
2021-04-01 19:30:20 +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)
2021-04-06 07:51:39 +03:00
dump-debug_wm.sql.xz:
docker exec -ti wm-mj \
pg_dump -Uosm osm -t debug_wm | xz > $@