summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorDan Peebles <pumpkin@me.com>2016-09-06 17:44:41 -0400
committerDan Peebles <pumpkin@me.com>2016-09-06 17:45:13 -0400
commit247c54e374882443492b19a2275c707b5c25174d (patch)
tree54dcc86e1edf83affb2235558f48594015ddc696 /pkgs
parentc43c0b2efac1cfbcb7e22cc6362e45dc7917c3d8 (diff)
downloadnixlib-247c54e374882443492b19a2275c707b5c25174d.tar
nixlib-247c54e374882443492b19a2275c707b5c25174d.tar.gz
nixlib-247c54e374882443492b19a2275c707b5c25174d.tar.bz2
nixlib-247c54e374882443492b19a2275c707b5c25174d.tar.lz
nixlib-247c54e374882443492b19a2275c707b5c25174d.tar.xz
nixlib-247c54e374882443492b19a2275c707b5c25174d.tar.zst
nixlib-247c54e374882443492b19a2275c707b5c25174d.zip
souffle: init at 1.0.0
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/compilers/souffle/default.nix41
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 43 insertions, 0 deletions
diff --git a/pkgs/development/compilers/souffle/default.nix b/pkgs/development/compilers/souffle/default.nix
new file mode 100644
index 000000000000..68353e6a5d47
--- /dev/null
+++ b/pkgs/development/compilers/souffle/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, boost, bison, flex, openjdk, doxygen, perl, graphviz }:
+
+stdenv.mkDerivation rec {
+  version = "1.0.0";
+  name    = "souffle-${version}";
+
+  src = fetchFromGitHub {
+    owner  = "souffle-lang";
+    repo   = "souffle";
+    rev    = version;
+    sha256 = "13j14227dgxcm25z9iizcav563wg2ak9338pb03aqqz8yqxbmz4n";
+  };
+
+  buildInputs = [
+    autoconf automake boost bison flex openjdk
+    # Used for docs
+    doxygen perl graphviz
+  ];
+
+  patchPhase = ''
+    substituteInPlace configure.ac \
+      --replace "m4_esyscmd([git describe --tags --abbrev=0 | tr -d '\n'])" "${version}"
+  '';
+
+  # Without this, we get an obscure error about not being able to find a library version
+  # without saying what library it's looking for. Turns out it's searching global paths
+  # for boost and failing there, so we tell it what's what here.
+  configureFlags = [ "--with-boost-libdir=${boost}/lib" ];
+
+  preConfigure = "./bootstrap";
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "A translator of declarative Datalog programs into the C++ language";
+    homepage    = "http://souffle-lang.github.io/";
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ copumpkin ];
+    license     = licenses.upl;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ce7a23579eaf..acad02a206b9 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5582,6 +5582,8 @@ in
 
   solc = callPackage ../development/compilers/solc { };
 
+  souffle = callPackage ../development/compilers/souffle { };
+
   sqldeveloper = callPackage ../development/tools/database/sqldeveloper { };
 
   squeak = callPackage ../development/compilers/squeak { };