Request for Changes-38: update gdal to 2.x version in superbuild

From OTBWiki
Jump to: navigation, search

[Request for Changes - 38] update gdal to 2.x version in superbuild

Status

Summary

This RFC propose update of gdal to latest stable release 2.1.0

Rationale

OTB has moved onto GDAL 2.0 and two release has passed. This will give a superbuild gdal with sentinel1 and sentinel2 drivers among all other bug fixes and 2.0 API.

Since 5.2, SuperBuild is used to generate packages. This RFC will affect Linux and Mac OSX binary and development packages.

Implementation details

All external drivers whose libraries are not built by SuperBuild are explicitly deactivated. List includes (hdf5, hdf4, netcdf etc..)

Here is snip from final configure options

    --enable-static=no
    --enable-shared=yes
    --with-cfitsio=no
    --with-dods-root=no
    --with-dwgdirect=no
    --with-ecw=no
    --with-epsilon=no
    --with-fme=no
    --with-gif=no
    --with-grass=no
    --with-gta=no
    --with-hdf4=no
    --with-hdf5=no
    --with-idb=no
    --with-ingres=no
    --with-jp2mrsid=no
    --with-kakadu=no
    --with-libgrass=no
    --with-mrsid=no
    --with-msg=no
    --with-mysql=no
    --with-netcdf=no
    --with-oci=no
    --with-odbc=no
    --with-ogdi=no
    --with-pam
    --with-pcidsk=no
    --with-pcraster=no
    --with-pcre=no
    --with-perl=no
    --with-php=no
    --with-python=no
    --with-qhull=internal
    --with-sde=no
    --with-spatialite=no
    --with-xerces=no
    --with-xml2=no

Classes and files

M    SuperBuild/CMake/SuperBuild_Macro.cmake
M    SuperBuild/CMake/External_gdal.cmake
M    SuperBuild/patches/GDAL

Applications

N/A

Tests

test will be made on travis with updated xdk for develop branch.

Documentation

Additional notes

  • Single ExternalProject_Add() call
  • Easy patch integration using a superbuild macro.
  • The patch for swig is removed as it is not clear why we added this patch. I tried to push this into gdal 2.1.0 but didn't apply cleanly. Looking at the source file in 2.1.0 it seems the patch is not required. But this has to be tested.