62 lines
1.4 KiB
Makefile
62 lines
1.4 KiB
Makefile
include config.mk
|
|
|
|
export LC_ALL=C.UTF-8
|
|
|
|
OUTSIZE = $(shell awk $(addprefix -v ,$(BOUNDS)) 'BEGIN{print ymax-ymin" "xmax-xmin}' /dev/null)
|
|
XYZ = $(patsubst %.zip,%.xyz,$(wildcard *.zip))
|
|
SORT = sort -n -k2 -k1 -t,
|
|
|
|
.PHONY: all
|
|
all: smooth_2.gpkg smooth_2_5.gpkg
|
|
|
|
smooth_%.gpkg: db/smooth_%
|
|
ogr2ogr $@ "PG:host=127.0.0.1 user=osm dbname=osm password=osm" $(basename $@)
|
|
|
|
db/smooth_%: db/contour_% chaikin.sql
|
|
./managedb -- --echo-all \
|
|
-v ON_ERROR_STOP=1 \
|
|
-v src=$(notdir $(basename $<)) \
|
|
-v tbl=$(notdir $(basename $@)) \
|
|
-f chaikin.sql
|
|
touch $@
|
|
|
|
db/contour_%: contour_%.gpkg db/.ready
|
|
./managedb -- -c "DROP TABLE IF EXISTS $(basename $<)"
|
|
ogr2ogr -f PostgreSQL "PG:host=127.0.0.1 user=osm dbname=osm password=osm" $<
|
|
touch $@
|
|
|
|
contour_%.gpkg: all.tif
|
|
gdal_contour -a z -nln $(basename $@) -i $(subst _,.,$*) -a z $^ $@
|
|
|
|
ifeq ($(VARIANT),2009)
|
|
all.tif: all.vrt all.xyz
|
|
gdal_grid $< $@ \
|
|
-a nearest \
|
|
-ot Float32 -co COMPRESS=DEFLATE -co PREDICTOR=2 \
|
|
-outsize $(OUTSIZE)
|
|
else
|
|
ifeq ($(VARIANT),2017)
|
|
all.tif: all.xyz
|
|
gdal_translate $< $@ \
|
|
-ot Float32 -a_srs EPSG:3346 \
|
|
-co COMPRESS=DEFLATE -co PREDICTOR=2
|
|
else
|
|
$(error VARIANT must be 2009 or 2017)
|
|
endif
|
|
endif
|
|
|
|
.INTERMEDIATE: all.xyz
|
|
all.xyz: $(XYZ)
|
|
$(SORT) -m $^ > $@
|
|
|
|
.INTERMEDIATE: $(XYZ)
|
|
%.xyz: %.zip
|
|
unzip -qq -c $< $@ | \
|
|
./clip-$(VARIANT).awk $(addprefix -v ,$(BOUNDS)) | \
|
|
$(SORT) > $@
|
|
|
|
db/.ready: managedb
|
|
mkdir -p db
|
|
./managedb start
|
|
touch $@
|