The following commit has been merged in the master branch: commit b79f5511de3c6a22dfa1e9cb1cf4f85886244dad Author: David Paleino <da...@debian.org> Date: Mon Mar 12 22:17:34 2012 +0100
Fix FTBFS with the new geos library (02-support_new_libgeos++.patch) diff --git a/debian/changelog b/debian/changelog index 1269e41..412d04a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,9 @@ osmium (0.0~20111213-g7f3500a-2) UNRELEASED; urgency=low * Switch dependency from libgeos-dev to libgeos++-dev + * Fix FTBFS with the new geos library (02-support_new_libgeos++.patch) - -- David Paleino <da...@debian.org> Mon, 12 Mar 2012 21:47:02 +0100 + -- David Paleino <da...@debian.org> Mon, 12 Mar 2012 23:41:12 +0100 osmium (0.0~20111213-g7f3500a-1) unstable; urgency=low diff --git a/debian/patches/02-support_new_libgeos++.patch b/debian/patches/02-support_new_libgeos++.patch new file mode 100644 index 0000000..e5c9926 --- /dev/null +++ b/debian/patches/02-support_new_libgeos++.patch @@ -0,0 +1,47 @@ +From: David Paleino <da...@debian.org> +Subject: patch code to work with geos++ 3.3.1 +Origin: vendor +Forwarded: no + +--- + include/osmium/geometry/multipolygon.hpp | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +--- osmium.orig/include/osmium/geometry/multipolygon.hpp ++++ osmium/include/osmium/geometry/multipolygon.hpp +@@ -54,14 +54,14 @@ namespace Osmium { + switch (g->getGeometryTypeId()) { + case geos::geom::GEOS_MULTIPOLYGON: + case geos::geom::GEOS_MULTILINESTRING: { +- for (geos::geom::GeometryCollection::const_iterator it = static_cast<const geos::geom::GeometryCollection*>(g)->begin(); +- it != static_cast<const geos::geom::GeometryCollection*>(g)->end(); ++it) { ++ for (geos::geom::GeometryCollection::const_iterator it = dynamic_cast<const geos::geom::GeometryCollection*>(g)->begin(); ++ it != dynamic_cast<const geos::geom::GeometryCollection*>(g)->end(); ++it) { + dump_geometry(*it, part_start_list, x_list, y_list); + } + break; + } + case geos::geom::GEOS_POLYGON: { +- const geos::geom::Polygon* polygon = static_cast<const geos::geom::Polygon*>(g); ++ const geos::geom::Polygon* polygon = dynamic_cast<const geos::geom::Polygon*>(g); + dump_geometry(polygon->getExteriorRing(), part_start_list, x_list, y_list); + for (size_t i=0; i < polygon->getNumInteriorRing(); ++i) { + dump_geometry(polygon->getInteriorRingN(i), part_start_list, x_list, y_list); +@@ -71,7 +71,7 @@ namespace Osmium { + case geos::geom::GEOS_LINESTRING: + case geos::geom::GEOS_LINEARRING: { + part_start_list.push_back(x_list.size()); +- const geos::geom::CoordinateSequence* cs = static_cast<const geos::geom::LineString*>(g)->getCoordinatesRO(); ++ const geos::geom::CoordinateSequence* cs = dynamic_cast<const geos::geom::LineString*>(g)->getCoordinatesRO(); + for (size_t i = 0; i < cs->getSize(); ++i) { + x_list.push_back(cs->getX(i)); + y_list.push_back(cs->getY(i)); +@@ -165,7 +165,7 @@ namespace Osmium { + v8::Local<v8::Array> multipolygon_array = v8::Array::New(geometry->getNumGeometries()); + + for (size_t i=0; i < geometry->getNumGeometries(); ++i) { +- geos::geom::Polygon* polygon = (geos::geom::Polygon*) geometry->getGeometryN(i); ++ const geos::geom::Polygon* polygon = dynamic_cast<const geos::geom::Polygon*>(geometry->getGeometryN(i)); + v8::Local<v8::Array> polygon_array = v8::Array::New(polygon->getNumInteriorRing()); + multipolygon_array->Set(i, polygon_array); + polygon_array->Set(0, js_ring_as_array(polygon->getExteriorRing())); diff --git a/debian/patches/series b/debian/patches/series index 5167465..a1f6622 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,2 +1,3 @@ 00-fix_typos.patch 01-fix_ld--as-needed.patch +02-support_new_libgeos++.patch -- C++ framework for working with OSM data files _______________________________________________ Pkg-osm-commits mailing list Pkg-osm-commits@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-osm-commits