about summary refs log tree commit diff
path: root/pkgs/development/libraries/mpir/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/mpir/default.nix')
-rw-r--r--pkgs/development/libraries/mpir/default.nix13
1 files changed, 11 insertions, 2 deletions
diff --git a/pkgs/development/libraries/mpir/default.nix b/pkgs/development/libraries/mpir/default.nix
index 8ccad867ea898..6dd105bdb3027 100644
--- a/pkgs/development/libraries/mpir/default.nix
+++ b/pkgs/development/libraries/mpir/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, m4, which, yasm, buildPackages }:
+{ lib, stdenv, fetchurl, m4, which, yasm, autoreconfHook, fetchpatch, buildPackages }:
 
 stdenv.mkDerivation rec {
   pname = "mpir";
@@ -6,13 +6,22 @@ stdenv.mkDerivation rec {
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
 
-  nativeBuildInputs = [ m4 which yasm ];
+  nativeBuildInputs = [ m4 which yasm autoreconfHook ];
 
   src = fetchurl {
     url = "https://mpir.org/mpir-${version}.tar.bz2";
     sha256 = "1fvmhrqdjs925hzr2i8bszm50h00gwsh17p2kn2pi51zrxck9xjj";
   };
 
+  patches = [
+    # Fixes configure check failures with clang 16 due to implicit definitions of `exit`, which
+    # is an error with newer versions of clang.
+    (fetchpatch {
+      url = "https://github.com/wbhart/mpir/commit/bbc43ca6ae0bec4f64e69c9cd4c967005d6470eb.patch";
+      hash = "sha256-vW+cDK5Hq2hKEyprOJaNbj0bT2FJmMcyZHPE8GUNUWc=";
+    })
+  ];
+
   configureFlags = [ "--enable-cxx" ]
     ++ lib.optionals stdenv.isLinux [ "--enable-fat" ];