summary refs log tree commit diff
path: root/pkgs/development/libraries/accelio
diff options
context:
space:
mode:
authorWilliam A. Kennington III <william@wkennington.com>2015-04-21 10:31:11 -0700
committerWilliam A. Kennington III <william@wkennington.com>2015-04-21 20:59:16 -0700
commit2ac2d94286e8a4efe4ee7ac3fbae52581b567663 (patch)
tree23114e2c38ef813bfc4baf56a6542094a88d08d9 /pkgs/development/libraries/accelio
parent7fb042d172465b4aa5885ac1b2caeb90bf88fc82 (diff)
downloadnixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar.gz
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar.bz2
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar.lz
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar.xz
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.tar.zst
nixlib-2ac2d94286e8a4efe4ee7ac3fbae52581b567663.zip
accelio: Add derivation
Diffstat (limited to 'pkgs/development/libraries/accelio')
-rw-r--r--pkgs/development/libraries/accelio/cflags.patch15
-rw-r--r--pkgs/development/libraries/accelio/default.nix51
2 files changed, 66 insertions, 0 deletions
diff --git a/pkgs/development/libraries/accelio/cflags.patch b/pkgs/development/libraries/accelio/cflags.patch
new file mode 100644
index 000000000000..f13eb3783af0
--- /dev/null
+++ b/pkgs/development/libraries/accelio/cflags.patch
@@ -0,0 +1,15 @@
+diff --git a/configure.ac b/configure.ac
+index 6ce6b6b..180bad2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -115,9 +115,7 @@ if test "$enable_debug" = "yes"; then
+ 		   -fno-omit-frame-pointer -O0 -D_REENTRANT -D_GNU_SOURCE"
+ else
+ 	AC_DEFINE([NDEBUG],[],[No-debug Mode])
+-	AM_CFLAGS="$AM_CFLAGS -g -ggdb -Wall -Werror -Wpadded -Wdeclaration-after-statement \
+-		  -Wsign-compare -Wc++-compat \
+-		  -O3 -D_REENTRANT -D_GNU_SOURCE"
++	AM_CFLAGS="$AM_CFLAGS -O3 -D_REENTRANT -D_GNU_SOURCE"
+ fi
+ 
+ AC_CACHE_CHECK(whether ld accepts --version-script, ac_cv_version_script,
diff --git a/pkgs/development/libraries/accelio/default.nix b/pkgs/development/libraries/accelio/default.nix
new file mode 100644
index 000000000000..b56f2d81389d
--- /dev/null
+++ b/pkgs/development/libraries/accelio/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, libibverbs, librdmacm, libevent
+
+# Linux only deps
+, numactl, kernel ? null
+}:
+
+stdenv.mkDerivation rec {
+  name = "accelio-${version}${stdenv.lib.optionalString (kernel != null) "-kernel"}";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "accelio";
+    repo = "accelio";
+    rev = "v${version}";
+    sha256 = "05yqzjs12nymhs0pq1ypnfszgbmvfprjqd3gr2iz3vqbkpzi9n2c";
+  };
+
+  patches = [ ./cflags.patch ];
+
+  postPatch = ''
+    # Don't build broken examples
+    sed -i '/AC_CONFIG_SUBDIRS(\[\(examples\|tests\)\/kernel/d' configure.ac
+
+    # Allow the installation of xio kernel headers
+    sed -i 's,/opt/xio,''${out},g' src/kernel/xio/Makefile.in
+  '';
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ libevent ];
+  propagatedBuildInputs = [ libibverbs librdmacm ]
+    ++ stdenv.lib.optional stdenv.isLinux numactl;
+
+  configureFlags = [
+    "--enable-rdma"
+    "--disable-raio-build"
+  ] ++ stdenv.lib.optionals (kernel != null) [
+    "--enable-kernel-module"
+    "--with-kernel=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
+    "--with-kernel-build=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
+  ];
+
+  INSTALL_MOD_PATH = "\${out}";
+
+  meta = with stdenv.lib; {
+    homepage = http://www.accelio.org/;
+    description = "a high-performance asynchronous reliable messaging and RPC library optimized for hardware acceleration";
+    license = licenses.bsd3;
+    platforms = with platforms; linux ++ freebsd;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}