aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: 0dde3e9d3584e9bb70dce2e4bb8fc751b5890684 (plain)
  1. pkg-plack-core = libplack-perl
  2. # TODO: Extend when Plack::Middleware::IndexDir is in stable Debian
  3. pkg-plack-extra = libplack-middleware-deflater-perl
  4. # TODO: Use Leaflet.Markercluster only optionally
  5. pkg-js = \
  6. libjs-requirejs libjs-requirejs-text \
  7. libjs-leaflet libjs-leaflet-markercluster
  8. pkg-nodejs = node-requirejs
  9. pkg-code-minimal = $(pkg-plack-core) $(pkg-js)
  10. pkg-code-quick = $(pkg-code-minimal) $(pkg-plack-extra)
  11. pkg-code = $(pkg-code-quick) $(pkg-nodejs) jq
  12. lists = $(patsubst %,list-%,\
  13. pkg-code pkg-code-quick pkg-code-minimal)
  14. all: build-compact
  15. # TODO: Call node (not nodejs) when Nodejs 6 (Debian Buster) is commonly used
  16. build-compact:
  17. nodejs /usr/lib/nodejs/requirejs/r.js -o bin/build.js
  18. jq --tab --sort-keys -c '.features|=sort_by(.geometry.type)|.features|=sort_by(.properties.name)' \
  19. < build/data/staff.json \
  20. > build/data/staff.json~
  21. mv -f build/data/staff.json~ build/data/staff.json
  22. touch $@
  23. # load httpd service
  24. serve-quick:
  25. bin/src.psgi
  26. serve-compact:
  27. bin/build.psgi
  28. # machine-readable output (e.g. APT package dependencies)
  29. $(lists): list-%:
  30. @echo "$(sort $($*))"
  31. clean:
  32. rm -rf build
  33. rm -f build-compact
  34. .PHONY: all clean list-% serve-%