Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at litex 61 lines 2.2 kB view raw
1{ fetchurl, fetchpatch, lib, stdenv, gmpxx, perl, gnum4 }: 2 3let version = "1.2"; in 4 5stdenv.mkDerivation { 6 pname = "ppl"; 7 inherit version; 8 9 src = fetchurl { 10 url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2"; 11 sha256 = "1wgxcbgmijgk11df43aiqfzv31r3bkxmgb4yl68g21194q60nird"; 12 }; 13 14 patches = [(fetchpatch { 15 name = "clang5-support.patch"; 16 url = "https://git.sagemath.org/sage.git/plain/build/pkgs/ppl/patches/clang5-support.patch?h=9.2"; 17 sha256 = "1zj90hm25pkgvk4jlkfzh18ak9b98217gbidl3731fdccbw6hr87"; 18 })]; 19 20 nativeBuildInputs = [ perl gnum4 ]; 21 propagatedBuildInputs = [ gmpxx ]; 22 23 configureFlags = [ "--disable-watchdog" ] ++ 24 lib.optionals stdenv.isDarwin [ 25 "CPPFLAGS=-fexceptions" 26 "--disable-ppl_lcdd" "--disable-ppl_lpsol" "--disable-ppl_pips" 27 ]; 28 29 # Beware! It took ~6 hours to compile PPL and run its tests on a 1.2 GHz 30 # x86_64 box. Nevertheless, being a dependency of GCC, it probably ought 31 # to be tested. 32 doCheck = false; 33 34 enableParallelBuilding = true; 35 36 meta = { 37 description = "The Parma Polyhedra Library"; 38 39 longDescription = '' 40 The Parma Polyhedra Library (PPL) provides numerical abstractions 41 especially targeted at applications in the field of analysis and 42 verification of complex systems. These abstractions include convex 43 polyhedra, defined as the intersection of a finite number of (open or 44 closed) halfspaces, each described by a linear inequality (strict or 45 non-strict) with rational coefficients; some special classes of 46 polyhedra shapes that offer interesting complexity/precision tradeoffs; 47 and grids which represent regularly spaced points that satisfy a set of 48 linear congruence relations. The library also supports finite 49 powersets and products of (any kind of) polyhedra and grids and a mixed 50 integer linear programming problem solver using an exact-arithmetic 51 version of the simplex algorithm. 52 ''; 53 54 homepage = "http://bugseng.com/products/ppl/"; 55 56 license = lib.licenses.gpl3Plus; 57 58 maintainers = [ ]; 59 platforms = lib.platforms.unix; 60 }; 61}