[SCM] postgis branch, master, updated. upstream/2.0.1-103-ge95a0f8

Markus Wanner markus at bluegap.ch
Thu Jan 9 19:25:45 UTC 2014


The following commit has been merged in the master branch:
commit e95a0f81c287304dbe3e201a0e6f65b0a3a2d931
Author: Markus Wanner <markus at bluegap.ch>
Date:   Thu Jan 9 20:24:48 2014 +0100

    * Fix FTBFS on armel, maybe others, with yet another patch.
    * debian/control: bumped Standard-Versions to 3.9.5, no changes needed.

diff --git a/debian/changelog b/debian/changelog
index 32a6134..7d49b37 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+postgis (2.1.1-2) UNRELEASED; urgency=medium
+
+  * Fix FTBFS on armel, maybe others, with yet another patch.
+  * debian/control: bumped Standard-Versions to 3.9.5, no changes needed.
+
+ -- Markus Wanner <markus at bluegap.ch>  Thu, 09 Jan 2014 20:00:54 +0100
+
 postgis (2.1.1-1) unstable; urgency=low
 
   * New upstream release
diff --git a/debian/control b/debian/control
index 9d1f15a..3d03e5d 100644
--- a/debian/control
+++ b/debian/control
@@ -15,7 +15,7 @@ Build-Depends-Indep: openjdk-8-jdk | openjdk-7-jdk | openjdk-6-jdk,
  libmaven-clean-plugin-java, libmaven-jar-plugin-java,
  libsurefire-java, libmaven-compiler-plugin-java,
  libmaven-resources-plugin-java
-Standards-Version: 3.9.4
+Standards-Version: 3.9.5
 Homepage: http://postgis.refractions.net/
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-grass/postgis.git
 Vcs-Git: git://anonscm.debian.org/pkg-grass/postgis.git
diff --git a/debian/control.in b/debian/control.in
index f3acef2..f4c1fb1 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -15,7 +15,7 @@ Build-Depends-Indep: openjdk-8-jdk | openjdk-7-jdk | openjdk-6-jdk,
  libmaven-clean-plugin-java, libmaven-jar-plugin-java,
  libsurefire-java, libmaven-compiler-plugin-java,
  libmaven-resources-plugin-java
-Standards-Version: 3.9.4
+Standards-Version: 3.9.5
 Homepage: http://postgis.refractions.net/
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-grass/postgis.git
 Vcs-Git: git://anonscm.debian.org/pkg-grass/postgis.git
