about summary refs log tree commit diff
path: root/pkgs/development/python-modules/shapely
diff options
context:
space:
mode:
authorRobert T. McGibbon <rmcgibbo@gmail.com>2021-02-03 23:27:18 -0500
committerRobert T. McGibbon <rmcgibbo@gmail.com>2021-02-03 23:27:18 -0500
commite63d45045631bbc511b1ed4d1250608e093bff57 (patch)
treed5d6f15ecacbeaebef4f709fb65a3301dea53230 /pkgs/development/python-modules/shapely
parentce9de14677786843e25c68441d691322ee440379 (diff)
python3Packages.shapely: fix build with geos 3.9.0
Diffstat (limited to 'pkgs/development/python-modules/shapely')
-rw-r--r--pkgs/development/python-modules/shapely/default.nix26
1 files changed, 23 insertions, 3 deletions
diff --git a/pkgs/development/python-modules/shapely/default.nix b/pkgs/development/python-modules/shapely/default.nix
index b5dd0be5445c5..519d9bd34151b 100644
--- a/pkgs/development/python-modules/shapely/default.nix
+++ b/pkgs/development/python-modules/shapely/default.nix
@@ -1,17 +1,25 @@
-{ lib, stdenv, buildPythonPackage, fetchPypi, substituteAll, pythonOlder
-, geos, pytest, cython
+{ lib
+, stdenv
+, buildPythonPackage
+, fetchPypi
+, substituteAll
+, pythonOlder
+, geos
+, pytest
+, cython
 , numpy
+, fetchpatch
 }:
 
 buildPythonPackage rec {
   pname = "Shapely";
   version = "1.7.1";
+  disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "0adiz4jwmwxk7k1awqifb1a9bj5x4nx4gglb5dz9liam21674h8n";
   };
-  disabled = pythonOlder "3.5";
 
   nativeBuildInputs = [
     geos # for geos-config
@@ -26,6 +34,18 @@ buildPythonPackage rec {
   GEOS_LIBRARY_PATH = "${geos}/lib/libgeos_c${stdenv.hostPlatform.extensions.sharedLibrary}";
 
   patches = [
+    # Fix with geos 3.9. This patch will be part of the next release after 1.7.1
+    (fetchpatch {
+      url = "https://github.com/Toblerity/Shapely/commit/77879a954d24d1596f986d16ba3eff5e13861164.patch";
+      sha256 = "1w7ngjqbpf9vnvrfg4nyv34kckim9a60gvx20h6skc79xwihd4m5";
+      excludes = [
+        "tests/test_create_inconsistent_dimensionality.py"
+        "appveyor.yml"
+        ".travis.yml"
+      ];
+    })
+
+    # Patch to search form GOES .so/.dylib files in a Nix-aware way
     (substituteAll {
       src = ./library-paths.patch;
       libgeos_c = GEOS_LIBRARY_PATH;