gdal: 2.4.0 -> 3.0.1

This commit is contained in:
Jonathan Ringer 2019-07-11 03:38:05 -07:00
parent f424f47fa3
commit a84f21944f
3 changed files with 52 additions and 32 deletions

View File

@ -0,0 +1,29 @@
diff a/swig/python/setup.py b/swig/python/setup.py
--- a/swig/python/setup.py
+++ b/swig/python/setup.py
@@ -268,17 +268,17 @@ class gdal_ext(build_ext):
if ext.name != 'osgeo._gdalconst':
ext.extra_compile_args += [cxx11_flag]
- # Adding arch flags here if OS X and compiler is clang
- if sys.platform == 'darwin' and [int(x) for x in os.uname()[2].split('.')] >= [11, 0, 0]:
- # since MacOS X 10.9, clang no longer accepts -mno-fused-madd
- # extra_compile_args.append('-Qunused-arguments')
- clang_flag = '-Wno-error=unused-command-line-argument-hard-error-in-future'
- if has_flag(self.compiler, clang_flag):
- ext.extra_compile_args += [clang_flag]
- else:
- clang_flag = '-Wno-error=unused-command-line-argument'
- if has_flag(self.compiler, clang_flag):
- ext.extra_compile_args += [clang_flag]
+ # Adding arch flags here if OS X and compiler is clang
+ if sys.platform == 'darwin' and [int(x) for x in os.uname()[2].split('.')] >= [11, 0, 0]:
+ # since MacOS X 10.9, clang no longer accepts -mno-fused-madd
+ # extra_compile_args.append('-Qunused-arguments')
+ clang_flag = '-Wno-error=unused-command-line-argument-hard-error-in-future'
+ if has_flag(self.compiler, clang_flag):
+ ext.extra_compile_args += [clang_flag]
+ else:
+ clang_flag = '-Wno-error=unused-command-line-argument'
+ if has_flag(self.compiler, clang_flag):
+ ext.extra_compile_args += [clang_flag]

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, fetchpatch, unzip, libjpeg, libtiff, zlib
{ stdenv, fetchFromGitHub, fetchpatch, unzip, libjpeg, libtiff, zlib
, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat
, libiconv, libxml2
, libiconv, libxml2, autoreconfHook
, netcdfSupport ? true, netcdf, hdf5, curl
}:
@ -9,15 +9,23 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "gdal-${version}";
version = "2.4.0";
version = "3.0.1";
src = fetchurl {
url = "https://download.osgeo.org/gdal/${version}/${name}.tar.xz";
sha256 = "09qgy36z0jc9w05373m4n0vm4j54almdzql6z9p9zr9pdp61syf3";
src = fetchFromGitHub {
owner = "OSGeo";
repo = "gdal";
rev = "v${version}";
sha256 = "04rraqhygv8b8fy87qvdhkgx87whby9n98p3gxqr7kdrfymwnh8l";
};
sourceRoot = "source/gdal";
patches = [ ./001.3_0_1.darwin.patch ];
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ unzip libjpeg libtiff libpng proj openssl sqlite
libspatialite poppler hdf4 qhull giflib expat libxml2 ]
libspatialite libgeotiff poppler hdf4 qhull giflib expat libxml2 ]
++ (with pythonPackages; [ python numpy wrapPython ])
++ stdenv.lib.optional stdenv.isDarwin libiconv
++ stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ];
@ -35,7 +43,7 @@ stdenv.mkDerivation rec {
"--with-sqlite3=${sqlite.dev}"
"--with-spatialite=${libspatialite}"
"--with-python" # optional
"--with-proj=${proj}" # optional
"--with-proj=${proj.dev}" # optional
"--with-geos=${geos}/bin/geos-config"# optional
"--with-hdf4=${hdf4.dev}" # optional
"--with-xml2=${libxml2.dev}/bin/xml2-config" # optional
@ -46,31 +54,9 @@ stdenv.mkDerivation rec {
CXXFLAGS = "-fpermissive";
postPatch = ''
sed -i '/ifdef bool/i\
#ifdef swap\
#undef swap\
#endif' ogr/ogrsf_frmts/mysql/ogr_mysql.h
# poppler 0.73.0 support
patch -lp2 <${
fetchpatch {
url = "https://github.com/OSGeo/gdal/commit/29f4dfbcac2de718043f862166cd639ab578b552.diff";
sha256 = "1h2rsjjrgwqfgqzppmzv5jgjs1dbbg8pvfmay0j9y0618qp3r734";
}
} || true
patch -p2 <${
fetchpatch {
url = "https://github.com/OSGeo/gdal/commit/19967e682738977e11e1d0336e0178882c39cad2.diff";
sha256 = "12yqd77226i6xvzgqmxiac5ghdinixh8k2crg1r2gnhc0xlc3arj";
}
}
'';
# - Unset CC and CXX as they confuse libtool.
# - teach gdal that libdf is the legacy name for libhdf
preConfigure = ''
unset CC CXX
substituteInPlace configure \
--replace "-lmfhdf -ldf" "-lmfhdf -lhdf"
'';

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "0hphxzvy23v3vqxx1y22hhhg4cypihrb8555y12nb4mrhzlw7zfl";
};
buildInputs = [ unzip libjpeg libtiff libpng python pythonPackages.numpy proj openssl ];
buildInputs = [ unzip libjpeg libtiff libgeotiff libpng python pythonPackages.numpy proj openssl ];
patches = [
# This ensures that the python package is installed into gdal's prefix,
@ -33,12 +33,17 @@ stdenv.mkDerivation rec {
"--with-pg=${postgresql}/bin/pg_config"
"--with-mysql=${mysql57.connector-c}/bin/mysql_config"
"--with-geotiff=${libgeotiff}"
"--with-geotiff=${libgeotiff.dev}"
"--with-python" # optional
"--with-static-proj4=${proj}" # optional
"--with-geos=${geos}/bin/geos-config"# optional
];
# Allow use of old proj_api.h
NIX_CFLAGS_COMPILE = [
"-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1"
];
# Prevent this:
#
# Checking .pth file support in /nix/store/xkrmb8xnvqxzjwsdmasqmsdh1a5y2y99-gdal-1.11.2/lib/python2.7/site-packages/