Bump PORTREVISION for ports depending on the canonical version of GCC defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t GCC 8.2 under most circumstances. This includes ports - with USE_GCC=yes or USE_GCC=any, - with USES=fortran, - using Mk/bsd.octave.mk which in turn features USES=fortran, and - with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang, c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib plus, as a double check, everything INDEX-11 showed depending on lang/gcc7. PR: 231590a9f015d155
Port details
graphics/mapnik 4.3.2_3
Free Toolkit For Developing Mapping Applications
Port info
- Maintainer
- hummeltech@sherpaguru.com
- Packages
- latest: 4.3.2_3
- Upstream
- up to date
- Last update
- to 4.3.2_3 · c1e9835e27
- Quarterly
- 2026Q4: 4.3.2_3 · last MFH f5a4bcf842
- WWW
- https://www.mapnik.org/
- Links
- cgit · VuXML · Report wrong data
Install
- Package
# pkg install mapnikinstalls 4.3.2_3 fromlatest; fromquarterly(2026Q4) 4.3.2_3- Port
# cd /usr/ports/graphics/mapnik && make install clean# make -C /usr/ports/graphics/mapnik config # change options first
- Size
- 6.7 MiB download · 50 MiB installed
- Depends on
- databases/postgresql18-client 18.6, databases/sqlite3 3.53.4,1, devel/boost-libs 1.92.0, devel/icu 76.1,1, graphics/cairo 1.18.2,3, graphics/gdal 3.13.3_1, graphics/jpeg-turbo 3.1.4.1, graphics/libavif 1.4.2, graphics/png 1.6.59_1, graphics/proj 9.9.0,1, graphics/tiff 4.7.2, graphics/webp 1.6.0, print/freetype2 2.14.3, print/harfbuzz 14.6.0, textproc/libxml2 2.15.4, x11-fonts/dejavu 2.37_4
- License
- LGPL21+
- Options
- 20 of 24 on in the package: AVIF CAIRO DOCS GDAL GEOMETRY_TO_WKB JPEG MAPNIK_INDEX MAPNIK_RENDER OGR PGRASTER PGSQL2SQLITE PNG POSTGIS PROJ SHAPEINDEX SQLITE3 SVG2PNG TESTING TIFF WEBP
Show the 4 options that are off
BENCHMARK DEMO_CPP DEMO_VIEWER OGRINDEX
Packages by version and architecture
latest
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 16 | 4.3.2_3 | 4.3.2_1 | – |
| FreeBSD 15 | 4.3.2_3 | 4.3.2_3 | – |
| FreeBSD 14 | 4.3.2_3 | 4.3.2_1 | 4.3.2_3 |
quarterly (2026Q4)
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 15 | 4.3.2_3 | 4.3.2_1 | – |
| FreeBSD 14 | 4.3.2_3 | 4.3.2_1 | 4.3.2_3 |
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
Unaddressed and VuXML only (0)
No unaddressed CVE and nothing reported by
pkg audit for the packaged version 4.3.2_3.Fixed (0)
No VuXML entries for this package.
Problem reports (0) · open in Bugzilla, most recently changed first
None.
Commits (143)
devel/boost-*: update to 1.69.0 Changes: http://www.boost.org/users/history/version_1_69_0.html PR: 232525 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D176457c879267dc
devel/icu: update to 63.1 Changes: http://site.icu-project.org/download/63 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 232300 Exp-run by: antoine91f9922c6f
graphics/mapnik: unbreak with boost 1.69
In file included from src/save_map.cpp:40:
include/mapnik/image_filter.hpp:34:10: fatal error: 'boost/gil/gil_all.hpp' file not found
#include <boost/gil/gil_all.hpp>
^~~~~~~~~~~~~~~~~~~~~~~
deps/agg/src/agg_pixfmt_rgba.cpp:6:10: fatal error: 'boost/gil/gil_all.hpp' file not found
#include <boost/gil/gil_all.hpp>
^~~~~~~~~~~~~~~~~~~~~~~
PR: 2325255d384d1704graphics/mapnik: switch to upstream Boost 1.68 fix1789f2f0c6
These ports now build on powerpc64. While here, pet portlint. Approved by: portmgr (tier-2 blanket)b54b77fa86
Add DOCS options to ports that should have one. Also various fixes related to said option. PR: 230864 Submitted by: mat exp-runs by: antoinee1bfdfbe56
devel/boost-*: update to 1.68.0 - Switch to C++14 for libboost_system to support C++14 consumers Changes: http://www.boost.org/users/history/version_1_68_0.html PR: 229569 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D161650b055d47f2
Bump PORTREVISION for ports depending on the canonical version of GCC in the ports tree (via Mk/bsd.default-versions.mk and lang/gcc) which has now moved from GCC 6 to GCC 7 by default. This includes ports - featuring USE_GCC=yes or USE_GCC=any, - featuring USES=fortran, - using Mk/bsd.octave.mk which in turn features USES=fortran, and those - with USES=compiler specifying one of openmp, nestedfct, c11, c++0x, c++11-lib, c++11-lang, c++14-lang, c++17-lang, or gcc-c++11-lib. PR: 22254209f9633cb6
graphics/mapnik: improve boost 1.68 fix222b90095c
graphics/mapnik: unbreak with boost 1.68
In file included from src/save_map.cpp:40:
include/mapnik/image_filter.hpp:166:23: error: no member named 'bits32f' in namespace 'boost::gil'
using boost::gil::bits32f;
~~~~~~~~~~~~^
include/mapnik/image_filter.hpp:168:5: error: unknown type name 'bits32f'
bits32f out_value =
^
In file included from deps/agg/src/agg_pixfmt_rgba.cpp:7:
deps/boost/gil/extension/toolbox/hsv.hpp:47:35: error: too few arguments provided to function-like macro invocation
GIL_DEFINE_ALL_TYPEDEFS( 32f, hsv )
^
/usr/local/include/boost/gil/typedefs.hpp:89:9: note: macro 'GIL_DEFINE_ALL_TYPEDEFS' defined here
^
PR: 2295691ed682112ddevel/icu: update to 62.1 Changes: http://site.icu-project.org/download/62 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 229359 Exp-run by: antoine (only 10.4)3beb732dad
devel/boost-*: update to 1.67.0 Changes: http://www.boost.org/users/history/version_1_67_0.html PR: 227427 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D15030cc95712fbe
devel/icu: update to 61.1 Changes: http://site.icu-project.org/download/61 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 227042 Exp-run by: antoine MFH: 2018Q2 (required by Firefox 61)ae60358af5
graphics/mapnik: unbreak with ICU 61
src/text/text_layout.cpp:234:5: error: unknown type name 'Locale'; did you mean 'icu::Locale'?
Locale locale; // TODO: Is the default constructor correct?
^~~~~~
icu::Locale
/usr/local/include/unicode/locid.h:188:20: note: 'icu::Locale' declared here
class U_COMMON_API Locale : public UObject {
^
src/text/text_layout.cpp:236:21: error: unknown type name 'BreakIterator'; did you mean 'UBreakIterator'?
std::unique_ptr<BreakIterator> breakitr(BreakIterator::createLineInstance(locale, status));
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:236:45: error: use of undeclared identifier 'BreakIterator'; did you mean 'UBreakIterator'?
std::unique_ptr<BreakIterator> breakitr(BreakIterator::createLineInstance(locale, status));
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:236:45: error: incomplete type 'UBreakIterator' named in nested name specifier
std::unique_ptr<BreakIterator> breakitr(BreakIterator::createLineInstance(locale, status));
^~~~~~~~~~~~~~~
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:247:13: error: member access into incomplete type 'UBreakIterator'
breakitr->setText(text);
^
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:260:53: error: member access into incomplete type 'UBreakIterator'
int break_position = wrap_before_ ? breakitr->preceding(i + 1) : breakitr->following(i);
^
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:260:55: error: expected ':'
int break_position = wrap_before_ ? breakitr->preceding(i + 1) : breakitr->following(i);
^
:
src/text/text_layout.cpp:260:43: note: to match this '?'
int break_position = wrap_before_ ? breakitr->preceding(i + 1) : breakitr->following(i);
^
src/text/text_layout.cpp:260:55: error: use of undeclared identifier 'preceding'
int break_position = wrap_before_ ? breakitr->preceding(i + 1) : breakitr->following(i);
^
src/text/text_layout.cpp:263:89: error: use of undeclared identifier 'BreakIterator'; did you mean 'UBreakIterator'?
if (break_position <= last_break_position || break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:263:89: error: incomplete type 'UBreakIterator' named in nested name specifier
if (break_position <= last_break_position || break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~~~
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:267:38: error: member access into incomplete type 'UBreakIterator'
break_position = breakitr->following(i);
^
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:268:52: error: use of undeclared identifier 'BreakIterator'; did you mean 'UBreakIterator'?
if (break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:268:52: error: incomplete type 'UBreakIterator' named in nested name specifier
if (break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~~~
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:373:89: error: use of undeclared identifier 'BreakIterator'; did you mean 'UBreakIterator'?
if (break_position <= last_break_position || break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:373:89: error: incomplete type 'UBreakIterator' named in nested name specifier
if (break_position <= last_break_position || break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~~~
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:376:52: error: use of undeclared identifier 'BreakIterator'; did you mean 'UBreakIterator'?
if (break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~
UBreakIterator
/usr/local/include/unicode/ustring.h:33:35: note: 'UBreakIterator' declared here
typedef struct UBreakIterator UBreakIterator;
^
src/text/text_layout.cpp:376:52: error: incomplete type 'UBreakIterator' named in nested name specifier
if (break_position == static_cast<int>(BreakIterator::DONE))
^~~~~~~~~~~~~~~
/usr/local/include/unicode/ustring.h:33:20: note: forward declaration of 'UBreakIterator'
typedef struct UBreakIterator UBreakIterator;
^
https://ssl.icu-project.org/trac/changeset/40705
PR: 227042
Reported by: antoine (via exp-run)
Obtained from: upstream84086c3127devel/boost-*: update to 1.66.0 Changes: http://www.boost.org/users/history/version_1_66_0.html PR: 223922 Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D1327925beeff079
Convert Python ports to FLAVORS.
Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464551be3c723devel/icu: update to 60.1 Changes: http://site.icu-project.org/download/60 ABI: https://abi-laboratory.pro/tracker/timeline/icu4c/ PR: 223373 Exp-run by: antoine99b0558e42
devel/boost-*: update to 1.65.1 Changes: http://www.boost.org/users/history/version_1_65_1.html PR: 218835 Approved by: maintainer timeout (1.65.1: 2 weeks; 1.65.0: 1 month) Tested by: jhibbits (on powerpc64, earlier version) Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D1158298eb11b2f0
devel/boost-*: enable C++11 features PR: 218835 Obtained from: https://github.com/DragonFlyBSD/DeltaPorts/pull/690 Approved by: maintainer timeout (2 months) Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D115827e21a6476a
devel/icu: update to 59.1 - Temporarily keep C++98 working in consumers for Clang's default -std= Changes: http://site.icu-project.org/download/59 PR: 218788 Submitted by: takefu@airport.fm, dcarmich@dcarmichael.net (early version) Exp-run by: antoinea382198617
graphics/mapnik: unbreak with ICU 59.1
src/unicode.cpp:47:42: error: incomplete result type 'mapnik::value_unicode_string' (aka 'icu::UnicodeString') in function definition
mapnik::value_unicode_string transcoder::transcode(const char* data, std::int32_t length) const
^
include/mapnik/value_types.hpp:39:11: note: forward declaration of 'icu::UnicodeString'
class UnicodeString;
^
src/unicode.cpp:51:34: error: variable has incomplete type 'mapnik::value_unicode_string' (aka 'icu::UnicodeString')
mapnik::value_unicode_string ustr(data,length,conv_,err);
^
include/mapnik/value_types.hpp:39:11: note: forward declaration of 'icu::UnicodeString'
class UnicodeString;
^
PR: 218788
Obtained from: upstreame8cffab440Bump PORTREVISION for ports depending on the canonical version of GCC (via Mk/bsd.default-versions.mk and lang/gcc) which has moved from GCC 5.4 to GCC 6.4 under most circumstances. This includes ports - with USE_GCC=yes or USE_GCC=any, - with USES=fortran, - using Mk/bsd.octave.mk which in turn features USES=fortran, and - with USES=compiler specifying openmp, nestedfct, c++11-lib, c++11-lang, c++14-lang, c++0x, c11, or gcc-c++11-lib. PR: 219275e59c88cece
Mark some ports failing on power64. In cases where the error message was a stub, provide a real one. While here, pet portlint. Approved by: portmgr (tier-2 blanket) Reported by: swills82c3cac0d2
devel/boost-*: update to 1.64.0 Changes: http://www.boost.org/users/history/version_1_64_0.html PR: 218835 Approved by: office (bapt) Exp-run by: antoine Differential Revision: https://reviews.freebsd.org/D10472b324ade02d
Update to 0.6.0 - Bump PORTREVISION for dependent ports Changes: https://chromium.googlesource.com/webm/libwebp/+/master/NEWS7d3a967cfb
Bump PORTREVISIONs for ports depending on the canonical version of GCC and lang/gcc which have moved from GCC 4.9.4 to GCC 5.4 (at least under some circumstances such as versions of FreeBSD or platforms). This includes ports - with USE_GCC=yes or USE_GCC=any, - with USES=fortran, - using using Mk/bsd.octave.mk which in turn has USES=fortran, and - with USES=compiler specifying openmp, nestedfct, c++11-lib, c++14-lang, c++11-lang, c++0x, c11, or gcc-c++11-lib. PR: 21670704d6f52202
devel/boost-*: update to 1.63.0 Changes: http://www.boost.org/users/history/version_1_63_0.html PR: 215598 Exp-run by: antoine Approved by: office (bapt) MFH: 2017Q159e02117ae
Remove BROKEN_FreeBSD_9 Approved by: portmgr (blanket)e0b379fa6f
devel/boost-*: update to 1.62.0 - Enable `long double` C99 math usage - Switch 9.x back to building with GCC Changes: http://www.boost.org/users/history/ PR: 199601 Submitted by: Chen Xu, bapt, amdmi3, truckman (based on) Reviewed by: rakuco (kde) (earlier version) Exp-run by: antoine (3 tries), truckman (consumers only, earlier versions) Approved by: bapt (office)a8713d15f4
devel/icu: update to 58.1 Changes: http://site.icu-project.org/download/58 PR: 214384 Exp-run by: antoine Approved by: office (bapt)23a96f4a5f
Spell CHOSEN_COMPILER_TYPE correctly PR: 1990983e9f8351e9
- Update devel/icu to 57.1. - Clean up the Makefile. - Follow some upstream recommendations (--with-data-packaging=archive, --disable-renaming, -DICU_NO_USER_DATA_OVERRIDE). - Patch makefiles to install static libraries with INSTALL_DATA so they aren't stripped. - Patch config/mh-bsd-gcc to sync with config/mh-linux-gcc. - Fix endianness detection in ICU. The code wanted to use BYTE_ORDER d PR: 205120 Exp-run by: antoine Approved by: portmgr (antoine)48f4591035
Bump PORTREVISION for the icu revert. This time not bumping lang/php70, but devel/php70-intl which is the one really depending on icu. PR: 205120 With hat: portmgr Sponsored by: Absolight7acca7e902
devel/icu: bump PORTREVISION on dependent portsfb8d8ab5f9
Remove ${PORTSDIR}/ from dependencies, categories d, e, f, and g.
With hat: portmgr
Sponsored by: Absolight4e1b79a0a6- Update to 0.5.0 - Bump PORTREVISION for graphics/webp shlib change Changes: https://chromium.googlesource.com/webm/libwebp/+/master/NEWS1fc33e5d96
- Update to 3.0.9 - Fix LICENSE - Strip libraries - Respect CFLAGS/CXXFLAGS - Make proj optional - Switch to options helpers - Simplify docs installation PR: 207060 Submitted by: amdmi3 Approved by: maintainer timeout (littlesavage@rambler.ru, 3 weeks)2fa4078568
- Update to 2.0.0 - Bump PORTREVISION for graphics/gdal shlib change - Mark astro/merkaartor as BROKEN Changes: http://trac.osgeo.org/gdal/wiki/Release/2.0.0-Newsef0fa46671
Convert to USES=jpeg6e5719ca80
- Update graphics/proj to 4.9.1 - Bump PORTREVISION to chase the update of proj PR: 200434 Submitted by: wen@(myself) Approved by: maintainer(timeout, >20 days)70e12eef45
Update icu to 55.125c34fd38f
Bump portrevision after png updatebb21093773
Change libpng15.so to libpng.so in LIB_DEPENDS to prepare the upgrade7ae46e9b12
Replace USES=libtool:oldver with USES=libtool or USES=libtool:keepla in the 32 ports that still use it. Bump PORTREVISION on their dependent ports except the ones that depend on these: audio/libogg audio/libvorbis devel/pcre ftp/curl graphics/jpeg graphics/libart_lgpl graphics/tiff textproc/expat2 textproc/libxslt In these cases the same trick as in the recent gettext update is used. The ports install a symlink with the old library version. When enough of their dependent ports have had regular updates the remaining ones can get a PORTREVISION bump and the links can be removed. Also remove the devel/pcre dependency from USE_GNOME=glib20. It causes over 2200 packages to depend on devel/pcre while less than 200 actually link with it. The glib20 package still depends on devel/pcre so this should not make a difference for ports with USE_GNOME=glib20. Also, libdata/pkgconfig/glib-2.0.pc lists pcre as a private library so USE_GNOME=glib20 should not propagate it. PR: 195724 Exp-run by: antoine Approved by: portmgr (antoine)60945f0277
Finally retire USE_PGSQL4cb60faedd
- Convert ports of graphics/ to new USES=python Approved by: portmgr (implicit)734b61f327
Cleanup plista76a739bfe
graphics/mapnik: fix build with graphics/agg is installed PR: 189943 Submitted by: brfr (metrico.lu) Patch by: maintainer (Aleksey Illarionov)ac72ad3f9b
- Remove USE_AUTOTOOLS=libtool - Bump PORTREVISION for package change - Bump PORTREVISION for graphics/gdal shlib change [1] Approved by: portmgr (implicit) [1]61a8320e09