nixpkgs/pkgs/by-name/mp/mpir/package.nix
aleksana 571c71e6f7 treewide: migrate packages to pkgs/by-name, take 1
We are migrating packages that meet below requirements:

1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration

The tool is here: https://github.com/Aleksanaa/by-name-migrate.
2024-11-09 20:04:51 +08:00

37 lines
1.2 KiB
Nix

{ lib, stdenv, fetchurl, m4, which, yasm, autoreconfHook, fetchpatch, buildPackages }:
stdenv.mkDerivation rec {
pname = "mpir";
version = "3.0.0";
depsBuildBuild = [ buildPackages.stdenv.cc ];
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.hostPlatform.isLinux [ "--enable-fat" ];
meta = {
description = "Highly optimised library for bignum arithmetic forked from GMP";
license = lib.licenses.lgpl3Plus;
maintainers = [lib.maintainers.raskin];
platforms = lib.platforms.unix;
downloadPage = "https://mpir.org/downloads.html";
homepage = "https://mpir.org/";
};
}