stud

study spacejunk
Log | Files | Refs | LICENSE

Makefile (1435B) - Raw


      1 include config.mk
      2 
      3 export LC_ALL=C.UTF-8
      4 
      5 OUTSIZE = $(shell awk $(addprefix -v ,$(BOUNDS)) 'BEGIN{print ymax-ymin" "xmax-xmin}' /dev/null)
      6 XYZ = $(patsubst %.zip,%.xyz,$(wildcard *.zip))
      7 SORT = sort -n -k2 -k1 -t,
      8 
      9 .PHONY: all
     10 all: smooth_2.gpkg smooth_2_5.gpkg
     11 
     12 smooth_%.gpkg: db/smooth_%
     13 	ogr2ogr $@ "PG:host=127.0.0.1 user=osm dbname=osm password=osm" $(basename $@)
     14 
     15 db/smooth_%: db/contour_% chaikin.sql
     16 	./managedb -- --echo-all \
     17 		-v ON_ERROR_STOP=1 \
     18 		-v src=$(notdir $(basename $<)) \
     19 		-v tbl=$(notdir $(basename $@)) \
     20 		-f chaikin.sql
     21 	touch $@
     22 
     23 db/contour_%: contour_%.gpkg db/.ready
     24 	./managedb -- -c "DROP TABLE IF EXISTS $(basename $<)"
     25 	ogr2ogr -f PostgreSQL "PG:host=127.0.0.1 user=osm dbname=osm password=osm" $<
     26 	touch $@
     27 
     28 contour_%.gpkg: all.tif
     29 	gdal_contour -nln $(basename $@) -i $(subst _,.,$*) -a z $^ $@
     30 
     31 ifeq ($(VARIANT),2009)
     32 all.tif: all.vrt all.xyz
     33 	gdal_grid $< $@ \
     34 		-a nearest \
     35 		-ot Float32 -co COMPRESS=DEFLATE -co PREDICTOR=2 \
     36 		-outsize $(OUTSIZE)
     37 else
     38 ifeq ($(VARIANT),2017)
     39 all.tif: all.xyz
     40 	gdal_translate $< $@ \
     41 		-ot Float32 -a_srs EPSG:3346 \
     42 		-co COMPRESS=DEFLATE -co PREDICTOR=2
     43 else
     44 $(error VARIANT must be 2009 or 2017)
     45 endif
     46 endif
     47 
     48 .INTERMEDIATE: all.xyz
     49 all.xyz: $(XYZ)
     50 	$(SORT) -m $^ > $@
     51 
     52 .INTERMEDIATE: $(XYZ)
     53 %.xyz: %.zip
     54 	7z x -so $< $@ | \
     55 		./clip-$(VARIANT).awk $(addprefix -v ,$(BOUNDS)) | \
     56 		$(SORT) > $@
     57 
     58 db/.ready: managedb
     59 	mkdir -p db
     60 	./managedb start
     61 	touch $@