1{
2 version,
3 urls,
4 sha256,
5 configureFlags ? [ ],
6 patches ? [ ],
7}:
8
9{
10 lib,
11 stdenv,
12 fetchurl,
13 gmp,
14 autoreconfHook,
15 buildPackages,
16 updateAutotoolsGnuConfigScriptsHook,
17}:
18
19stdenv.mkDerivation {
20 pname = "isl";
21 inherit version;
22
23 src = fetchurl {
24 inherit urls sha256;
25 };
26
27 inherit patches;
28
29 strictDeps = true;
30 depsBuildBuild = lib.optionals (lib.versionAtLeast version "0.23") [ buildPackages.stdenv.cc ];
31 nativeBuildInputs =
32 lib.optionals (stdenv.hostPlatform.isRiscV && lib.versionOlder version "0.23") [
33 autoreconfHook
34 ]
35 ++ [
36 # needed until config scripts are updated to not use /usr/bin/uname on FreeBSD native
37 updateAutotoolsGnuConfigScriptsHook
38 ];
39 buildInputs = [ gmp ];
40
41 inherit configureFlags;
42
43 enableParallelBuilding = true;
44
45 meta = {
46 homepage = "https://libisl.sourceforge.io/";
47 license = lib.licenses.lgpl21;
48 description = "Library for manipulating sets and relations of integer points bounded by linear constraints";
49 platforms = lib.platforms.all;
50 };
51}