linux_xanmod: 5.11.14 -> 5.11.15
[NixPkgs.git] / pkgs / development / libraries / ndn-cxx / default.nix
blob3fb3fc305a3358a2551b9f0936f5ba9053c2c891
1 { lib, stdenv
2 , fetchFromGitHub
3 , doxygen
4 , pkg-config
5 , python3
6 , python3Packages
7 , wafHook
8 , boost
9 , openssl
10 , sqlite
13 stdenv.mkDerivation rec {
14   pname = "ndn-cxx";
15   version = "0.7.1";
17   src = fetchFromGitHub {
18     owner = "named-data";
19     repo = "ndn-cxx";
20     rev = "${pname}-${version}";
21     sha256 = "1lcaqc79n3d9sip7knddblba17sz18b0w7nlxmj3fz3lb3z9qd51";
22   };
24   nativeBuildInputs = [ doxygen pkg-config python3 python3Packages.sphinx wafHook ];
26   buildInputs = [ boost openssl sqlite ];
28   wafConfigureFlags = [
29     "--with-openssl=${openssl.dev}"
30     "--boost-includes=${boost.dev}/include"
31     "--boost-libs=${boost.out}/lib"
32   ];
34   meta = with lib; {
35     homepage = "https://named-data.net/";
36     description = "A Named Data Neworking (NDN) or Content Centric Networking (CCN) abstraction";
37     longDescription = ''
38       ndn-cxx is a C++ library, implementing Named Data Networking (NDN)
39       primitives that can be used to implement various NDN applications.
40       NDN operates by addressing and delivering Content Objects directly
41       by Name instead of merely addressing network end-points. In addition,
42       the NDN security model explicitly secures individual Content Objects
43       rather than securing the connection or “pipe”. Named and secured
44       content resides in distributed caches automatically populated on
45       demand or selectively pre-populated. When requested by name, NDN
46       delivers named content to the user from the nearest cache, thereby
47       traversing fewer network hops, eliminating redundant requests,
48       and consuming less resources overall.
49     '';
50     license = licenses.lgpl3;
51     platforms = platforms.unix;
52     maintainers = with maintainers; [ sjmackenzie ];
53   };