From 9daea3fb8bda44b197d58a97ba9ee77c7f7e5bf6 Mon Sep 17 00:00:00 2001 From: Darcy Date: Wed, 31 May 2023 10:23:55 +0200 Subject: graphics/tippecanoe: new port Tippecanoe Builds vector tilesets from large (or small) collections of GeoJSON, FlatGeobuf, or CSV features. The goal of Tippecanoe is to enable making a scale-independent view of your data, so that at any level from the entire world to a single building, you can see the density and texture of the data rather than a simplification from dropping supposedly unimportant features or clustering or aggregating them. If you give it all of OpenStreetMap and zoom out, it should give you back something that looks like "All Streets" rather than something that looks like an Interstate road atlas. If you give it all the building footprints in Los Angeles and zoom out far enough that most individual buildings are no longer discernable, you should still be able to see the extent and variety of development in every neighborhood, not just the largest downtown buildings. If you give it a collection of years of tweet locations, you should be able to see the shape and relative popularity of every point of interest and every significant travel corridor. WWW: https://github.com/felt/tippecanoe PR: 266761 --- graphics/Makefile | 1 + graphics/tippecanoe/Makefile | 29 +++++++++++++++++++++++++++++ graphics/tippecanoe/distinfo | 3 +++ graphics/tippecanoe/files/patch-Makefile | 11 +++++++++++ graphics/tippecanoe/files/patch-main.cpp | 11 +++++++++++ graphics/tippecanoe/pkg-descr | 21 +++++++++++++++++++++ 6 files changed, 76 insertions(+) create mode 100644 graphics/tippecanoe/Makefile create mode 100644 graphics/tippecanoe/distinfo create mode 100644 graphics/tippecanoe/files/patch-Makefile create mode 100644 graphics/tippecanoe/files/patch-main.cpp create mode 100644 graphics/tippecanoe/pkg-descr diff --git a/graphics/Makefile b/graphics/Makefile index 557f61af875f..bddd89c9fb6d 100644 --- a/graphics/Makefile +++ b/graphics/Makefile @@ -1134,6 +1134,7 @@ SUBDIR += timg SUBDIR += tintfu SUBDIR += tinyows + SUBDIR += tippecanoe SUBDIR += tkpng SUBDIR += togl SUBDIR += tslib diff --git a/graphics/tippecanoe/Makefile b/graphics/tippecanoe/Makefile new file mode 100644 index 000000000000..b9769100e6e9 --- /dev/null +++ b/graphics/tippecanoe/Makefile @@ -0,0 +1,29 @@ +PORTNAME= tippecanoe +DISTVERSION= 2.6.3 +CATEGORIES= graphics + +MAINTAINER= darcy@dbitech.ca +COMMENT= Builds vector tilesets from large (or small) collections GEO features +WWW= https://github.com/felt/tippecanoe + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.md + +LIB_DEPENDS= libsqlite3.so:databases/sqlite3 + +USES= gmake +USE_GITHUB= yes + +GH_ACCOUNT= felt + +PLIST_FILES= bin/tile-join bin/tippecanoe bin/tippecanoe-decode \ + bin/tippecanoe-enumerate bin/tippecanoe-json-tool \ + man/man1/tippecanoe.1.gz + +do-install: +.for file in tile-join tippecanoe tippecanoe-decode tippecanoe-enumerate tippecanoe-json-tool + ${INSTALL_PROGRAM} ${WRKSRC}/${file} ${STAGEDIR$}${PREFIX}/bin +.endfor + ${INSTALL_MAN} ${WRKSRC}/man/tippecanoe.1 ${STAGEDIR}${PREFIX}/man/man1/tippecanoe.1 + +.include diff --git a/graphics/tippecanoe/distinfo b/graphics/tippecanoe/distinfo new file mode 100644 index 000000000000..267f0163d958 --- /dev/null +++ b/graphics/tippecanoe/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1664625361 +SHA256 (felt-tippecanoe-2.6.3_GH0.tar.gz) = 83389045ba5bd1b1e9ec71276331ae394bd9ac70626e78c2a4c73563b79e4300 +SIZE (felt-tippecanoe-2.6.3_GH0.tar.gz) = 17326509 diff --git a/graphics/tippecanoe/files/patch-Makefile b/graphics/tippecanoe/files/patch-Makefile new file mode 100644 index 000000000000..1ffd57cee0f8 --- /dev/null +++ b/graphics/tippecanoe/files/patch-Makefile @@ -0,0 +1,11 @@ +--- Makefile.orig 2022-09-27 16:15:54 UTC ++++ Makefile +@@ -1,7 +1,7 @@ + PREFIX ?= /usr/local + MANDIR ?= $(PREFIX)/share/man/man1/ + BUILDTYPE ?= Release +-SHELL = /bin/bash ++SHELL = /bin/sh + + # inherit from env if set + CC := $(CC) diff --git a/graphics/tippecanoe/files/patch-main.cpp b/graphics/tippecanoe/files/patch-main.cpp new file mode 100644 index 000000000000..6000fc22a4dc --- /dev/null +++ b/graphics/tippecanoe/files/patch-main.cpp @@ -0,0 +1,11 @@ +--- main.cpp.orig 2022-09-27 16:15:54 UTC ++++ main.cpp +@@ -34,7 +34,7 @@ + #include + #include + +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) + #include + #include + #include diff --git a/graphics/tippecanoe/pkg-descr b/graphics/tippecanoe/pkg-descr new file mode 100644 index 000000000000..1af213c8c0aa --- /dev/null +++ b/graphics/tippecanoe/pkg-descr @@ -0,0 +1,21 @@ +Tippecanoe Builds vector tilesets from large (or small) collections of +GeoJSON, FlatGeobuf, or CSV features. + +The goal of Tippecanoe is to enable making a scale-independent view of +your data, so that at any level from the entire world to a single +building, you can see the density and texture of the data rather than a +simplification from dropping supposedly unimportant features or +clustering or aggregating them. + +If you give it all of OpenStreetMap and zoom out, it should give you +back something that looks like "All Streets" rather than something that +looks like an Interstate road atlas. + +If you give it all the building footprints in Los Angeles and zoom out +far enough that most individual buildings are no longer discernable, you +should still be able to see the extent and variety of development in +every neighborhood, not just the largest downtown buildings. + +If you give it a collection of years of tweet locations, you should be +able to see the shape and relative popularity of every point of interest +and every significant travel corridor. -- cgit v1.2.3