Added libtorrent-rasterbar and qBittorrent packages.

This commit is contained in:
Krizsán Péter 2022-02-27 17:03:18 +01:00
parent 4ed4290927
commit 03792aec5f
4 changed files with 322 additions and 0 deletions

9
add_packages.sh Executable file
View File

@ -0,0 +1,9 @@
#! /bin/bash
cp -v libtorrent-rasterbar-2.0.5-update-allocator-sizes-for-boost-1.78.patch /sources
cp -v networking/netlibs/libtorrent-rasterbar.xml ../blfs_root/blfs-xml/networking/netlibs
cp -v xsoft/other/qbittorrent.xml ../blfs_root/blfs-xml/xsoft/other
sed -i '/libtirpc.xml.*/a <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libtorrent-rasterbar.xml"/>' ../blfs_root/blfs-xml/networking/netlibs/netlibs.xml
sed -i '/pidgin.xml.*/a <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="qbittorrent.xml"/>' ../blfs_root/blfs-xml/xsoft/other/other.xml
sed -i '/libtirpc-version.*/a <!ENTITY libtorrent-rasterbar-version "2.0.5">' ../blfs_root/blfs-xml/packages.ent
sed -i '/pidgin-version.*/a <!ENTITY qbittorrent-version "4.4.1">' ../blfs_root/blfs-xml/packages.ent

View File

