about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/librdf
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/librdf')
-rw-r--r--nixpkgs/pkgs/development/libraries/librdf/raptor.nix24
-rw-r--r--nixpkgs/pkgs/development/libraries/librdf/raptor2.nix31
-rw-r--r--nixpkgs/pkgs/development/libraries/librdf/rasqal.nix30
-rw-r--r--nixpkgs/pkgs/development/libraries/librdf/redland.nix47
4 files changed, 132 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/librdf/raptor.nix b/nixpkgs/pkgs/development/libraries/librdf/raptor.nix
new file mode 100644
index 000000000000..ef194bb0b1ec
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librdf/raptor.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, libxml2, curl }:
+
+stdenv.mkDerivation rec {
+  name = "raptor-1.4.21";
+
+  src = fetchurl {
+    url = "http://download.librdf.org/source/${name}.tar.gz";
+    sha256 = "db3172d6f3c432623ed87d7d609161973d2f7098e3d2233d0702fbcc22cfd8ca";
+  };
+
+  buildInputs = [ libxml2 curl ];
+
+  preBuild = ''
+    sed -e '/curl\/types/d' -i src/*.c src/*.h
+  '';
+
+  meta = {
+    description = "The RDF Parser Toolkit";
+    homepage = "http://librdf.org/raptor";
+    license = with stdenv.lib.licenses; [ lgpl21 asl20 ];
+    maintainers = [ stdenv.lib.maintainers.marcweber ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/librdf/raptor2.nix b/nixpkgs/pkgs/development/libraries/librdf/raptor2.nix
new file mode 100644
index 000000000000..4645b5ea0d83
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librdf/raptor2.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, libxml2, libxslt }:
+
+stdenv.mkDerivation rec {
+  pname = "raptor2";
+  version = "2.0.15";
+
+  src = fetchurl {
+    url = "http://download.librdf.org/source/${pname}-${version}.tar.gz";
+    sha256 = "ada7f0ba54787b33485d090d3d2680533520cd4426d2f7fb4782dd4a6a1480ed";
+  };
+
+  patches = [
+    (fetchurl {
+      name = "CVE-2017-18926.patch";
+      url = "https://github.com/dajobe/raptor/commit/590681e546cd9aa18d57dc2ea1858cb734a3863f.patch";
+      sha256 = "1qlpb5rm3j2yi0x6zgdi5apymg5zlvwq3g1zl417gkjrlvxmndgp";
+    })
+  ];
+
+  buildInputs = [ libxml2 libxslt ];
+
+  postInstall = "rm -rvf $out/share/gtk-doc";
+
+  meta = {
+    description = "The RDF Parser Toolkit";
+    homepage = "http://librdf.org/raptor";
+    license = with stdenv.lib.licenses; [ lgpl21 asl20 ];
+    maintainers = with stdenv.lib.maintainers; [ marcweber ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/librdf/rasqal.nix b/nixpkgs/pkgs/development/libraries/librdf/rasqal.nix
new file mode 100644
index 000000000000..d9b94a668c60
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librdf/rasqal.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, librdf_raptor2, gmp, pkgconfig, pcre, libxml2, perl }:
+
+stdenv.mkDerivation rec {
+  name = "rasqal-0.9.33";
+
+  src = fetchurl {
+    url = "http://download.librdf.org/source/${name}.tar.gz";
+    sha256 = "0z6rrwn4jsagvarg8d5zf0j352kjgi33py39jqd29gbhcnncj939";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ gmp pcre libxml2 ];
+
+  propagatedBuildInputs = [ librdf_raptor2 ];
+
+  postInstall = "rm -rvf $out/share/gtk-doc";
+
+  checkInputs = [ perl ];
+  doCheck = false; # fails with "No testsuite plan file sparql-query-plan.ttl could be created in build/..."
+  doInstallCheck = false; # fails with "rasqal-config does not support (--help|--version)"
+
+  meta = {
+    description = "Library that handles Resource Description Framework (RDF)";
+    homepage = "http://librdf.org/rasqal";
+    license = with stdenv.lib.licenses; [ lgpl21 asl20 ];
+    maintainers = with stdenv.lib.maintainers; [ marcweber ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/librdf/redland.nix b/nixpkgs/pkgs/development/libraries/librdf/redland.nix
new file mode 100644
index 000000000000..a85500d2c6ec
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/librdf/redland.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchurl, pkgconfig, openssl, libxslt, perl
+, curl, pcre, libxml2, librdf_rasqal, gmp
+, libmysqlclient, withMysql ? false
+, postgresql, withPostgresql ? false
+, sqlite, withSqlite ? true
+, db, withBdb ? false
+}:
+
+stdenv.mkDerivation rec {
+  name = "redland-1.0.17";
+
+  src = fetchurl {
+    url = "http://download.librdf.org/source/${name}.tar.gz";
+    sha256 = "de1847f7b59021c16bdc72abb4d8e2d9187cd6124d69156f3326dd34ee043681";
+  };
+
+  nativeBuildInputs = [ perl pkgconfig ];
+
+  buildInputs = [ openssl libxslt curl pcre libxml2 gmp ]
+    ++ stdenv.lib.optional withMysql libmysqlclient
+    ++ stdenv.lib.optional withSqlite sqlite
+    ++ stdenv.lib.optional withPostgresql postgresql
+    ++ stdenv.lib.optional withBdb db;
+
+  propagatedBuildInputs = [ librdf_rasqal ];
+
+  postInstall = "rm -rvf $out/share/gtk-doc";
+
+  configureFlags =
+    [ "--with-threads" ]
+    ++ stdenv.lib.optionals withBdb [
+      "--with-bdb-include=${db.dev}/include"
+      "--with-bdb-lib=${db.out}/lib"
+    ];
+
+  # Fix broken DT_NEEDED in lib/redland/librdf_storage_sqlite.so.
+  NIX_CFLAGS_LINK = "-lraptor2";
+
+  doCheck = false; # fails 1 out of 17 tests with a segmentation fault
+
+  meta = with stdenv.lib; {
+    description = "C libraries that provide support for the Resource Description Framework (RDF)";
+    homepage = "http://librdf.org/";
+    platforms = platforms.unix;
+    license = licenses.asl20;
+  };
+}