Package: gpsdrive
Version: 2.10~pre4-1
Severity: normal


A new version of Mapnik, on which gpsdrive depends, has recently been
uploaded to experimental and will soon make its way into unstable.

Unfortunately, there is some ickiness involved, since mapnik upstream
does not (yet[0]) support multiple installed versions (with incompatible
plugins) concurrently yet. The fact that mapnik plugins would not be
compatible between corresponding .so versions was overlooked in the mapnik
0.4 packages, but has been corrected in the impending mapnik 0.5

In addition, a source change is needed to gpsdrive to support a changed
ABI in mapnik. Details of both changes follow:

1) Automatically determine location of mapnik input plugins using
   mapnik-plugin-base and alter src/mapnik.cpp during build accordingly.

I tested this with a rather dirty hack (I'm not that familiar with the
dpatch build system, so I'm sure this could be done much better:

In debian/rules, after patching:

sed -i.bak -e "s#/usr/lib/mapnik/#$(shell mapnik-plugin-base)/#" src/mapnik.cpp

In debian/rules, before unpatching:

[ ! -f src/mapnik.cpp.bak ] || mv src/mapnik.cpp.bak src/mapnik.cpp

Your build-dependencies for libmapnik-dev will need to be updated to

libmapnik-dev (>= 0.5~svn638-1)

to make use of the 'mapnik-plugin-base' utility.

2) Patch src/mapnik.cpp for new mapnik API:

--- gpsdrive-2.10~pre4/src/mapnik.cpp.bak       2007-09-14 22:47:13.000000000 
+++ gpsdrive-2.10~pre4/src/mapnik.cpp   2008-02-11 23:57:37.000000000 +0000
@@ -118,7 +118,7 @@
     // Both datasorce_cache and font_engine are 'singletons'.
+    freetype_engine::register_font("/usr/lib/mapnik/fonts/DejaVuSans.ttf");
     MapnikMap.WidthInt = 1280;
     MapnikMap.HeightInt = 1024;

(the font path in that patch obviously changes based on a subsequent
dpatch) in the current Debian package.

This should probably be to work whichever version of mapnik is
installed, and pushed back to gpsdrive upstream.

I will raise the severity of this bug to 'important' once the new mapnik
packages hit unstable, and then to 'serious' shortly afterwards (since
this will become a FTBFS).

Note that I haven't fully tested gpsdrive with mapnik 0.5 - only that it
builds okay. Any other issues would probably be the subject of a separate
bug report.

Let me know if you need any further information on these issues.


Maintainer for the Mapnik packages.


Pkg-grass-devel mailing list

Reply via email to