libtorrent: Switch to static library.
libtorrent is only used by rtorrent. Switch to a static library to save space. Removed libsigc++ dependency. It seems it's not needed. Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
parent
ad758ba286
commit
e56fada5a8
2 changed files with 57 additions and 9 deletions
|
@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=libtorrent
|
||||
PKG_VERSION:=0.13.8
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/rakshasa/libtorrent/tar.gz/v$(PKG_VERSION)?
|
||||
|
@ -22,7 +22,6 @@ PKG_LICENSE_FILES:=COPYING
|
|||
PKG_FIXUP:=autoreconf
|
||||
PKG_INSTALL:=1
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_REMOVE_FILES:=autogen.sh
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
|
@ -31,7 +30,7 @@ define Package/libtorrent
|
|||
CATEGORY:=Libraries
|
||||
TITLE:=Rakshasa's BitTorrent library
|
||||
URL:=https://rakshasa.github.io/rtorrent/
|
||||
DEPENDS:=+libopenssl +libsigcxx +zlib
|
||||
DEPENDS:=+libopenssl +libstdcpp +zlib
|
||||
endef
|
||||
|
||||
define Package/libtorrent/description
|
||||
|
@ -59,14 +58,9 @@ define Build/InstallDev
|
|||
$(INSTALL_DIR) $(1)/usr/include
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/torrent $(1)/usr/include/
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libtorrent.{a,so*} $(1)/usr/lib/
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libtorrent.a $(1)/usr/lib/
|
||||
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libtorrent.pc $(1)/usr/lib/pkgconfig/
|
||||
endef
|
||||
|
||||
define Package/libtorrent/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libtorrent.so.* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
$(eval $(call BuildPackage,libtorrent))
|
||||
|
|
54
libs/libtorrent/patches/010-usleep.patch
Normal file
54
libs/libtorrent/patches/010-usleep.patch
Normal file
|
@ -0,0 +1,54 @@
|
|||
--- a/src/data/hash_queue.cc
|
||||
+++ b/src/data/hash_queue.cc
|
||||
@@ -38,9 +38,10 @@
|
||||
|
||||
#define __STDC_FORMAT_MACROS
|
||||
|
||||
+#include <chrono>
|
||||
+#include <thread>
|
||||
#include <functional>
|
||||
#include <rak/functional.h>
|
||||
-#include <unistd.h>
|
||||
|
||||
#include "torrent/exceptions.h"
|
||||
#include "torrent/data/download_data.h"
|
||||
@@ -137,7 +138,7 @@ HashQueue::remove(HashQueueNode::id_type id) {
|
||||
|
||||
while ((done_itr = m_done_chunks.find(hash_chunk)) == m_done_chunks.end()) {
|
||||
pthread_mutex_unlock(&m_done_chunks_lock);
|
||||
- usleep(100);
|
||||
+ std::this_thread::sleep_for(std::chrono::microseconds(100));
|
||||
pthread_mutex_lock(&m_done_chunks_lock);
|
||||
}
|
||||
|
||||
--- a/src/torrent/utils/thread_base.cc
|
||||
+++ b/src/torrent/utils/thread_base.cc
|
||||
@@ -37,8 +37,9 @@
|
||||
#include "config.h"
|
||||
|
||||
#include <cstring>
|
||||
+#include <chrono>
|
||||
+#include <thread>
|
||||
#include <signal.h>
|
||||
-#include <unistd.h>
|
||||
|
||||
#include "exceptions.h"
|
||||
#include "poll.h"
|
||||
@@ -97,7 +98,7 @@ thread_base::stop_thread_wait() {
|
||||
release_global_lock();
|
||||
|
||||
while (!is_inactive()) {
|
||||
- usleep(1000);
|
||||
+ std::this_thread::sleep_for(std::chrono::milliseconds(1));
|
||||
}
|
||||
|
||||
acquire_global_lock();
|
||||
@@ -161,7 +162,7 @@ thread_base::event_loop(thread_base* thread) {
|
||||
}
|
||||
|
||||
// Add the sleep call when testing interrupts, etc.
|
||||
- // usleep(50);
|
||||
+ // std::this_thread::sleep_for(std::chrono::microseconds(50));
|
||||
|
||||
int poll_flags = 0;
|
||||
|
Loading…
Reference in a new issue