about summary refs log tree commit diff
path: root/pkgs/development/libraries/ppl
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2011-03-31 21:32:01 +0000
committerShea Levy <shea@shealevy.com>2011-03-31 21:32:01 +0000
commit812e7c93eef99e1a438b86fa34cf8532e954846d (patch)
treeb2f8da4cec96060bd034ae845138e5d9f9569b90 /pkgs/development/libraries/ppl
parent8002302a318a8d4611440569e7869acdbf1c36ce (diff)
downloadnixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar.gz
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar.bz2
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar.lz
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar.xz
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.tar.zst
nixlib-812e7c93eef99e1a438b86fa34cf8532e954846d.zip
Add ppl version 0.11, necessary for Graphite optimizations in GCC 4.6.0
svn path=/nixpkgs/trunk/; revision=26636
Diffstat (limited to 'pkgs/development/libraries/ppl')
-rw-r--r--pkgs/development/libraries/ppl/0.11.nix50
1 files changed, 50 insertions, 0 deletions
diff --git a/pkgs/development/libraries/ppl/0.11.nix b/pkgs/development/libraries/ppl/0.11.nix
new file mode 100644
index 000000000000..25e14543038d
--- /dev/null
+++ b/pkgs/development/libraries/ppl/0.11.nix
@@ -0,0 +1,50 @@
+{ fetchurl, stdenv, gmpxx, perl, gnum4, static ? false }:
+
+let
+  version = "0.11";
+  staticFlags = if static then " --enable-static --disable-shared" else "";
+in
+  stdenv.mkDerivation rec {
+    name = "ppl-${version}";
+
+    src = fetchurl {
+      url = "mirror://gcc/infrastructure/ppl-${version}.tar.gz";
+      sha256 = "0xqwyaj232gi0pgm6z2rihk6p8l1rngbbibnhmcrbq4jq550clrl";
+    };
+
+    buildNativeInputs = [ perl gnum4 ];
+    propagatedBuildInputs = [ gmpxx ];
+
+    dontDisableStatic = if static then true else false;
+    configureFlags = staticFlags;
+
+    # Beware!  It took ~6 hours to compile PPL and run its tests on a 1.2 GHz
+    # x86_64 box.  Nevertheless, being a dependency of GCC, it probably ought
+    # to be tested.
+    doCheck = false;
+
+    meta = {
+      description = "PPL: The Parma Polyhedra Library";
+
+      longDescription = ''
+        The Parma Polyhedra Library (PPL) provides numerical abstractions
+        especially targeted at applications in the field of analysis and
+        verification of complex systems.  These abstractions include convex
+        polyhedra, defined as the intersection of a finite number of (open or
+        closed) halfspaces, each described by a linear inequality (strict or
+        non-strict) with rational coefficients; some special classes of
+        polyhedra shapes that offer interesting complexity/precision tradeoffs;
+        and grids which represent regularly spaced points that satisfy a set of
+        linear congruence relations.  The library also supports finite
+        powersets and products of (any kind of) polyhedra and grids and a mixed
+        integer linear programming problem solver using an exact-arithmetic
+        version of the simplex algorithm.
+      '';
+
+      homepage = http://www.cs.unipr.it/ppl/;
+
+      license = "GPLv3+";
+
+      maintainers = [ stdenv.lib.maintainers.ludo ];
+    };
+  }