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

Balló György bgyorgy at archlinux.org
Tue Apr 17 14:59:26 UTC 2018


    Date: Tuesday, April 17, 2018 @ 14:59:25
  Author: bgyorgy
Revision: 316749

upgpkg: gdal 2.2.4-1

Update to new version, enable Xerces-C support (FS#57930), split out python library (FS#45034)

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

-----------------------------+
 PKGBUILD                    |   81 +++++++++++++++++--------
 gdal-2.2.3_json-c_013.patch |  132 ------------------------------------------
 2 files changed, 54 insertions(+), 159 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-04-17 14:18:02 UTC (rev 316748)
+++ PKGBUILD	2018-04-17 14:59:25 UTC (rev 316749)
@@ -3,49 +3,39 @@
 # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org
 # Contributor: William Rea <sillywilly at gmail.com>
 
-pkgname=gdal
-pkgver=2.2.3
-pkgrel=4
+pkgbase=gdal
+pkgname=(gdal python-gdal python2-gdal)
+pkgver=2.2.4
+pkgrel=1
 pkgdesc="A translator library for raster geospatial data formats"
 arch=('x86_64')
 url="http://www.gdal.org/"
 license=('custom')
 depends=('curl' 'geos' 'giflib' 'hdf5' 'libgeotiff' 'libjpeg-turbo' 'libpng' 'libspatialite' 'libtiff' 'netcdf'
-         'openjpeg2' 'poppler' 'python2' 'python2-numpy' 'cfitsio' 'sqlite' 'libmariadbclient' 'postgresql-libs')
-makedepends=('perl' 'swig' 'chrpath' 'doxygen')
+         'openjpeg2' 'poppler' 'cfitsio' 'sqlite' 'libmariadbclient' 'postgresql-libs' 'xerces-c' 'json-c')
+makedepends=('perl' 'swig' 'chrpath' 'doxygen' 'python' 'python2')
 optdepends=('postgresql: postgresql database support'
             'mariadb: mariadb database support'
             'perl:  perl binding support')
 options=('!emptydirs')
-changelog=$pkgname.changelog
-source=(http://download.osgeo.org/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.xz
-        gdal-perl-vendor.patch
-        gdal-2.2.3_json-c_013.patch)
-sha256sums=('a328d63d476b3653f5a25b5f7971e87a15cdf8860ab0729d4b1157ba988b8d0b'
-            '20989e5fa499206b42c92280ce084fdf7b2f661a4233fc349611cc57102fe114'
-            '722f6b3394542635815b07702f88a312a0d32fcf7672abf780360b888fbab4af')
+changelog=$pkgbase.changelog
+source=(https://download.osgeo.org/${pkgbase}/${pkgver}/${pkgbase}-${pkgver}.tar.xz
+        gdal-perl-vendor.patch)
+sha256sums=('441eb1d1acb35238ca43a1a0a649493fc91fdcbab231d0747e9d462eea192278'
+            '20989e5fa499206b42c92280ce084fdf7b2f661a4233fc349611cc57102fe114')
 
 prepare() {
-  cd "${srcdir}"/$pkgname-$pkgver
+  cd "${srcdir}"/$pkgbase-$pkgver
 
-# python2 fixes
-  sed -i 's_python python1.5_python2 python python1.5_' configure
-  for file in swig/python/{,osgeo/,samples/,scripts/}*.py; do
-      sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file
-  done
-
 # Fix mandir
   sed -i "s|^mandir=.*|mandir='\${prefix}/share/man'|" configure
 
 # 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() {
-  cd "${srcdir}"/$pkgname-$pkgver
+  cd "${srcdir}"/$pkgbase-$pkgver
   export CFLAGS="$CFLAGS -fno-strict-aliasing"
 
 # bug #23654
@@ -52,7 +42,7 @@
   export LDFLAGS="$LDFLAGS -Wl,--as-needed"
 
   ./configure --prefix=/usr --with-netcdf --with-libtiff --with-sqlite3 --with-geotiff \
-              --with-mysql --with-python --with-curl --with-hdf5 --with-perl --with-geos \
+              --with-mysql --with-curl --with-hdf5 --with-perl --with-geos \
               --with-png --with-poppler --with-spatialite --with-openjpeg
 
 # workaround for bug #13646
@@ -61,16 +51,20 @@
 
   make
   make man
+
+  cd "${srcdir}"/$pkgbase-$pkgver/swig/python
+  python2 setup.py build
+  python3 setup.py build
 }
 
-package () {
-  cd "${srcdir}"/$pkgname-$pkgver
+package_gdal () {
+  cd "${srcdir}"/$pkgbase-$pkgver
 
   make DESTDIR="${pkgdir}" install
   make DESTDIR="${pkgdir}" install-man
 
 # install license
-  install -Dm644 LICENSE.TXT "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE
+  install -Dm644 LICENSE.TXT "${pkgdir}"/usr/share/licenses/$pkgbase/LICENSE
 
 #FS15477 clean up junks - still present in 2.2.1
   rm -f "${pkgdir}"/usr/share/man/man1/_build_gdal_src_gdal-${pkgver}_apps_.1
@@ -83,3 +77,36 @@
   chrpath --delete "${pkgdir}"${vendorarch}/auto/Geo/GDAL/Const/Const.so
   chrpath --delete "${pkgdir}"${vendorarch}/auto/Geo/GNM/GNM.so
 }
+
+package_python-gdal () {
+  pkgdesc="Python bindings for GDAL"
+  depends=("gdal=$pkgver" 'python-numpy')
+  optdepends=()
+
+  cd "${srcdir}"/$pkgbase-$pkgver/swig/python
+  python3 setup.py install --root="$pkgdir" --optimize=1
+  install -Dm755 -t "${pkgdir}"/usr/bin scripts/*.py
+
+  install -dm755 "${pkgdir}"/usr/share/licenses
+  ln -s $pkgbase "${pkgdir}"/usr/share/licenses/$pkgname
+}
+
+package_python2-gdal () {
+  pkgdesc="Python 2 bindings for GDAL"
+  depends=("gdal=$pkgver" 'python2-numpy')
+  optdepends=()
+
+  cd "${srcdir}"/$pkgbase-$pkgver/swig/python
+
+# python2 fixes
+  for file in {,osgeo/,samples/,scripts/}*.py; do
+      sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file
+  done
+
+  python2 setup.py install --root="$pkgdir" --optimize=1
+  install -Dm755 -t "${pkgdir}"/usr/bin scripts/*.py
+  for file in "${pkgdir}"/usr/bin/*; do mv "${file}" "${file%.py}2.py"; done
+
+  install -dm755 "${pkgdir}"/usr/share/licenses
+  ln -s $pkgbase "${pkgdir}"/usr/share/licenses/$pkgname
+}

Deleted: gdal-2.2.3_json-c_013.patch
===================================================================
--- gdal-2.2.3_json-c_013.patch	2018-04-17 14:18:02 UTC (rev 316748)
+++ gdal-2.2.3_json-c_013.patch	2018-04-17 14:59:25 UTC (rev 316749)
@@ -1,132 +0,0 @@
-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