Update of /cvsroot/fink/dists/10.4/unstable/main/finkinfo/net In directory vz-cvs-3.sog:/tmp/cvs-serv31853/net
Modified Files: rtorrent.info Added Files: libtorrent15.info libtorrent15.patch rtorrent.patch Log Message: friendly takeover, upstream update rtorrent/libtorrent15, also re-ported to darwin8 --- NEW FILE: libtorrent15.patch --- --- libtorrent-0.12.9-orig/rak/allocators.h 2011-06-21 22:37:15.000000000 -0700 +++ libtorrent-0.12.9/rak/allocators.h 2011-06-21 22:42:44.000000000 -0700 @@ -77,8 +77,15 @@ static pointer alloc_size(size_type size) { pointer ptr = NULL; +#ifdef HAVE_POSIX_MEMALIGN int __UNUSED result = posix_memalign((void**)&ptr, LT_SMP_CACHE_BYTES, size); +#elif defined(__APPLE__) + // apple-darwin's malloc is already Altivec-aligned (16B) + ptr = static_cast<pointer>(malloc(size)); +#else +#error "Missing equivalent of posix_memalign()." +#endif return ptr; } --- libtorrent-0.12.9-orig/src/torrent/thread_base.h 2011-06-21 23:12:25.000000000 -0700 +++ libtorrent-0.12.9/src/torrent/thread_base.h 2011-06-21 23:33:19.000000000 -0700 @@ -37,6 +37,19 @@ #ifndef LIBTORRENT_THREAD_BASE_H #define LIBTORRENT_THREAD_BASE_H +#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 2)) +#if defined(__APPLE__) +#define USE_DARWIN_ATOMICS +#endif +#endif + +#ifdef USE_DARWIN_ATOMICS +#include <libkern/OSAtomic.h> +#define __sync_add_and_fetch(x, y) OSAtomicIncrement32Barrier(x) +#define __sync_sub_and_fetch(x, y) OSAtomicDecrement32Barrier(x) +#define __sync_lock_test_and_set(x, y) OSAtomicTestAndSetBarrier(y, x) +#endif + #include <pthread.h> #include <sys/types.h> #include <torrent/common.h> --- libtorrent-0.12.9-orig/src/net/socket_set.h 2011-06-26 21:28:11.000000000 -0700 +++ libtorrent-0.12.9/src/net/socket_set.h 2011-06-26 21:28:56.000000000 -0700 @@ -53,12 +53,12 @@ // Propably should rename to EventSet... -class SocketSet : private std::vector<Event*, rak::cacheline_allocator<> > { +class SocketSet : private std::vector<Event*, rak::cacheline_allocator<Event*> > { public: typedef uint32_t size_type; - typedef std::vector<Event*, rak::cacheline_allocator<> > base_type; - typedef std::vector<size_type, rak::cacheline_allocator<> > Table; + typedef std::vector<Event*, rak::cacheline_allocator<Event*> > base_type; + typedef std::vector<size_type, rak::cacheline_allocator<size_type> > Table; static const size_type npos = static_cast<size_type>(-1); --- libtorrent-0.12.9-orig/src/torrent/utils/extents.h 2011-07-16 17:26:37.000000000 -0700 +++ libtorrent-0.12.9/src/torrent/utils/extents.h 2011-07-17 00:28:48.000000000 -0700 @@ -39,6 +39,19 @@ #include <tr1/array> +#if (__GNUC__ == 4 && __GNUC_MINOR__ < 1 && __GNUC_PATCHLEVEL__ < 2) +// apple-gcc-4.0.1 missing definition of std::tr1::array::assign +namespace std { +namespace tr1 { +template<typename _Tp, size_t _Nm> +void +array<_Tp,_Nm>::assign(const value_type& v) { + std::fill_n(this->begin(), this->size(), v); +} +} // end namespace tr1 +} // end namespace std +#endif + namespace torrent { template <typename Key, typename Tp, unsigned int TableSize, unsigned int TableBits> Index: rtorrent.info =================================================================== RCS file: /cvsroot/fink/dists/10.4/unstable/main/finkinfo/net/rtorrent.info,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- rtorrent.info 1 May 2011 06:44:23 -0000 1.6 +++ rtorrent.info 19 Jul 2011 23:58:04 -0000 1.7 @@ -1,38 +1,42 @@ Package: rtorrent -Version: 0.8.6 -Revision: 2 +Version: 0.8.9 +Revision: 1 License: GPL HomePage: http://libtorrent.rakshasa.no Description: Ncurses ui bittorrent client -Maintainer: Michal Suchanek <hramr...@centrum.cz> +Maintainer: David Fang <fang...@users.sourceforge.net> Depends: << libssh2.1-shlibs, libsigc++2-shlibs, libcurl4-shlibs (>= 7.12.0-1), libncursesw5-shlibs, - libtorrent12-shlibs (>= 0.12.6-1) + libtorrent15-shlibs (>= 0.12.9-1) << BuildDepends: << + fink (>= 0.24.12), libssh2.1, libsigc++2, libcurl4 (>= 7.12.0-1), pkgconfig (>= 0.9-1), libncursesw5, - libtorrent12 (>= 0.12.6-1), - system-openssl-dev + libtorrent15 (>= 0.12.9-1) << +BuildConflicts: openssl-dev, openssl097-dev, openssl098-dev Source: http://libtorrent.rakshasa.no/downloads/%n-%v.tar.gz -Source-MD5: b804c45c01c40312926bcea6b55bb084 +Source-MD5: 629247636cb1210663b52dadbd040a6c # Source-SHA1: ffce3959ba91738bb444d689db3db1e2375b14ce +PatchFile: %n.patch +PatchFile-MD5: 4de151654f2bb16a9be2bb027b4a93ec + GCC: 4.0 SetCPPFLAGS: -I%p/lib/system-openssl/include SetLDFLAGS: -L%p/lib/system-openssl/lib -ConfigureParams: --disable-dependency-tracking --mandir='${prefix}'/share/man --enable-ipv6 +ConfigureParams: --mandir='${prefix}'/share/man --enable-ipv6 CompileScript: @@ -70,4 +74,10 @@ DescPackaging: << pkgconfig does not find the system openssl versioned deps added based on configure[.ac] checks for requirements + +Former maintainer: Michal Suchanek <hramr...@centrum.cz> +<< +DescPort: << +Upstream now requires g++-4.2+, but fangism ported to g++-4.0.1 +for darwin8 support. << --- NEW FILE: libtorrent15.info --- Package: libtorrent15 Version: 0.12.9 Revision: 1 License: GPL HomePage: http://libtorrent.rakshasa.no Description: Bittorrent library Maintainer: David Fang <fang...@users.sourceforge.net> Depends: %n-shlibs (=%v-%r) BuildDepends: fink (>= 0.24.12), libsigc++2, system-openssl-dev, pkgconfig (>= 0.9-1) BuildConflicts: openssl-dev, openssl097-dev, openssl098-dev Conflicts: libtorrent, libtorrent11, libtorrent12 Replaces: libtorrent, libtorrent11, libtorrent12 Source: http://libtorrent.rakshasa.no/downloads/libtorrent-%v.tar.gz Source-MD5: b128bbd324f03eb42ef5060080f87548 # Source-SHA1: bf7082f98bd6281493cba94a456697fb88c2c21b PatchFile: %n.patch PatchFile-MD5: 8465b02c2abf57b7b31cd30d74e25279 #PKG_CONFIG_PATH: %p/lib/system-openssl/lib/pkgconfig BuildDependsOnly: true GCC: 4.0 SetCPPFLAGS: -I%p/lib/system-openssl/include SetLDFLAGS: -L%p/lib/system-openssl/lib ConfigureParams: --enable-ipv6 --with-kqueue CompileScript:<< PKG_CONFIG_PATH=%p/lib/system-openssl/lib/pkgconfig ./configure %c make << InstallScript: DocFiles: << AUTHORS COPYING ChangeLog NEWS README << SplitOff: << Package: %N-shlibs Depends: libsigc++2-shlibs Files: lib/libtorrent.14.dylib Shlibs: %p/lib/libtorrent.14.dylib 15.0.0 %n (>= 0.12.9-1) DocFiles: << AUTHORS COPYING ChangeLog NEWS README << << DescPackaging: << pkgconfig does not find the system openssl Library version info and name change inconsistently between major versions. Former maintainer: Michal Suchanek <hramr...@centrum.cz> << DescPort: << fangism: Some C++ related patching was necessary to get the source to compile against g++-4.0, even though upstream requires g++-4.2 or higher. Also, some POSIX APIs that were expected for atomic operations were mapped to darwin8 equivalents. << --- NEW FILE: rtorrent.patch --- --- rtorrent-0.8.9-orig/rak/allocators.h 2011-06-21 22:37:15.000000000 -0700 +++ rtorrent-0.8.9/rak/allocators.h 2011-06-21 22:42:44.000000000 -0700 @@ -77,8 +77,15 @@ static pointer alloc_size(size_type size) { pointer ptr = NULL; +#ifdef HAVE_POSIX_MEMALIGN int __UNUSED result = posix_memalign((void**)&ptr, LT_SMP_CACHE_BYTES, size); +#elif defined(__APPLE__) + // apple-darwin's malloc is already Altivec-aligned (16B) + ptr = static_cast<pointer>(malloc(size)); +#else +#error "Missing equivalent of posix_memalign()." +#endif return ptr; } --- rtorrent-0.8.9-orig/src/thread_base.h 2011-06-21 23:12:25.000000000 -0700 +++ rtorrent-0.8.9/src/thread_base.h 2011-06-21 23:33:19.000000000 -0700 @@ -37,6 +37,20 @@ #ifndef LIBTORRENT_THREAD_BASE_H #define LIBTORRENT_THREAD_BASE_H +#if (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 2)) +#if defined(__APPLE__) +#define USE_DARWIN_ATOMICS +#endif +#endif + +#ifdef USE_DARWIN_ATOMICS +#include <libkern/OSAtomic.h> +#define __sync_add_and_fetch(x, y) OSAtomicIncrement32Barrier(x) +#define __sync_sub_and_fetch(x, y) OSAtomicDecrement32Barrier(x) +#define __sync_lock_test_and_set(x, y) OSAtomicTestAndSetBarrier(y, x) +#define __sync_bool_compare_and_swap(x, y, z) OSAtomicCompareAndSwap32Barrier(y, z, x) +#endif + #include <pthread.h> #include <sys/types.h> #include <torrent/common.h> --- rtorrent-0.8.9-orig/src/control.h 2011-06-27 11:08:48.000000000 -0700 +++ rtorrent-0.8.9/src/control.h 2011-06-27 11:10:06.000000000 -0700 @@ -43,6 +43,9 @@ #include <rak/priority_queue_default.h> #include <torrent/torrent.h> +#include <libkern/OSAtomic.h> +#define __sync_synchronize OSMemoryBarrier + namespace ui { class Root; } --- rtorrent-0.8.9-orig/src/rpc/command_impl.h 2011-06-27 12:20:31.000000000 -0700 +++ rtorrent-0.8.9/src/rpc/command_impl.h 2011-06-27 12:23:22.000000000 -0700 @@ -92,7 +92,8 @@ inline torrent::Object* command_base::push_stack(const torrent::Object::list_type& args, stack_type* stack) { - return push_stack(args.data(), args.data() + args.size(), stack); + // vector<>::data() was introduced by ISO C++ DR 464 + return push_stack(&args.front(), &args.front() + args.size(), stack); } inline void --- rtorrent-0.8.9-orig/src/rpc/object_storage.h 2011-06-27 12:33:21.000000000 -0700 +++ rtorrent-0.8.9/src/rpc/object_storage.h 2011-06-27 12:33:38.000000000 -0700 @@ -78,7 +78,7 @@ using base_type::end; using base_type::size; using base_type::empty; - using base_type::key_eq; + using base_type::key_equal; using base_type::bucket; using base_type::bucket_count; using base_type::max_bucket_count; --- rtorrent-0.8.9-orig/src/thread_base.cc 2011-07-16 16:41:13.000000000 -0700 +++ rtorrent-0.8.9/src/thread_base.cc 2011-07-16 16:45:34.000000000 -0700 @@ -79,7 +79,7 @@ if (itr == max_capacity()) throw torrent::internal_error("Overflowed thread_queue."); - __sync_bool_compare_and_swap(itr, NULL, v); + __sync_bool_compare_and_swap(reinterpret_cast<int32_t*>(itr), NULL, reinterpret_cast<int32_t>(v)); __sync_bool_compare_and_swap(&m_lock, 1, 0); } --- rtorrent-0.8.9-orig/src/thread_worker.cc 2011-07-16 16:45:44.000000000 -0700 +++ rtorrent-0.8.9/src/thread_worker.cc 2011-07-16 16:46:43.000000000 -0700 @@ -69,7 +69,7 @@ bool ThreadWorker::set_scgi(rpc::SCgi* scgi) { - if (!__sync_bool_compare_and_swap(&m_safe.scgi, NULL, scgi)) + if (!__sync_bool_compare_and_swap(reinterpret_cast<int32_t*>(&m_safe.scgi), NULL, reinterpret_cast<int32_t>(scgi))) return false; change_xmlrpc_log(); ------------------------------------------------------------------------------ Magic Quadrant for Content-Aware Data Loss Prevention Research study explores the data loss prevention market. Includes in-depth analysis on the changes within the DLP market, and the criteria used to evaluate the strengths and weaknesses of these DLP solutions. http://www.accelacomm.com/jaw/sfnl/114/51385063/ _______________________________________________ Fink-commits mailing list Fink-commits@lists.sourceforge.net http://news.gmane.org/gmane.os.apple.fink.cvs