diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libtorrent-rasterbar')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix | 54 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/default.nix | 58 |
2 files changed, 112 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix b/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix new file mode 100644 index 000000000000..adea75b02e94 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/1.2.nix @@ -0,0 +1,54 @@ +{ lib, stdenv, fetchFromGitHub, pkg-config, automake, autoconf +, zlib, boost, openssl, libtool, python, libiconv, ncurses, SystemConfiguration +}: + +let + version = "1.2.11"; + + # Make sure we override python, so the correct version is chosen + # for the bindings, if overridden + boostPython = boost.override { enablePython = true; inherit python; }; + +in stdenv.mkDerivation { + pname = "libtorrent-rasterbar"; + inherit version; + + src = fetchFromGitHub { + owner = "arvidn"; + repo = "libtorrent"; + rev = "v${version}"; + sha256 = "05qm8mcyxsnb6zb8nckln1gkk8ncwzfhsz7d7p3fhx6gdsc8j71b"; + }; + + enableParallelBuilding = true; + + nativeBuildInputs = [ automake autoconf libtool pkg-config ]; + + buildInputs = [ boostPython openssl zlib python libiconv ncurses ] + ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ]; + + preConfigure = "./autotool.sh"; + + postInstall = '' + moveToOutput "include" "$dev" + moveToOutput "lib/${python.libPrefix}" "$python" + ''; + + outputs = [ "out" "dev" "python" ]; + + configureFlags = [ + "--enable-python-binding" + "--with-libiconv=yes" + "--with-boost=${boostPython.dev}" + "--with-boost-libdir=${boostPython.out}/lib" + ]; + + meta = with lib; { + homepage = "https://libtorrent.org/"; + description = "A C++ BitTorrent implementation focusing on efficiency and scalability"; + license = licenses.bsd3; + maintainers = [ ]; + broken = stdenv.isDarwin; + platforms = platforms.unix; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/default.nix new file mode 100644 index 000000000000..4ec70464e1ab --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/libtorrent-rasterbar/default.nix @@ -0,0 +1,58 @@ +{ lib, stdenv, fetchFromGitHub, cmake +, zlib, boost, openssl, python, ncurses, SystemConfiguration +}: + +let + version = "2.0.9"; + + # Make sure we override python, so the correct version is chosen + boostPython = boost.override { enablePython = true; inherit python; }; + +in stdenv.mkDerivation { + pname = "libtorrent-rasterbar"; + inherit version; + + src = fetchFromGitHub { + owner = "arvidn"; + repo = "libtorrent"; + rev = "v${version}"; + sha256 = "sha256-kUpeofullQ70uK/YZUD0ikHCquFTGwev7MxBYj0oHeU="; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ cmake ]; + + buildInputs = [ boostPython openssl zlib python ncurses ] + ++ lib.optionals stdenv.isDarwin [ SystemConfiguration ]; + + # https://github.com/arvidn/libtorrent/issues/6865 + postPatch = '' + substituteInPlace cmake/Modules/GeneratePkgConfig.cmake \ + --replace @CMAKE_INSTALL_PREFIX@/'$<'1: '$<'1: + substituteInPlace cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in \ + --replace 'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")' \ + 'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@") + set(_INSTALL_FULL_LIBDIR "@CMAKE_INSTALL_FULL_LIBDIR@")' + substituteInPlace cmake/Modules/GeneratePkgConfig/pkg-config.cmake.in \ + --replace '$'{prefix}/@_INSTALL_LIBDIR@ @_INSTALL_FULL_LIBDIR@ + ''; + + postInstall = '' + moveToOutput "include" "$dev" + moveToOutput "lib/${python.libPrefix}" "$python" + ''; + + outputs = [ "out" "dev" "python" ]; + + cmakeFlags = [ + "-Dpython-bindings=on" + ]; + + meta = with lib; { + homepage = "https://libtorrent.org/"; + description = "A C++ BitTorrent implementation focusing on efficiency and scalability"; + license = licenses.bsd3; + maintainers = [ ]; + platforms = platforms.unix; + }; +} |