summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2017-07-08 22:37:12 +0200
committerGitHub <noreply@github.com>2017-07-08 22:37:12 +0200
commitdcbe96d260ce05c554a0b3152aaa703d343ad8be (patch)
treec674fd683d549740b24e458d7e847d4e23d61bd0 /pkgs/applications
parent0d2d5e214762d328015e613227f88bfcc2fe32e6 (diff)
parent6cbd9ce8f9e0ca111a99a8f57adb7a8ba6cd957d (diff)
downloadnixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar.gz
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar.bz2
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar.lz
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar.xz
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.tar.zst
nixlib-dcbe96d260ce05c554a0b3152aaa703d343ad8be.zip
Merge pull request #27197 from kquick/master
yices library: enable full functionality by adding libpoly polynomial library and fix soname linking.
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/science/logic/poly/default.nix22
-rw-r--r--pkgs/applications/science/logic/yices/default.nix16
2 files changed, 33 insertions, 5 deletions
diff --git a/pkgs/applications/science/logic/poly/default.nix b/pkgs/applications/science/logic/poly/default.nix
new file mode 100644
index 000000000000..2fdbd87a275c
--- /dev/null
+++ b/pkgs/applications/science/logic/poly/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, gmp, cmake, python}:
+
+let version = "0.1.3";
+in
+
+stdenv.mkDerivation {
+  name = "libpoly-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/SRI-CSL/libpoly/archive/v${version}.tar.gz";
+    sha256 = "0nd90585imnznyp04vg6a5ixxkd3bavhv1437397aj2k3dfc0y2k";
+  };
+
+  buildInputs = [ cmake gmp python ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/SRI-CSL/libpoly;
+    description = "C library for manipulating polynomials";
+    license = licenses.lgpl3;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/science/logic/yices/default.nix b/pkgs/applications/science/logic/yices/default.nix
index cf5114b4a417..0ec7f93d26f5 100644
--- a/pkgs/applications/science/logic/yices/default.nix
+++ b/pkgs/applications/science/logic/yices/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchurl, gmp-static, gperf, autoreconfHook }:
+{ stdenv, fetchurl, gmp-static, gperf, autoreconfHook, libpoly }:
 
 stdenv.mkDerivation rec {
   name    = "yices-${version}";
   version = "2.5.1";
 
   src = fetchurl {
-    url = "http://yices.csl.sri.com/cgi-bin/yices2-newnewdownload.cgi?file=yices-${version}-src.tar.gz&accept=I+Agree";
-    name = "yices-${version}-src.tar.gz";
+    url = "http://yices.csl.sri.com/cgi-bin/yices2-newnewdownload.cgi?file=${name}-src.tar.gz&accept=I+Agree";
+    name = "${name}-src.tar.gz";
     sha256 = "1wfq6hcm54h0mqmbs1ip63i0ywlwnciav86sbzk3gafxyzg1nd0c";
   };
 
@@ -14,13 +14,19 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--with-static-gmp=${gmp-static.out}/lib/libgmp.a"
                      "--with-static-gmp-include-dir=${gmp-static.dev}/include"
+                     "--enable-mcsat"
                    ];
-  buildInputs = [ gmp-static gperf autoreconfHook ];
+  buildInputs = [ gmp-static gperf autoreconfHook libpoly ];
 
   enableParallelBuilding = true;
   doCheck = true;
 
-  installPhase = ''make install LDCONFIG=true'';
+  # Includes a fix for the embedded soname being libyices.so.2.5, but
+  # only installing the libyices.so.2.5.1 file.
+  installPhase = ''
+      make install LDCONFIG=true
+      (cd $out/lib && ln -s -f libyices.so.2.5.1 libyices.so.2.5)
+  '';
 
   meta = with stdenv.lib; {
     description = "A high-performance theorem prover and SMT solver";