#
-# Copyright (C) 2007-2009 OpenWrt.org
+# Copyright (C) 2007-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=libtorrent
-
-PKG_REV:=1123
+PKG_REV:=1130
PKG_VERSION:=0.12.6_r$(PKG_REV)
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=svn://rakshasa.no/libtorrent/trunk/libtorrent
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE_VERSION:=$(PKG_REV)
PKG_SOURCE_PROTO:=svn
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
endef
define Package/libtorrent/description
- LibTorrent is a BitTorrent library written in C++ for *nix, with a focus
- on high performance and good code. The library differentiates itself from
- other implementations by transfering directly from file pages to the
- network stack. On high-bandwidth connections it is able to seed at 3 times
+ LibTorrent is a BitTorrent library written in C++ for *nix, with a focus
+ on high performance and good code. The library differentiates itself from
+ other implementations by transfering directly from file pages to the
+ network stack. On high-bandwidth connections it is able to seed at 3 times
the speed of the official client.
endef
$(call Build/Configure/Default)
endef
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR) \
- DESTDIR="$(PKG_INSTALL_DIR)" \
- all install
-endef
-
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/torrent $(1)/usr/include/
-Index: libtorrent/rak/allocators.h
-===================================================================
---- libtorrent/rak/allocators.h (revision 1121)
-+++ libtorrent/rak/allocators.h (working copy)
-@@ -74,17 +74,13 @@
+--- a/rak/allocators.h
++++ b/rak/allocators.h
+@@ -74,17 +74,13 @@ public:
size_type max_size () const throw() { return std::numeric_limits<size_t>::max() / sizeof(T); }
pointer allocate(size_type num, const_void_pointer hint = 0) { return alloc_size(num*sizeof(T)); }
- static pointer alloc_size(size_type size) {
- pointer ptr = NULL;
- int __UNUSED result = posix_memalign((void**)&ptr, LT_SMP_CACHE_BYTES, size);
+-
+- return ptr;
+- }
+ static pointer alloc_size(size_type size);
+ static void dealloc_size(pointer p, size_type size);
-- return ptr;
-- }
--
void construct (pointer p, const T& value) { new((void*)p)T(value); }
void destroy (pointer p) { p->~T(); }
- void deallocate (pointer p, size_type num) { ::operator delete((void*)p); }
};
-@@ -98,8 +94,38 @@
+@@ -98,6 +94,36 @@ bool operator!= (const cacheline_allocat
return false;
}
+#endif
+
+ return ptr;
- }
-
++}
++
+template <class T>
+inline void cacheline_allocator<T>::dealloc_size(pointer p, size_type size) {
+#if HAVE_POSIX_MEMALIGN
+#endif
+}
+
-+}
-+
- //
- // Operator new with custom allocators:
+ }
+
//
-Index: libtorrent/src/net/socket_datagram.cc
-===================================================================
---- libtorrent/src/net/socket_datagram.cc (revision 1121)
-+++ libtorrent/src/net/socket_datagram.cc (working copy)
-@@ -73,6 +73,23 @@
+--- a/src/net/socket_datagram.cc
++++ b/src/net/socket_datagram.cc
+@@ -73,6 +73,23 @@ SocketDatagram::write_datagram(const voi
int r;
if (sa != NULL) {
-Index: libtorrent/src/net/socket_set.h
-===================================================================
---- libtorrent/src/net/socket_set.h (revision 1121)
-+++ libtorrent/src/net/socket_set.h (working copy)
-@@ -53,12 +53,12 @@
+--- a/src/net/socket_set.h
++++ b/src/net/socket_set.h
+@@ -53,12 +53,12 @@ namespace torrent {
// Propably should rename to EventSet...