@ -0,0 +1,49 @@
From 71d608fceca7e61c9d124f9ea83f71b06eda3b17 Mon Sep 17 00:00:00 2001
From: arvidn <arvid@libtorrent.org>
Date: Sun, 12 Dec 2021 21:52:15 +0100
Subject: [PATCH] update allocator sizes for boost-1.78
---
include/libtorrent/aux_/allocating_handler.hpp | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/include/libtorrent/aux_/allocating_handler.hpp b/include/libtorrent/aux_/allocating_handler.hpp
index 726032e08..7096dfd2e 100644
--- a/include/libtorrent/aux_/allocating_handler.hpp
+++ b/include/libtorrent/aux_/allocating_handler.hpp
@@ -77,11 +77,11 @@ namespace libtorrent { namespace aux {
constexpr std::size_t openssl_write_cost = 0;
#endif
- constexpr std::size_t read_handler_max_size = tracking + debug_read_iter + openssl_read_cost + 102 + 8 * sizeof(void*);
- constexpr std::size_t write_handler_max_size = tracking + debug_write_iter + openssl_write_cost + 102 + 8 * sizeof(void*);
- constexpr std::size_t udp_handler_max_size = tracking + debug_tick + 144 + 8 * sizeof(void*);
- constexpr std::size_t utp_handler_max_size = tracking + debug_tick + 168 + 8 * sizeof(void*);
- constexpr std::size_t tick_handler_max_size = tracking + debug_tick + 160;
+ constexpr std::size_t read_handler_max_size = tracking + debug_read_iter + openssl_read_cost + 102 + 9 * sizeof(void*);
+ constexpr std::size_t write_handler_max_size = tracking + debug_write_iter + openssl_write_cost + 102 + 9 * sizeof(void*);
+ constexpr std::size_t udp_handler_max_size = tracking + debug_tick + 144 + 9 * sizeof(void*);
+ constexpr std::size_t utp_handler_max_size = tracking + debug_tick + 168 + 9 * sizeof(void*);
+ constexpr std::size_t tick_handler_max_size = tracking + debug_tick + 168;
constexpr std::size_t abort_handler_max_size = tracking + debug_tick + 104;
constexpr std::size_t submit_handler_max_size = tracking + debug_tick + 104;
constexpr std::size_t deferred_handler_max_size = tracking + debug_tick + 112;
@@ -124,12 +124,12 @@ namespace libtorrent { namespace aux {
#endif
constexpr std::size_t write_handler_max_size = tracking + debug_write_iter + openssl_write_cost + fuzzer_write_cost + 168;
constexpr std::size_t read_handler_max_size = tracking + debug_read_iter + openssl_read_cost + fuzzer_read_cost + 168;
- constexpr std::size_t udp_handler_max_size = tracking + 160;
- constexpr std::size_t utp_handler_max_size = tracking + 184;
+ constexpr std::size_t udp_handler_max_size = tracking + 168;
+ constexpr std::size_t utp_handler_max_size = tracking + 192;
constexpr std::size_t abort_handler_max_size = tracking + 72;
constexpr std::size_t submit_handler_max_size = tracking + 72;
constexpr std::size_t deferred_handler_max_size = tracking + 80;
- constexpr std::size_t tick_handler_max_size = tracking + 128;
+ constexpr std::size_t tick_handler_max_size = tracking + 136;
#endif
enum HandlerName
--
2.35.1

View File

@ -0,0 +1,139 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY libtorrent-rasterbar-download-http "https://github.com/arvidn/libtorrent/releases/download/v2.0.5/libtorrent-rasterbar-2.0.5.tar.gz">
<!ENTITY libtorrent-rasterbar-download-ftp " ">
<!ENTITY libtorrent-rasterbar-md5sum "98e0464cabbf73f56bfbfe6dfaaef4c0">
<!ENTITY libtorrent-rasterbar-size "4.2 MB">
<!ENTITY libtorrent-rasterbar-buildsize "150 MB">
<!ENTITY libtorrent-rasterbar-time "1.5 SBU (using parallelism=4)">
]>
<sect1 id="libtorrent-rasterbar" xreflabel="libtorrent-&libtorrent-rasterbar-version;">
<?dbhtml filename="libtorrent-rasterbar.html"?>
<sect1info>
<date>$Date$</date>
</sect1info>
<title>libtorrent-&libtorrent-rasterbar-version;</title>
<indexterm zone="libtorrent-rasterbar">
<primary sortas="a-libtorrent">libtorrent</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libtorrent</title>
<para>
<application>libtorrent</application> is a feature complete C++ bittorrent implementation focusing on efficiency and scalability. It runs on embedded devices as well as desktops. It boasts a well documented library interface that is easy to use. It comes with a simple bittorrent client demonstrating the use of the library.
</para>
&lfs110a_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&libtorrent-rasterbar-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&libtorrent-rasterbar-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &libtorrent-rasterbar-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &libtorrent-rasterbar-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &libtorrent-rasterbar-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &libtorrent-rasterbar-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/libtorrent-rasterbar-&libtorrent-rasterbar-version;-update-allocator-sizes-for-boost-1.78.patch"/>
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">libtorrent Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="boost"/>, and
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libtorrent</title>
<screen><userinput>patch -Np1 -i ../libtorrent-rasterbar-2.0.5-update-allocator-sizes-for-boost-1.78.patch</userinput></screen>
<para>
Install <application>libtorrent</application> by running the
following commands:
</para>
<screen><userinput>mkdir build &amp;&amp;
cd build &amp;&amp;
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=17 -G Ninja .. &amp;&amp;
ninja</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>cmake --install .</userinput></screen>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
libtorrent-rasterbar
</seg>
<seg>
None
</seg>
<seg>
/usr/share/libtorrent-rasterbar
</seg>
</seglistitem>
</segmentedlist>
</sect2>
</sect1>

125
xsoft/other/qbittorrent.xml Normal file
View File

@ -0,0 +1,125 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY qbittorrent-download-http "https://sourceforge.net/projects/qbittorrent/files/qbittorrent/qbittorrent-4.4.1/qbittorrent-4.4.1.tar.xz">
<!ENTITY qbittorrent-download-ftp " ">
<!ENTITY qbittorrent-md5sum "a1f6f453e02f77df3e5a4852d16d5962">
<!ENTITY qbittorrent-size "4.6 MB">
<!ENTITY qbittorrent-buildsize "500 MB">
<!ENTITY qbittorrent-time "2 SBU (using parallelism=4)">
]>
<sect1 id="qbittorrent" xreflabel="qBittorrent-&qbittorrent-version;">
<?dbhtml filename="qbittorrent.html"?>
<sect1info>
<date>$Date$</date>
</sect1info>
<title>qBittorrent-&qbittorrent-version;</title>
<indexterm zone="qbittorrent">
<primary sortas="a-qBittorrent">qBittorrent</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to qBittorrent</title>
<para>
<application>qBittorrent</application> project aims to provide an open-source software alternative to µTorrent. qBittorrent is based on the Qt toolkit and libtorrent-rasterbar library.
</para>
&lfs110a_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&qbittorrent-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&qbittorrent-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &qbittorrent-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &qbittorrent-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &qbittorrent-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &qbittorrent-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">qBittorrent Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<xref linkend="qt5"/>, and
<xref linkend="libtorrent-rasterbar"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of qBittorrent</title>
<para>
Install <application>qBittorrent</application> by running the
following commands:
</para>
<screen><userinput>./configure --prefix=/usr &amp;&amp;
make</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
qbittorrent
</seg>
<seg>
None
</seg>
<seg>
/usr/share/qbittorrent
</seg>
</seglistitem>
</segmentedlist>
</sect2>
</sect1>