diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 32 | ||||
-rw-r--r-- | fixing-memleak-with-getifaddrs.patch | 12 |
3 files changed, 33 insertions, 15 deletions
@@ -1,7 +1,7 @@ pkgbase = libtorrent-ipv6 pkgdesc = BitTorrent library with a focus on high performance and good code, with ipv6 support pkgver = 0.13.6 - pkgrel = 1 + pkgrel = 2 url = http://rakshasa.github.io/rtorrent/ arch = i686 arch = x86_64 @@ -11,8 +11,10 @@ pkgbase = libtorrent-ipv6 conflicts = libtorrent source = libtorrent-0.13.6.tar.gz::https://github.com/rakshasa/libtorrent/archive/0.13.6.tar.gz source = libtorrent-ipv6.patch + source = fixing-memleak-with-getifaddrs.patch sha1sums = 9ca6ca9698f81c758fe934b52374f23588a7cc78 sha1sums = 3a0925101ada86a4b0cff03ce1c704fd8dfd80a3 + sha1sums = 933a94ca664fd98b05d4a326e683dbc0a7e250bd pkgname = libtorrent-ipv6 @@ -9,7 +9,7 @@ _pkgname=libtorrent pkgname=libtorrent-ipv6 pkgver=0.13.6 -pkgrel=1 +pkgrel=2 pkgdesc='BitTorrent library with a focus on high performance and good code, with ipv6 support' url='http://rakshasa.github.io/rtorrent/' arch=('i686' 'x86_64') @@ -18,30 +18,34 @@ depends=('openssl') conflicts=("${_pkgname}") provides=("${_pkgname}") source=("$_pkgname-$pkgver.tar.gz::https://github.com/rakshasa/${_pkgname}/archive/${pkgver}.tar.gz" - "${_pkgname}-ipv6.patch") + "${_pkgname}-ipv6.patch" + "fixing-memleak-with-getifaddrs.patch") sha1sums=('9ca6ca9698f81c758fe934b52374f23588a7cc78' - '3a0925101ada86a4b0cff03ce1c704fd8dfd80a3') + '3a0925101ada86a4b0cff03ce1c704fd8dfd80a3' + '933a94ca664fd98b05d4a326e683dbc0a7e250bd') prepare() { - cd "${srcdir}/${_pkgname}-${pkgver}" + cd "${srcdir}/${_pkgname}-${pkgver}" patch -uNp1 -i "${srcdir}/${_pkgname}-ipv6.patch" - sed '/AM_PATH_CPPUNIT/d' -i configure.ac + # https://github.com/inste/libtorrent/commit/bdf086234cc6ea07364c6ef20e08c5fc504b70db + patch -uNp1 -i "${srcdir}/fixing-memleak-with-getifaddrs.patch" + sed '/AM_PATH_CPPUNIT/d' -i configure.ac } build() { - cd "${srcdir}/${_pkgname}-${pkgver}" - ./autogen.sh + cd "${srcdir}/${_pkgname}-${pkgver}" + ./autogen.sh - export CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing" - ./configure \ - --prefix=/usr \ - --disable-debug \ + export CXXFLAGS="${CXXFLAGS} -std=c++11 -fno-strict-aliasing" + ./configure \ + --prefix=/usr \ + --disable-debug \ --enable-ipv6 - make + make } package() { - cd "${srcdir}/${_pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + cd "${srcdir}/${_pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/fixing-memleak-with-getifaddrs.patch b/fixing-memleak-with-getifaddrs.patch new file mode 100644 index 000000000000..539c4ad2f6cb --- /dev/null +++ b/fixing-memleak-with-getifaddrs.patch @@ -0,0 +1,12 @@ +diff --git a/src/net/local_addr.cc b/src/net/local_addr.cc +index fae3f85..80aa550 100644 +--- a/src/net/local_addr.cc ++++ b/src/net/local_addr.cc +@@ -132,6 +132,7 @@ bool get_local_address(sa_family_t family, rak::socket_address *address) { + if (getifaddrs(&ifaddrs)) { + return false; + } ++ freeifaddrs(ifaddrs); + + rak::socket_address best_addr; + switch (family) { |