Репозиторий Sisyphus
Последнее обновление: 23 марта 2019 | Пакетов: 17647 | Посещений: 13263612
en ru br
Репозитории ALT

Группа :: Система/Библиотеки
Пакет: libtorrent-rasterbar

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define _unpackaged_files_terminate_build 1

%def_disable debug
%def_disable static
%if_disabled debug
%remove_optflags -O2
%add_optflags -O3
%endif
%define upname libtorrent-rasterbar
%define soname 9

Name: libtorrent-rasterbar
Epoch: 3
Version: 1.1.12
Release: alt1

Summary: libTorrent is a BitTorrent library written in C++ for *nix
Group: System/Libraries
License: GPL
Url: http://www.rasterbar.com/products/libtorrent

# https://github.com/arvidn/libtorrent.git

Source: %name-%version.tar

BuildRequires: libssl-devel
BuildRequires: gcc-c++ zlib-devel
BuildRequires: glibc-devel glibc-core
BuildRequires: boost-devel boost-asio-devel boost-filesystem
BuildRequires: boost-filesystem-devel boost-program_options-devel
BuildRequires: python-devel boost-python-devel
BuildRequires: libGeoIP-devel

%description
libTorrent is designed to avoid redundant copying and storing of data
that other clients and libraries suffer from. libTorrent features:

* The client has full control over the polling of sockets.
* Sigc++ signals makes it easy for the client to react to events.
* Fast resume which checks the file modification time.
* Direct reading and writing from network to mmap'ed files.
* File hash check uses the same thread; client can control the rate;
 non-blocking and preload to memory with the mincore and madvise.
* File handler: fine-grained use of file read/write permissions, allows
 seeding of read-only files; allows torrents with unlimited number of
 files; opens closed files when mapping chunks to memory, with graceful
 error handling; support for files larger than 2 GB; different download
 priorities for files in the torrent.
* Multi-tracker support.
* No dependency on any specific HTTP library, the client implements a
 wrapper class.
* Dynamic request pipe size.
* Upload and download throttle.
* And much more...

%package -n %name%soname
Summary: libTorrent is a BitTorrent library written in C++ for *nix
Group: System/Libraries
# TODO: remove this obsolete on next soname change
Obsoletes: %name <= 3:1.1.9-alt1

%description -n %name%soname
libTorrent is designed to avoid redundant copying and storing of data
that other clients and libraries suffer from. libTorrent features:

* The client has full control over the polling of sockets.
* Sigc++ signals makes it easy for the client to react to events.
* Fast resume which checks the file modification time.
* Direct reading and writing from network to mmap'ed files.
* File hash check uses the same thread; client can control the rate;
 non-blocking and preload to memory with the mincore and madvise.
* File handler: fine-grained use of file read/write permissions, allows
 seeding of read-only files; allows torrents with unlimited number of
 files; opens closed files when mapping chunks to memory, with graceful
 error handling; support for files larger than 2 GB; different download
 priorities for files in the torrent.
* Multi-tracker support.
* No dependency on any specific HTTP library, the client implements a
 wrapper class.
* Dynamic request pipe size.
* Upload and download throttle.
* And much more...

%package -n %upname-devel
Summary: Development libraries and header files for libTorrent
Group: Development/C++
Requires: %name%soname = %EVR
Provides: libtorrent-rasterbar8-devel = %EVR
Conflicts: libtorrent-rasterbar8-devel < %EVR
Obsoletes: libtorrent-rasterbar8-devel < %EVR
Conflicts: libtorrent-rasterbar7-devel < %EVR
Obsoletes: libtorrent-rasterbar7-devel < %EVR
Conflicts: libtorrent-rasterbar-devel < %EVR
Obsoletes: libtorrent-rasterbar-devel < %EVR
Conflicts: libtorrent-devel

%description -n %upname-devel
The libtorrent-devel package contains libraries and header files needed
to develop applications using libTorrent.

%if_enabled static
%package -n %upname-devel-static
Summary: Development static libraries for libTorrent
Group: Development/C++
Requires: %name%soname = %EVR
Provides: libtorrent-rasterbar7-devel-static = %EVR
Conflicts: libtorrent-rasterbar7-devel-static < %EVR

%description -n %upname-devel-static
The libtorrent-devel package contains static libraries needed
to develop applications using libTorrent.
%endif

%package -n python-module-%upname
Summary: libTorrent python bindings
Group: Development/Python
Requires: %name%soname = %EVR
Provides: python-module-libtorrent-rasterbar7 = %EVR
Conflicts: python-module-libtorrent-rasterbar7 < %EVR

%description -n python-module-%upname
The python-module-libtorrent-rasterbar contains
python bindings to libTorrent.

%prep
%setup

mkdir -p build-aux
touch build-aux/config.rpath

mv -f COPYING COPYING.orig
ln -s $(relative %_licensedir/GPL-2 %_docdir/%name/COPYING) COPYING

%build
export LDFLAGS="$LDFLAGS -L/%_lib -lrt"
%autoreconf
%add_optflags -fno-strict-aliasing -DTORRENT_USE_WSTRING=1 -DTORRENT_EXPORT_EXTRA=1
%configure %{subst_enable static} %{subst_enable debug} --with-boost-libdir=%_libdir \
--enable-python-binding
%make_build V=1

%install
%makeinstall_std

rm -f %buildroot%_libdir/*.la
%if_disabled static
rm -f %buildroot%_libdir/*.a
%endif

%files -n %name%soname
%doc AUTHORS ChangeLog NEWS README.rst
%doc --no-dereference COPYING
%_libdir/*.so.*

%files -n %upname-devel
%_includedir/*
%_libdir/*.so
%_libdir/pkgconfig/*

%if_enabled static
%files -n %upname-devel-static
%_libdir/*.a
%endif

%files -n python-module-%upname
%python_sitelibdir/libtorrent.so
%python_sitelibdir/*.egg-info

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin