Merge pull request #80127 from brano543/master

corrected postgresql support for gdal 3.0+
This commit is contained in:
Danylo Hlynskyi 2020-02-15 15:33:36 +02:00 committed by GitHub
commit 4c90625808
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 36 additions and 21 deletions

View file

@ -1,9 +1,7 @@
{ stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib { stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib, postgresql
, postgresql, libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl , libmysqlclient, libgeotiff, pythonPackages, proj, geos, openssl, libpng
, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat , sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat, libiconv, libxml2
, libiconv, libxml2, autoreconfHook , autoreconfHook, netcdfSupport ? true, netcdf, hdf5, curl, pkg-config }:
, netcdfSupport ? true, netcdf, hdf5, curl
}:
with stdenv.lib; with stdenv.lib;
@ -20,29 +18,44 @@ stdenv.mkDerivation rec {
sourceRoot = "source/gdal"; sourceRoot = "source/gdal";
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ unzip libjpeg libtiff libpng proj openssl sqlite buildInputs = [
libspatialite libgeotiff poppler hdf4 qhull giflib expat libxml2 ] unzip
++ (with pythonPackages; [ python numpy wrapPython ]) libjpeg
++ stdenv.lib.optional stdenv.isDarwin libiconv libtiff
++ stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ]; libpng
proj
openssl
sqlite
libspatialite
libgeotiff
poppler
hdf4
qhull
giflib
expat
libxml2
postgresql
] ++ (with pythonPackages; [ python numpy wrapPython ])
++ stdenv.lib.optional stdenv.isDarwin libiconv
++ stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ];
configureFlags = [ configureFlags = [
"--with-expat=${expat.dev}" "--with-expat=${expat.dev}"
"--with-jpeg=${libjpeg.dev}" "--with-jpeg=${libjpeg.dev}"
"--with-libtiff=${libtiff.dev}" # optional (without largetiff support) "--with-libtiff=${libtiff.dev}" # optional (without largetiff support)
"--with-png=${libpng.dev}" # optional "--with-png=${libpng.dev}" # optional
"--with-poppler=${poppler.dev}" # optional "--with-poppler=${poppler.dev}" # optional
"--with-libz=${zlib.dev}" # optional "--with-libz=${zlib.dev}" # optional
"--with-pg=${postgresql}/bin/pg_config" "--with-pg=yes" # since gdal 3.0 doesn't use ${postgresql}/bin/pg_config
"--with-mysql=${libmysqlclient}/bin/mysql_config" "--with-mysql=${libmysqlclient}/bin/mysql_config"
"--with-geotiff=${libgeotiff}" "--with-geotiff=${libgeotiff}"
"--with-sqlite3=${sqlite.dev}" "--with-sqlite3=${sqlite.dev}"
"--with-spatialite=${libspatialite}" "--with-spatialite=${libspatialite}"
"--with-python" # optional "--with-python" # optional
"--with-proj=${proj.dev}" # optional "--with-proj=${proj.dev}" # optional
"--with-geos=${geos}/bin/geos-config"# optional "--with-geos=${geos}/bin/geos-config" # optional
"--with-hdf4=${hdf4.dev}" # optional "--with-hdf4=${hdf4.dev}" # optional
"--with-xml2=${libxml2.dev}/bin/xml2-config" # optional "--with-xml2=${libxml2.dev}/bin/xml2-config" # optional
(if netcdfSupport then "--with-netcdf=${netcdf}" else "") (if netcdfSupport then "--with-netcdf=${netcdf}" else "")
@ -55,9 +68,9 @@ stdenv.mkDerivation rec {
# - Unset CC and CXX as they confuse libtool. # - Unset CC and CXX as they confuse libtool.
# - teach gdal that libdf is the legacy name for libhdf # - teach gdal that libdf is the legacy name for libhdf
preConfigure = '' preConfigure = ''
substituteInPlace configure \ substituteInPlace configure \
--replace "-lmfhdf -ldf" "-lmfhdf -lhdf" --replace "-lmfhdf -ldf" "-lmfhdf -lhdf"
''; '';
preBuild = '' preBuild = ''
substituteInPlace swig/python/GNUmakefile \ substituteInPlace swig/python/GNUmakefile \
@ -72,7 +85,7 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "Translator library for raster geospatial data formats"; description = "Translator library for raster geospatial data formats";
homepage = https://www.gdal.org/; homepage = "https://www.gdal.org/";
license = stdenv.lib.licenses.mit; license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.marcweber ]; maintainers = [ stdenv.lib.maintainers.marcweber ];
platforms = with stdenv.lib.platforms; linux ++ darwin; platforms = with stdenv.lib.platforms; linux ++ darwin;

View file

@ -11487,7 +11487,9 @@ in
libXpm = null; libXpm = null;
}; };
gdal = callPackage ../development/libraries/gdal { }; gdal = callPackage ../development/libraries/gdal {
pythonPackages = python3Packages;
};
gdal_1_11 = callPackage ../development/libraries/gdal/gdal-1_11.nix { }; gdal_1_11 = callPackage ../development/libraries/gdal/gdal-1_11.nix { };