From d55cba68ff391f9b353908ef4555ab8d45d697af Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Tue, 9 Jul 2019 17:39:33 -0700 Subject: proj: 5.2.0 -> 6.1.1 --- pkgs/development/libraries/proj/default.nix | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix index 8fb4515e70da..ea89dbee0f61 100644 --- a/pkgs/development/libraries/proj/default.nix +++ b/pkgs/development/libraries/proj/default.nix @@ -1,13 +1,22 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchFromGitHub, pkg-config, sqlite, autoreconfHook }: -stdenv.mkDerivation { - name = "proj-5.2.0"; +stdenv.mkDerivation rec { + name = "proj"; + version = "6.1.1"; - src = fetchurl { - url = https://download.osgeo.org/proj/proj-5.2.0.tar.gz; - sha256 = "0q3ydh2j8qhwlxmnac72pg69rw2znbi5b6k5wama8qmwzycr94gg"; + src = fetchFromGitHub { + owner = "OSGeo"; + repo = "PROJ"; + rev = version; + sha256 = "0w2v2l22kv0xzq5hwl7n8ki6an8vfsr0lg0cdbkwcl4xv889ysma"; }; + outputs = [ "out" "dev"]; + + nativeBuildInputs = [ pkg-config autoreconfHook ]; + + buildInputs = [ sqlite ]; + doCheck = stdenv.is64bit; meta = with stdenv.lib; { -- cgit 1.4.1 From 19ebc0bd450851dee4a7d181cadd8e31e1d4d4e0 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Thu, 11 Jul 2019 03:05:42 -0700 Subject: libspatialite: fix build --- pkgs/development/libraries/libspatialite/default.nix | 3 +++ 1 file changed, 3 insertions(+) (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/libspatialite/default.nix b/pkgs/development/libraries/libspatialite/default.nix index 8e7b539527e1..7bd22248d876 100644 --- a/pkgs/development/libraries/libspatialite/default.nix +++ b/pkgs/development/libraries/libspatialite/default.nix @@ -11,12 +11,15 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libxml2 sqlite zlib proj geos libiconv ]; configureFlags = [ "--disable-freexl" ]; enableParallelBuilding = true; + CFLAGS = "-DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1"; + postInstall = "" + optionalString stdenv.isDarwin '' ln -s $out/lib/mod_spatialite.{so,dylib} ''; -- cgit 1.4.1 From f424f47fa3f3ca6404476df5cdc60fca4e011763 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Thu, 11 Jul 2019 03:06:19 -0700 Subject: libgeotiff: 1.4.3 -> 1.5.1 --- pkgs/development/libraries/libgeotiff/default.nix | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/libgeotiff/default.nix b/pkgs/development/libraries/libgeotiff/default.nix index 33b9e7830e71..51520eb0fe38 100644 --- a/pkgs/development/libraries/libgeotiff/default.nix +++ b/pkgs/development/libraries/libgeotiff/default.nix @@ -1,18 +1,27 @@ -{ stdenv, fetchurl, libtiff, libjpeg, proj, zlib}: +{ stdenv, fetchFromGitHub, libtiff, libjpeg, proj, zlib, autoreconfHook }: stdenv.mkDerivation rec { - version = "1.4.3"; + version = "1.5.1"; name = "libgeotiff-${version}"; - src = fetchurl { - url = "https://download.osgeo.org/geotiff/libgeotiff/${name}.tar.gz"; - sha256 = "0rbjqixi4c8yz19larlzq6jda0px2gpmpp9c52cyhplbjsdhsldq"; + src = fetchFromGitHub { + owner = "OSGeo"; + repo = "libgeotiff"; + rev = version; + sha256 = "081ag23pn2n5y4fkb2rnh4hmcnq92siqiqv0s20jmx0j3s2nvfxy"; }; + outputs = [ "out" "dev" ]; + + sourceRoot = "source/libgeotiff"; + configureFlags = [ "--with-jpeg=${libjpeg.dev}" "--with-zlib=${zlib.dev}" ]; + + nativeBuildInputs = [ autoreconfHook ]; + buildInputs = [ libtiff proj ]; hardeningDisable = [ "format" ]; -- cgit 1.4.1 From a84f21944faaea08e576ac18b683b01dd588251b Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Thu, 11 Jul 2019 03:38:05 -0700 Subject: gdal: 2.4.0 -> 3.0.1 --- .../libraries/gdal/001.3_0_1.darwin.patch | 29 ++++++++++++++ pkgs/development/libraries/gdal/default.nix | 46 ++++++++-------------- pkgs/development/libraries/gdal/gdal-1_11.nix | 9 ++++- 3 files changed, 52 insertions(+), 32 deletions(-) create mode 100644 pkgs/development/libraries/gdal/001.3_0_1.darwin.patch (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/gdal/001.3_0_1.darwin.patch b/pkgs/development/libraries/gdal/001.3_0_1.darwin.patch new file mode 100644 index 000000000000..3d34f689120f --- /dev/null +++ b/pkgs/development/libraries/gdal/001.3_0_1.darwin.patch @@ -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] diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix index e7ffdde6cb1c..0db16e2efe3a 100644 --- a/pkgs/development/libraries/gdal/default.nix +++ b/pkgs/development/libraries/gdal/default.nix @@ -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" ''; diff --git a/pkgs/development/libraries/gdal/gdal-1_11.nix b/pkgs/development/libraries/gdal/gdal-1_11.nix index 32101221e64c..40308a957915 100644 --- a/pkgs/development/libraries/gdal/gdal-1_11.nix +++ b/pkgs/development/libraries/gdal/gdal-1_11.nix @@ -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/ -- cgit 1.4.1 From 3fbca39afab51b7a187fa08c95b9cc75eb0081a4 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sat, 13 Jul 2019 20:47:22 -0700 Subject: gdal_2: init at 2.4.0 --- pkgs/development/libraries/gdal/2.4.0.nix | 95 +++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 97 insertions(+) create mode 100644 pkgs/development/libraries/gdal/2.4.0.nix (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/gdal/2.4.0.nix b/pkgs/development/libraries/gdal/2.4.0.nix new file mode 100644 index 000000000000..14113d8b87eb --- /dev/null +++ b/pkgs/development/libraries/gdal/2.4.0.nix @@ -0,0 +1,95 @@ +{ stdenv, fetchurl, fetchpatch, unzip, libjpeg, libtiff, zlib +, postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl +, libpng, sqlite, libspatialite, poppler, hdf4, qhull, giflib, expat +, libiconv, libxml2 +, netcdfSupport ? true, netcdf, hdf5, curl +}: + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "gdal-${version}"; + version = "2.4.0"; + + src = fetchurl { + url = "https://download.osgeo.org/gdal/${version}/${name}.tar.xz"; + sha256 = "09qgy36z0jc9w05373m4n0vm4j54almdzql6z9p9zr9pdp61syf3"; + }; + + buildInputs = [ unzip libjpeg libtiff libgeotiff libpng proj openssl sqlite + libspatialite poppler hdf4 qhull giflib expat libxml2 proj ] + ++ (with pythonPackages; [ python numpy wrapPython ]) + ++ stdenv.lib.optional stdenv.isDarwin libiconv + ++ stdenv.lib.optionals netcdfSupport [ netcdf hdf5 curl ]; + + configureFlags = [ + "--with-expat=${expat.dev}" + "--with-jpeg=${libjpeg.dev}" + "--with-libtiff=${libtiff.dev}" # optional (without largetiff support) + "--with-png=${libpng.dev}" # optional + "--with-poppler=${poppler.dev}" # optional + "--with-libz=${zlib.dev}" # optional + "--with-pg=${postgresql}/bin/pg_config" + "--with-mysql=${mysql.connector-c or mysql}/bin/mysql_config" + "--with-geotiff=${libgeotiff.dev}" + "--with-sqlite3=${sqlite.dev}" + "--with-spatialite=${libspatialite}" + "--with-python" # 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 + (if netcdfSupport then "--with-netcdf=${netcdf}" else "") + ]; + + hardeningDisable = [ "format" ]; + + 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" + ''; + + preBuild = '' + substituteInPlace swig/python/GNUmakefile \ + --replace "ifeq (\$(STD_UNIX_LAYOUT),\"TRUE\")" "ifeq (1,1)" + ''; + + postInstall = '' + wrapPythonPrograms + ''; + + enableParallelBuilding = true; + + meta = { + description = "Translator library for raster geospatial data formats"; + homepage = https://www.gdal.org/; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.marcweber ]; + platforms = with stdenv.lib.platforms; linux ++ darwin; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 45b72d011d20..e75dd15fddd9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10553,6 +10553,8 @@ in gdal_1_11 = callPackage ../development/libraries/gdal/gdal-1_11.nix { }; + gdal_2 = callPackage ../development/libraries/gdal/2.4.0.nix { }; + gdcm = callPackage ../development/libraries/gdcm { }; ggz_base_libs = callPackage ../development/libraries/ggz_base_libs {}; -- cgit 1.4.1 From 80dd36749a9ca01835919cb40c4765e55941e902 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Thu, 11 Jul 2019 13:11:30 -0700 Subject: proj-datumgrid: init at world-1.0 --- .../libraries/proj-datumgrid/default.nix | 32 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/development/libraries/proj-datumgrid/default.nix (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/proj-datumgrid/default.nix b/pkgs/development/libraries/proj-datumgrid/default.nix new file mode 100644 index 000000000000..f1c13e93aecd --- /dev/null +++ b/pkgs/development/libraries/proj-datumgrid/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + name = "proj-datumgrid"; + version = "world-1.0"; + + src = fetchFromGitHub { + owner = "OSGeo"; + repo = "proj-datumgrid"; + rev = version; + sha256 = "132wp77fszx33wann0fjkmi1isxvsb0v9iw0gd9sxapa9h6hf3am"; + }; + + sourceRoot = "source/scripts"; + + buildPhase = '' + $CC nad2bin.c -o nad2bin + ''; + + installPhase = '' + mkdir -p $out/bin + cp nad2bin $out/bin/ + ''; + + meta = with stdenv.lib; { + description = "Repository for proj datum grids"; + homepage = https://proj4.org; + license = licenses.mit; + platforms = platforms.linux ++ platforms.darwin; + maintainers = with maintainers; [ ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 06c76e7a814e..6768f98f7f75 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12707,6 +12707,8 @@ in proj = callPackage ../development/libraries/proj { }; + proj-datumgrid = callPackage ../development/libraries/proj-datumgrid { }; + proselint = callPackage ../tools/text/proselint { inherit (python3Packages) buildPythonApplication click future six; -- cgit 1.4.1 From 141459887557649e43886ae81bd9b78b10842169 Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Sat, 13 Jul 2019 22:56:00 -0700 Subject: proj_5: init at 5.2 --- pkgs/development/libraries/proj/5.2.nix | 20 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 22 insertions(+) create mode 100644 pkgs/development/libraries/proj/5.2.nix (limited to 'pkgs/development/libraries') diff --git a/pkgs/development/libraries/proj/5.2.nix b/pkgs/development/libraries/proj/5.2.nix new file mode 100644 index 000000000000..8fb4515e70da --- /dev/null +++ b/pkgs/development/libraries/proj/5.2.nix @@ -0,0 +1,20 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation { + name = "proj-5.2.0"; + + src = fetchurl { + url = https://download.osgeo.org/proj/proj-5.2.0.tar.gz; + sha256 = "0q3ydh2j8qhwlxmnac72pg69rw2znbi5b6k5wama8qmwzycr94gg"; + }; + + doCheck = stdenv.is64bit; + + meta = with stdenv.lib; { + description = "Cartographic Projections Library"; + homepage = https://proj4.org; + license = licenses.mit; + platforms = platforms.linux ++ platforms.darwin; + maintainers = with maintainers; [ vbgl ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 258d56f36a0e..e5c66b544f3e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12707,6 +12707,8 @@ in proj = callPackage ../development/libraries/proj { }; + proj_5 = callPackage ../development/libraries/proj/5.2.nix { }; + proj-datumgrid = callPackage ../development/libraries/proj-datumgrid { }; proselint = callPackage ../tools/text/proselint { -- cgit 1.4.1