Hello community,

here is the log from the commit of package gdal for openSUSE:Factory checked in 
at 2016-10-02 00:09:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gdal (Old)
 and      /work/SRC/openSUSE:Factory/.gdal.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gdal"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gdal/gdal.changes        2016-05-17 
17:14:25.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gdal.new/gdal.changes   2016-10-02 
00:09:11.000000000 +0200
@@ -1,0 +2,15 @@
+Fri Sep 30 16:00:00 UTC 2016 - Angelos Tzotsos <[email protected]>
+
+- Packaging changes
+  - Added netcdf-gcp-fix.patch from upstream (#6666)
+
+-------------------------------------------------------------------
+Sun Sep 25 13:20:22 UTC 2016 - [email protected]
+
+- New upstream bugfix release 2.1.1
+  - https://trac.osgeo.org/gdal/wiki/Release/2.1.1-News
+- Packaging changes
+  - Remove ogr_wrap.patch included upstream
+  - Added support to liblzma 
+
+-------------------------------------------------------------------

Old:
----
  gdal-2.1.0.tar.xz
  ogr_wrap.patch

New:
----
  gdal-2.1.1.tar.xz
  netcdf-gcp-fix.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gdal.spec ++++++
--- /var/tmp/diff_new_pack.QXYsla/_old  2016-10-02 00:09:12.000000000 +0200
+++ /var/tmp/diff_new_pack.QXYsla/_new  2016-10-02 00:09:12.000000000 +0200
@@ -23,7 +23,7 @@
 %define sourcename gdal
 
 Name:           gdal
-Version:        2.1.0
+Version:        2.1.1
 Release:        0
 Summary:        GDAL/OGR - a translator library for raster and vector 
geospatial data formats
 License:        MIT and BSD-3-Clause and SUSE-Public-Domain
@@ -36,7 +36,7 @@
 # Fix hard coded name of libproj library
 # But libproj.so is valid if libproj-devel is installed ?
 Patch2:         gdal-libproj.patch
-Patch3:         ogr_wrap.patch
+Patch3:         netcdf-gcp-fix.patch
 BuildRequires:  blas-devel
 BuildRequires:  chrpath
 BuildRequires:  curl-devel
@@ -157,7 +157,7 @@
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
+%patch3 -p2
 
 # Fix mandir
 sed -i "s|^mandir=.*|mandir='\${prefix}/share/man'|" configure
@@ -185,6 +185,7 @@
         --with-rename-internal-libtiff-symbols=yes \
         --with-rename-internal-libgeotiff-symbols=yes \
         --with-libz             \
+        --with-liblzma          \
         --with-cfitsio=no       \
         --with-netcdf           \
         --with-openjpeg         \

++++++ gdal-2.1.0.tar.xz -> gdal-2.1.1.tar.xz ++++++
/work/SRC/openSUSE:Factory/gdal/gdal-2.1.0.tar.xz 
/work/SRC/openSUSE:Factory/.gdal.new/gdal-2.1.1.tar.xz differ: char 27, line 1

++++++ netcdf-gcp-fix.patch ++++++
>From fa7af0b95804fac670a88f602f9cbec922b4d054 Mon Sep 17 00:00:00 2001
From: Even Rouault <[email protected]>
Date: Fri, 30 Sep 2016 11:12:06 +0000
Subject: [PATCH] HDF5: correct number of GCPs to avoid dummy trailing
 (0,0)->(0,0,0) and remove +180 offset applied to GCP longitude. Add instead a
 heuristics to determine if the product is crossing the antimeridian, and a
 HDF5_SHIFT_GCPX_BY_180 config option to be able to override the heuristics
 (fixes #6666)

git-svn-id: https://svn.osgeo.org/gdal/branches/2.1@35557 
f0d54148-0727-0410-94bb-9a71ac55c965
---
 gdal/frmts/hdf5/hdf5imagedataset.cpp | 33 +++++++++++++++++++++++++++++++--
 1 file changed, 31 insertions(+), 2 deletions(-)

diff --git a/gdal/frmts/hdf5/hdf5imagedataset.cpp 
b/gdal/frmts/hdf5/hdf5imagedataset.cpp
index 120a04a..e6211c1 100644
--- a/gdal/frmts/hdf5/hdf5imagedataset.cpp
+++ b/gdal/frmts/hdf5/hdf5imagedataset.cpp
@@ -825,7 +825,7 @@ CPLErr HDF5ImageDataset::CreateProjections()
     /* -------------------------------------------------------------------- */
     /*  Fill the GCPs list.                                                 */
     /* -------------------------------------------------------------------- */
-        nGCPCount = nRasterYSize/nDeltaLat * nRasterXSize/nDeltaLon;
+        nGCPCount = (nRasterYSize/nDeltaLat) * (nRasterXSize/nDeltaLon);
 
         pasGCPList = static_cast<GDAL_GCP *>(
             CPLCalloc( nGCPCount, sizeof( GDAL_GCP ) ) );
@@ -835,12 +835,41 @@ CPLErr HDF5ImageDataset::CreateProjections()
 
         const int nYLimit = (static_cast<int>(nRasterYSize)/nDeltaLat) * 
nDeltaLat;
         const int nXLimit = (static_cast<int>(nRasterXSize)/nDeltaLon) * 
nDeltaLon;
+
+        // The original code in https://trac.osgeo.org/gdal/changeset/8066
+        // always add +180 to the longitudes, but without justification
+        // I suspect this might be due to handling products crossing the
+        // antimeridian. Trying to do it just when needed through a heuristics.
+        bool bHasLonNearMinus180 = false;
+        bool bHasLonNearPlus180 = false;
+        bool bHasLonNearZero = false;
+        for( int j = 0; j < nYLimit; j+=nDeltaLat )
+        {
+            for( int i = 0; i < nXLimit; i+=nDeltaLon )
+            {
+                const int iGCP =  j * nRasterXSize + i;
+                if( Longitude[iGCP] > 170 && Longitude[iGCP] <= 180 )
+                    bHasLonNearPlus180 = true;
+                if( Longitude[iGCP] < -170 && Longitude[iGCP] >= -180 )
+                    bHasLonNearMinus180 = true;
+                if( fabs(Longitude[iGCP]) < 90 )
+                    bHasLonNearZero = true;
+            }
+        }
+        const char* pszShiftGCP =
+                CPLGetConfigOption("HDF5_SHIFT_GCPX_BY_180", NULL);
+        const bool bAdd180 = (bHasLonNearPlus180 && bHasLonNearMinus180 &&
+                              !bHasLonNearZero && pszShiftGCP == NULL) ||
+                             (pszShiftGCP != NULL && CPLTestBool(pszShiftGCP));
+
         for( int j = 0; j < nYLimit; j+=nDeltaLat )
         {
             for( int i = 0; i < nXLimit; i+=nDeltaLon )
             {
                 const int iGCP =  j * nRasterXSize + i;
-                pasGCPList[k].dfGCPX = 
static_cast<double>(Longitude[iGCP])+180.0;
+                pasGCPList[k].dfGCPX = static_cast<double>(Longitude[iGCP]);
+                if( bAdd180 )
+                    pasGCPList[k].dfGCPX += 180.0;
                 pasGCPList[k].dfGCPY = static_cast<double>(Latitude[iGCP]);
 
                 pasGCPList[k].dfGCPPixel = i + 0.5;

Reply via email to