[arch-commits] Commit in gdal/trunk (PKGBUILD gdal-2.2.3_json-c_013.patch)

Andreas Radke andyrtr at archlinux.org
Tue Mar 20 18:39:37 UTC 2018


    Date: Tuesday, March 20, 2018 @ 18:39:36
  Author: andyrtr
Revision: 309620

upgpkg: gdal 2.2.3-2

poppler update 0.63.0 rebuild

Added:
  gdal/trunk/gdal-2.2.3_json-c_013.patch
Modified:
  gdal/trunk/PKGBUILD

-----------------------------+
 PKGBUILD                    |   11 ++-
 gdal-2.2.3_json-c_013.patch |  132 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 140 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-03-20 18:36:23 UTC (rev 309619)
+++ PKGBUILD	2018-03-20 18:39:36 UTC (rev 309620)
@@ -5,7 +5,7 @@
 
 pkgname=gdal
 pkgver=2.2.3
-pkgrel=1
+pkgrel=2
 pkgdesc="A translator library for raster geospatial data formats"
 arch=('x86_64')
 url="http://www.gdal.org/"
@@ -19,9 +19,11 @@
 options=('!emptydirs')
 changelog=$pkgname.changelog
 source=(http://download.osgeo.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz
-        gdal-perl-vendor.patch)
+        gdal-perl-vendor.patch
+        gdal-2.2.3_json-c_013.patch)
 sha256sums=('a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b'
-            '20989e5fa499206b42c92280ce084fdf7b2f661a4233fc349611cc57102fe114')
+            '20989e5fa499206b42c92280ce084fdf7b2f661a4233fc349611cc57102fe114'
+            '722f6b3394542635815b07702f88a312a0d32fcf7672abf780360b888fbab4af')
 
 prepare() {
   cd "${srcdir}"/$pkgname-$pkgver
@@ -37,6 +39,9 @@
 
 # Fix Perl bindings installation path
   patch -Np1 -i ../gdal-perl-vendor.patch
+
+# build fix
+  patch -Np1 -i ../gdal-2.2.3_json-c_013.patch
 }
 
 build() {

Added: gdal-2.2.3_json-c_013.patch
===================================================================
--- gdal-2.2.3_json-c_013.patch	                        (rev 0)
+++ gdal-2.2.3_json-c_013.patch	2018-03-20 18:39:36 UTC (rev 309620)
@@ -0,0 +1,132 @@
+commit 7cab3c2049907fb0be76784c796143fb22dcafea
+Author: Bjรถrn Esser <besser82 at fedoraproject.org>
+Date:   Mon Dec 11 17:01:20 2017 +0100
+
+    geojson: Adaptions for json-c v0.13
+
+Index: gdal-2.2.3-fedora/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
+===================================================================
+--- gdal-2.2.3-fedora.orig/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
++++ gdal-2.2.3-fedora/ogr/ogrsf_frmts/geojson/ogrgeojsonwriter.cpp
+@@ -27,12 +27,18 @@
+  * DEALINGS IN THE SOFTWARE.
+  ****************************************************************************/
+ 
++#define JSON_C_VER_013 (13 << 8)
++
+ #include "ogrgeojsonwriter.h"
+ #include "ogrgeojsonutils.h"
+ #include "ogr_geojson.h"
+ #include "ogrgeojsonreader.h"
+ #include <json.h>  // JSON-C
++
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+ #include <json_object_private.h>
++#endif
++
+ #include <printbuf.h>
+ #include <ogr_api.h>
+ #include <ogr_p.h>
+@@ -1381,13 +1387,26 @@ static int OGR_json_double_with_precisio
+ {
+     // TODO(schwehr): Explain this casting.
+     const int nPrecision =
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+         static_cast<int>(reinterpret_cast<GUIntptr_t>(jso->_userdata));
++#else
++        static_cast<int>(reinterpret_cast<GUIntptr_t>(json_object_get_userdata(jso)));
++#endif
+     char szBuffer[75] = {};
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+     OGRFormatDouble( szBuffer, sizeof(szBuffer), jso->o.c_double, '.',
+                      (nPrecision < 0) ? 15 : nPrecision );
++#else
++    OGRFormatDouble( szBuffer, sizeof(szBuffer), json_object_get_double(jso), '.',
++                     (nPrecision < 0) ? 15 : nPrecision );
++#endif
+     if( szBuffer[0] == 't' /*oobig */ )
+     {
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+         CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", jso->o.c_double);
++#else
++        CPLsnprintf(szBuffer, sizeof(szBuffer), "%.18g", json_object_get_double(jso));
++#endif
+     }
+     return printbuf_memappend(pb, szBuffer, static_cast<int>(strlen(szBuffer)));
+ }
+@@ -1417,11 +1436,23 @@ OGR_json_double_with_significant_figures
+ {
+     char szBuffer[75] = {};
+     int nSize = 0;
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+     if( CPLIsNan(jso->o.c_double))
++#else
++    if( CPLIsNan(json_object_get_double(jso)))
++#endif
+         nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "NaN");
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+     else if( CPLIsInf(jso->o.c_double) )
++#else
++    else if( CPLIsInf(json_object_get_double(jso)) )
++#endif
+     {
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+         if( jso->o.c_double > 0 )
++#else
++        if( json_object_get_double(jso) > 0 )
++#endif
+             nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "Infinity");
+         else
+             nSize = CPLsnprintf(szBuffer, sizeof(szBuffer), "-Infinity");
+@@ -1429,13 +1460,22 @@ OGR_json_double_with_significant_figures
+     else
+     {
+         char szFormatting[32] = {};
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+         const int nSignificantFigures = (int) (GUIntptr_t) jso->_userdata;
++#else
++        const int nSignificantFigures = (int) (GUIntptr_t) json_object_get_userdata(jso);
++#endif
+         const int nInitialSignificantFigures =
+             nSignificantFigures >= 0 ? nSignificantFigures : 17;
+         CPLsnprintf(szFormatting, sizeof(szFormatting),
+                     "%%.%dg", nInitialSignificantFigures);
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+         nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+                             szFormatting, jso->o.c_double);
++#else
++        nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
++                            szFormatting, json_object_get_double(jso));
++#endif
+         const char* pszDot = NULL;
+         if( nSize+2 < static_cast<int>(sizeof(szBuffer)) &&
+             (pszDot = strchr(szBuffer, '.')) == NULL )
+@@ -1456,8 +1496,13 @@ OGR_json_double_with_significant_figures
+             {
+                 CPLsnprintf(szFormatting, sizeof(szFormatting),
+                             "%%.%dg", nInitialSignificantFigures- i);
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+                 nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+                                     szFormatting, jso->o.c_double);
++#else
++                nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
++                                    szFormatting, json_object_get_double(jso));
++#endif
+                 pszDot = strchr(szBuffer, '.');
+                 if( pszDot != NULL &&
+                     strstr(pszDot, "999999") == NULL &&
+@@ -1471,8 +1516,13 @@ OGR_json_double_with_significant_figures
+             {
+                 CPLsnprintf(szFormatting, sizeof(szFormatting),
+                             "%%.%dg", nInitialSignificantFigures);
++#if (!defined(JSON_C_VERSION_NUM)) || (JSON_C_VERSION_NUM < JSON_C_VER_013)
+                 nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
+                                     szFormatting, jso->o.c_double);
++#else
++                nSize = CPLsnprintf(szBuffer, sizeof(szBuffer),
++                                    szFormatting, json_object_get_double(jso));
++#endif
+                 if( nSize+2 < static_cast<int>(sizeof(szBuffer)) &&
+                     strchr(szBuffer, '.') == NULL )
+                 {
+



More information about the arch-commits mailing list