aboutsummaryrefslogtreecommitdiff
path: root/pkgs/development/libraries/ndn-cxx
diff options
context:
space:
mode:
authorStewart Mackenzie <setori88@gmail.com>2014-11-11 17:14:30 +0800
committerStewart Mackenzie <setori88@gmail.com>2014-11-11 18:22:18 +0800
commit23d0af8f347c5054bc59d45fb96794ef400ee817 (patch)
treefb0c2b3e3e765b5279ad162580a9f194767475f1 /pkgs/development/libraries/ndn-cxx
parentfb3e83d091532fc63e55a063515e66bfaa014e0d (diff)
new package: ndn-cxx
Diffstat (limited to 'pkgs/development/libraries/ndn-cxx')
-rw-r--r--pkgs/development/libraries/ndn-cxx/default.nix48
1 files changed, 48 insertions, 0 deletions
diff --git a/pkgs/development/libraries/ndn-cxx/default.nix b/pkgs/development/libraries/ndn-cxx/default.nix
new file mode 100644
index 000000000000..d95443da359d
--- /dev/null
+++ b/pkgs/development/libraries/ndn-cxx/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchgit, openssl, doxygen, boost, sqlite, cryptopp, pkgconfig, python, pythonPackages }:
+let
+ version = "4c32e7";
+in
+stdenv.mkDerivation {
+ name = "ndn-cxx-0.1-${version}";
+ src = fetchgit {
+ url = "https://github.com/named-data/ndn-cxx.git";
+ rev = "4c32e748863d5165cc0e3d6b54a8383f4836cdf1";
+ sha256 = "18s18inf14wmkfh1z6w087w7l3bqszd0nkhr09j73hqpz90b06hz";
+ };
+ buildInputs = [ openssl doxygen boost sqlite cryptopp pkgconfig python pythonPackages.sphinx];
+ preConfigure = ''
+ patchShebangs waf
+ ./waf configure \
+ --with-cryptopp=${cryptopp} \
+ --boost-includes=${boost.dev}/include \
+ --boost-libs=${boost.lib}/lib \
+ --with-examples \
+ --prefix=$out
+ '';
+ buildPhase = ''
+ ./waf
+ '';
+ installPhase = ''
+ ./waf install
+ '';
+ meta = with stdenv.lib; {
+ homepage = "http://named-data.net/";
+ description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
+ longDescription = ''
+ ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
+ primitives that can be used to implement various NDN applications.
+ NDN operates by addressing and delivering Content Objects directly
+ by Name instead of merely addressing network end-points. In addition,
+ the NDN security model explicitly secures individual Content Objects
+ rather than securing the connection or “pipe”. Named and secured
+ content resides in distributed caches automatically populated on
+ demand or selectively pre-populated. When requested by name, NDN
+ delivers named content to the user from the nearest cache, thereby
+ traversing fewer network hops, eliminating redundant requests,
+ and consuming less resources overall.
+ '';
+ license = licenses.lgpl3;
+ platforms = stdenv.lib.platforms.unix;
+ maintainers = [ maintainers.sjmackenzie ];
+ };
+}