# ChangeLog for net-libs/rb_libtorrent
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/ChangeLog,v 1.86 2010/06/16 17:40:38 hwoarang Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/ChangeLog,v 1.87 2010/07/01 08:32:25 hwoarang Exp $
+
+*rb_libtorrent-0.15.1 (01 Jul 2010)
+
+ 01 Jul 2010; Markos Chandras <hwoarang@gentoo.org>
+ +rb_libtorrent-0.15.1.ebuild,
+ +files/rb_libtorrent-0.15.1-ax_pthread_asneeded.patch:
+ Version bump. Fixes tracker announcement bug wrt bug #325313. Remove
+ obsolete configure options. Proper fix for lpthread linking
*rb_libtorrent-0.15.0 (16 Jun 2010)
AUX rb_libtorrent-0.14.8-as-needed-fix.patch 357 RMD160 392f35d48dfd14cdd1d23edc0fb111ab954996dc SHA1 1fee86047249e29d82a4f2492dafd27d156a66ef SHA256 5d5dadd95ab8ab21b4c537d7abdda9f52926331ac658054de189fb92adbd0583
AUX rb_libtorrent-0.14.8-boost-detect.patch 1969 RMD160 8d2c4b412a72b69978bef1f8c659941473657a79 SHA1 2ec58b038e9c1b896b1eeb42e646afbf4f9af5ea SHA256 63d782c54b18ff1fccc08345c4b9afe112b146fa41021da3d717ee313c862ec0
AUX rb_libtorrent-0.14.9-as-needed-fix.patch 520 RMD160 e75c51c39acd3df37274d465296406d24328a8cf SHA1 2a73ad7edc9b98bd16466dde1112542336b9fd1a SHA256 04d0b833d109523764bbb410cebc59196a047bd72a8c6267a32bdf458a48877c
+AUX rb_libtorrent-0.15.1-ax_pthread_asneeded.patch 4254 RMD160 57ecaa0aba6363cbac669f901529c1b157de9aa5 SHA1 af7171eadbe4e2dbcd9fbf5a0752579b9a6d3890 SHA256 aeba842df39d7149ef3722b6c62956f7c20ed1a81b778252ea7ed0514ab2ece3
DIST libtorrent-rasterbar-0.14.10.tar.gz 1997446 RMD160 8492917f54b482d5a195af00a5c89756c6282a4d SHA1 68303b76ef88d1315725c9d114edd8bc95972c83 SHA256 524a19effb6b7e410a20e385e0d0421bfefc1d3f87cb7f78b77f391f12351957
DIST libtorrent-rasterbar-0.14.9.tar.gz 1989956 RMD160 67f31b8dd98a3ead862a042ae226b23bdeb242a0 SHA1 cd7579100529cb2b0f0b4fcd2bee3d28c35b74c3 SHA256 08ea1eeea7d0fb8ed2ca2628c2e9c79d3bacc9f08011b4d9020a15dcd24e6ea3
DIST libtorrent-rasterbar-0.15.0.tar.gz 2569328 RMD160 fa91bdcaf39e6d0da2c68346c9acffaa62a6a846 SHA1 ebc9ce111f59e538aff17102fcce907fd967cd8b SHA256 e1a79045ad041dd82850d2255037108bb17dcbe9a9a8819169a2624b72667db0
+DIST libtorrent-rasterbar-0.15.1.tar.gz 2464727 RMD160 1408abbf37c77059b9db1693c94da9d31b2c5462 SHA1 0a6e24c4a137d202243fab5ed4cf3c6acecebde9 SHA256 a837cd101177b24989609191cee568bc94b2defab13ac28c97b6c0951c73a952
EBUILD rb_libtorrent-0.14.10.ebuild 2449 RMD160 9f019c36a704444cfc39787ee8fa9ce2c7101f2c SHA1 07545b2c436663c7051cdfc48538523464d68b24 SHA256 16324ef88bb44dec8dfccacfc4255a6d62b73817a8ce7eee010b6f07081f27ed
EBUILD rb_libtorrent-0.14.9-r1.ebuild 2451 RMD160 a9f90e3929c6935c40402e6f9f4a325e8bdad4eb SHA1 9ea40a83bf1c5b9ab3d2928e500a17995a64b8e4 SHA256 24b861675f42cd623145fd606069bfee513ee3487f89f5588465c637ef201996
EBUILD rb_libtorrent-0.15.0.ebuild 2451 RMD160 266bd9aace4bb081180555c96cf0a212545402f8 SHA1 42a663b25929d9732301d63862dbd661e93bd67e SHA256 e0d9fc01ac0627fc828ce3e610fb6bee860f5e3bec4c75cdbb8767c20258250c
-MISC ChangeLog 14805 RMD160 e5bc5cc7c3838a905a4656553847189a9a5d780c SHA1 2a1866cc43ce73cb7f58371f4d955edcd4dc532c SHA256 62e913c14f2adc27d25f2547f2fc7ea0c41e728b1f9387853bb5e1411d2a13f1
+EBUILD rb_libtorrent-0.15.1.ebuild 2174 RMD160 7a6bb8c8fc6f56ea709cc9ea14b1de09a0377e3b SHA1 37b6ac7099275586208332e6bb15e7a8951fb511 SHA256 cb8d841dc8dc93be970002515ff7ec6f6229d6a74a3334aafb066d74d1cbd861
+MISC ChangeLog 15118 RMD160 5eba5ceae50c54152f1d51d35a9c7306fcea9602 SHA1 b6855dd85b1957ac1f53d06698b474f2bc571ea4 SHA256 098d54e2c33e85fb0bf94168b0caa9d0aad5e8b9c018056f4568a0fd33ae5a9a
MISC metadata.xml 180 RMD160 b3fdae264805d1dbe224d18e30b43cc9379b48c0 SHA1 3ece90b24dcd1ecd3e833660e8094afa809d2d93 SHA256 d4bbc70ee1028611e44086fc0b56d097b6945f22c66750538034bca5bf699f5c
--- /dev/null
+http://bugs.gentoo.org/247067
+
+--- m4/ax_pthread.m4
++++ m4/ax_pthread.m4
+@@ -266,6 +266,117 @@
+ else
+ PTHREAD_CC=$CC
+ fi
++
++ # The next part tries to detect GCC inconsistency with -shared on some
++ # architectures and systems. The problem is that in certain
++ # configurations, when -shared is specified, GCC "forgets" to
++ # internally use various flags which are still necessary.
++
++ #
++ # Prepare the flags
++ #
++ save_LDFLAGS="$LDFLAGS"
++ save_CFLAGS="$CFLAGS"
++ save_LIBS="$LIBS"
++ save_CC="$CC"
++
++ # Try with the flags determined by the earlier checks.
++ #
++ # -Wl,-z,defs forces link-time symbol resolution, so that the
++ # linking checks with -shared actually have any value
++ #
++ # FIXME: -fPIC is required for -shared on many architectures,
++ # so we specify it here, but the right way would probably be to
++ # properly detect whether it is actually required.
++ CFLAGS="-shared -fPIC -Wl,-z,defs $CFLAGS $PTHREAD_CFLAGS"
++ LIBS="$PTHREAD_LIBS $LIBS"
++ CC="$PTHREAD_CC"
++
++ # In order not to create several levels of indentation, we test
++ # the value of "$done" until we find the cure or run out of ideas.
++ done="no"
++
++ # First, make sure the CFLAGS we added are actually accepted by our
++ # compiler. If not (and OS X's ld, for instance, does not accept -z),
++ # then we can't do this test.
++ if test x"$done" = xno; then
++ AC_MSG_CHECKING([whether to check for GCC pthread/shared inconsistencies])
++ AC_TRY_LINK(,, , [done=yes])
++
++ if test "x$done" = xyes ; then
++ AC_MSG_RESULT([no])
++ else
++ AC_MSG_RESULT([yes])
++ fi
++ fi
++
++ if test x"$done" = xyes; then
++ done="no"
++ AC_MSG_CHECKING([whether -pthread is sufficient with -shared])
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t th; pthread_join(th, 0);
++ pthread_attr_init(0); pthread_cleanup_push(0, 0);
++ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
++ [done=yes])
++
++ if test "x$done" = xyes; then
++ AC_MSG_RESULT([yes])
++ else
++ AC_MSG_RESULT([no])
++ fi
++ fi
++
++ #
++ # Linux gcc on some architectures such as mips/mipsel forgets
++ # about -lpthread
++ #
++ if test x"$done" = xno; then
++ AC_MSG_CHECKING([whether -lpthread fixes that])
++ LIBS="-lpthread $PTHREAD_LIBS $save_LIBS"
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t th; pthread_join(th, 0);
++ pthread_attr_init(0); pthread_cleanup_push(0, 0);
++ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
++ [done=yes])
++
++ if test "x$done" = xyes; then
++ AC_MSG_RESULT([yes])
++ PTHREAD_LIBS="-lpthread $PTHREAD_LIBS"
++ else
++ AC_MSG_RESULT([no])
++ fi
++ fi
++ #
++ # FreeBSD 4.10 gcc forgets to use -lc_r instead of -lc
++ #
++ if test x"$done" = xno; then
++ AC_MSG_CHECKING([whether -lc_r fixes that])
++ LIBS="-lc_r $PTHREAD_LIBS $save_LIBS"
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t th; pthread_join(th, 0);
++ pthread_attr_init(0); pthread_cleanup_push(0, 0);
++ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
++ [done=yes])
++
++ if test "x$done" = xyes; then
++ AC_MSG_RESULT([yes])
++ PTHREAD_LIBS="-lc_r $PTHREAD_LIBS"
++ else
++ AC_MSG_RESULT([no])
++ fi
++ fi
++ if test x"$done" = xno; then
++ # OK, we have run out of ideas
++ AC_MSG_WARN([Impossible to determine how to use pthreads with shared libraries])
++
++ # so it's not safe to assume that we may use pthreads
++ acx_pthread_ok=no
++ fi
++
++ CFLAGS="$save_CFLAGS"
++ LIBS="$save_LIBS"
++ CC="$save_CC"
++
+ else
+ PTHREAD_CC="$CC"
+ fi
--- /dev/null
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-libs/rb_libtorrent/rb_libtorrent-0.15.1.ebuild,v 1.1 2010/07/01 08:32:25 hwoarang Exp $
+
+EAPI="2"
+WANT_AUTOMAKE="1.11.1"
+inherit autotools eutils versionator
+
+MY_P=${P/rb_/}
+MY_P=${MY_P/torrent/torrent-rasterbar}
+S=${WORKDIR}/${MY_P}
+
+DESCRIPTION="C++ BitTorrent implementation focusing on efficiency and scalability"
+HOMEPAGE="http://www.rasterbar.com/products/libtorrent/"
+SRC_URI="http://libtorrent.googlecode.com/files/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~x86-fbsd"
+IUSE="debug doc examples python"
+RESTRICT="test"
+
+DEPEND="|| ( >=dev-libs/boost-1.35
+ ( ~dev-libs/boost-1.34.1 dev-cpp/asio ) )
+ python? ( >=dev-libs/boost-1.35.0-r5[python] dev-lang/python:2.6[threads] )
+ =sys-devel/libtool-2.2*
+ sys-libs/zlib
+ examples? ( !net-p2p/mldonkey )" #292998
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-ax_pthread_asneeded.patch
+ eautoreconf
+}
+
+src_configure() {
+ # use multi-threading versions of boost libs
+ local BOOST_LIBS="--with-boost-system=boost_system-mt \
+ --with-boost-filesystem=boost_filesystem-mt \
+ --with-boost-thread=boost_thread-mt \
+ --with-boost-python=boost_python-mt"
+
+ # detect boost version and location, bug 295474
+ BOOST_PKG="$(best_version ">=dev-libs/boost-1.34.1")"
+ BOOST_VER="$(get_version_component_range 1-2 "${BOOST_PKG/*boost-/}")"
+ BOOST_VER="$(replace_all_version_separators _ "${BOOST_VER}")"
+ BOOST_INC="/usr/include/boost-${BOOST_VER}"
+ BOOST_LIB="/usr/$(get_libdir)/boost-${BOOST_VER}"
+
+ local LOGGING
+ use debug && LOGGING="--with-logging=verbose"
+
+ econf $(use_enable debug) \
+ $(use_enable test tests) \
+ $(use_enable examples) \
+ $(use_enable python python-binding) \
+ --with-zlib=system \
+ ${LOGGING} \
+ --with-boost=${BOOST_INC} \
+ --with-boost-libdir=${BOOST_LIB} \
+ ${BOOST_LIBS}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die 'emake install failed'
+ dodoc ChangeLog AUTHORS NEWS README || die 'dodoc failed'
+ if use doc ; then
+ dohtml docs/* || die "Could not install HTML documentation"
+ fi
+}