diff --git a/debian/patches/fix-armel b/debian/patches/fix-armel
new file mode 100644
index 0000000..db47b40
--- /dev/null
+++ b/debian/patches/fix-armel
@@ -0,0 +1,163 @@
+Description: Fix FTBSF os armel, at least
+ All point_in_{polygon,multipolygon,polygon_rtree,multipolygon_rtree}
+ functions return an int ranging from -1 to +1. This patch properly
+ preserves that type and prevents the bogus conversion to bool. Thus
+ correcting the return value and fixing multiple tests on armel.
+Author: Markus Wanner <markus at bluegap.ch>
+Last-Update: 2014-01-09
+
+--- a/postgis/lwgeom_geos.c
++++ b/postgis/lwgeom_geos.c
+@@ -1990,6 +1990,7 @@
+ 	LWPOINT *point;
+ 	RTREE_POLY_CACHE *poly_cache;
+ 	bool result;
++	int pip_result;
+ 	PrepGeomCache *prep_cache;
+ 
+ 	geom1 = (GSERIALIZED *)  PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
+@@ -2037,15 +2038,15 @@
+ 
+ 		if ( poly_cache && poly_cache->ringIndices )
+ 		{
+-			result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
++			pip_result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
+ 		}
+ 		else if ( type1 == POLYGONTYPE )
+ 		{
+-			result = point_in_polygon((LWPOLY*)lwgeom, point);
++			pip_result = point_in_polygon((LWPOLY*)lwgeom, point);
+ 		}
+ 		else if ( type1 == MULTIPOLYGONTYPE )
+ 		{
+-			result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
++			pip_result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
+ 		}
+ 		else
+ 		{
+@@ -2057,7 +2058,7 @@
+ 		lwpoint_free(point);
+ 		PG_FREE_IF_COPY(geom1, 0);
+ 		PG_FREE_IF_COPY(geom2, 1);
+-		if ( result == 1 ) /* completely inside */
++		if ( pip_result == 1 ) /* completely inside */
+ 		{
+ 			PG_RETURN_BOOL(TRUE);
+ 		}
+@@ -2213,6 +2214,7 @@
+ 	GSERIALIZED *geom1;
+ 	GSERIALIZED *geom2;
+ 	bool result;
++	int pip_result;
+ 	GBOX box1, box2;
+ 	int type1, type2;
+ 	LWGEOM *lwgeom;
+@@ -2263,15 +2265,15 @@
+ 
+ 		if ( poly_cache && poly_cache->ringIndices )
+ 		{
+-			result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
++			pip_result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
+ 		}
+ 		else if ( type1 == POLYGONTYPE )
+ 		{
+-			result = point_in_polygon((LWPOLY*)lwgeom, point);
++			pip_result = point_in_polygon((LWPOLY*)lwgeom, point);
+ 		}
+ 		else if ( type1 == MULTIPOLYGONTYPE )
+ 		{
+-			result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
++			pip_result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
+ 		}
+ 		else
+ 		{
+@@ -2284,7 +2286,7 @@
+ 		lwpoint_free(point);
+ 		PG_FREE_IF_COPY(geom1, 0);
+ 		PG_FREE_IF_COPY(geom2, 1);
+-		if ( result != -1 ) /* not outside */
++		if ( pip_result != -1 ) /* not outside */
+ 		{
+ 			PG_RETURN_BOOL(TRUE);
+ 		}
+@@ -2368,6 +2370,7 @@
+ 	GSERIALIZED *geom2;
+ 	GEOSGeometry *g1, *g2;
+ 	bool result;
++	int pip_result;
+ 	GBOX box1, box2;
+ 	LWGEOM *lwgeom;
+ 	LWPOINT *point;
+@@ -2418,15 +2421,15 @@
+ 
+ 		if ( poly_cache && poly_cache->ringIndices )
+ 		{
+-			result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
++			pip_result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
+ 		}
+ 		else if ( type2 == POLYGONTYPE )
+ 		{
+-			result = point_in_polygon((LWPOLY*)lwgeom, point);
++			pip_result = point_in_polygon((LWPOLY*)lwgeom, point);
+ 		}
+ 		else if ( type2 == MULTIPOLYGONTYPE )
+ 		{
+-			result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
++			pip_result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
+ 		}
+ 		else
+ 		{
+@@ -2439,7 +2442,7 @@
+ 		lwpoint_free(point);
+ 		PG_FREE_IF_COPY(geom1, 0);
+ 		PG_FREE_IF_COPY(geom2, 1);
+-		if ( result != -1 ) /* not outside */
++		if ( pip_result != -1 ) /* not outside */
+ 		{
+ 			PG_RETURN_BOOL(TRUE);
+ 		}
+@@ -2493,7 +2496,7 @@
+ 	GSERIALIZED *geom1;
+ 	GSERIALIZED *geom2;
+ 	GEOSGeometry *g1, *g2;
+-	bool result;
++	int result;
+ 	GBOX box1, box2;
+ 
+ 	geom1 = (GSERIALIZED *)PG_DETOAST_DATUM(PG_GETARG_DATUM(0));
+@@ -2562,6 +2565,7 @@
+ 	GSERIALIZED *geom2;
+ 	GSERIALIZED *serialized_poly;
+ 	bool result;
++	int pip_result;
+ 	GBOX box1, box2;
+ 	int type1, type2, polytype;
+ 	LWPOINT *point;
+@@ -2623,15 +2627,15 @@
+ 
+ 		if ( poly_cache && poly_cache->ringIndices )
+ 		{
+-			result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
++			pip_result = point_in_multipolygon_rtree(poly_cache->ringIndices, poly_cache->polyCount, poly_cache->ringCounts, point);
+ 		}
+ 		else if ( polytype == POLYGONTYPE )
+ 		{
+-			result = point_in_polygon((LWPOLY*)lwgeom, point);
++			pip_result = point_in_polygon((LWPOLY*)lwgeom, point);
+ 		}
+ 		else if ( polytype == MULTIPOLYGONTYPE )
+ 		{
+-			result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
++			pip_result = point_in_multipolygon((LWMPOLY*)lwgeom, point);
+ 		}
+ 		else
+ 		{
+@@ -2644,7 +2648,7 @@
+ 		lwpoint_free(point);
+ 		PG_FREE_IF_COPY(geom1, 0);
+ 		PG_FREE_IF_COPY(geom2, 1);
+-		if ( result != -1 ) /* not outside */
++		if ( pip_result != -1 ) /* not outside */
+ 		{
+ 			PG_RETURN_BOOL(TRUE);
+ 		}
diff --git a/debian/patches/series b/debian/patches/series
index 30534e1..66d1e02 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -6,4 +6,5 @@ link-liblwgeom
 use-debian-maven
 honor-build-flags
 fix-kfreebsd
+fix-armel
 fix-manpage

-- 
PostGIS for PostgreSQL



More information about the Pkg-grass-devel mailing list