diff options
author | V3n3RiX <venerix@koprulu.sector> | 2023-11-15 16:36:08 +0000 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2023-11-15 16:36:08 +0000 |
commit | db3d7a26fc91ea36f0780dcc3bcc59efdab02d41 (patch) | |
tree | f1e4dcd66841437a53a8fad6c9efadbd060f692a /net-misc/aria2 | |
parent | 55cd3ff92ff96fafc75066838cfc2af06df3a296 (diff) |
gentoo auto-resync : 15:11:2023 - 16:36:08
Diffstat (limited to 'net-misc/aria2')
-rw-r--r-- | net-misc/aria2/Manifest | 2 | ||||
-rw-r--r-- | net-misc/aria2/aria2-1.37.0.ebuild | 199 |
2 files changed, 201 insertions, 0 deletions
diff --git a/net-misc/aria2/Manifest b/net-misc/aria2/Manifest index c119dc44cf09..c0fd50140aeb 100644 --- a/net-misc/aria2/Manifest +++ b/net-misc/aria2/Manifest @@ -1,3 +1,5 @@ DIST aria2-1.36.0.tar.xz 1619036 BLAKE2B 7894ec705f6fefdbc6c4844efa8a645b3e7674e36d04535ac96b9daf5098a453d047109bad0db16e6fd656f63a3ec0bab5746e8ba7d549149e2364395a94399f SHA512 8203dbb75274455a78c50dd4f894e631de6931ac889f26896dceed78ec38c98cdbcf07e164744f308f2bfffeae1016beec1bfdbe8cad7f3280d11376aa0c2542 +DIST aria2-1.37.0.tar.xz 1705256 BLAKE2B 4714dd0806fb7693f45e854d544dadd87312a98eef93518f8e8ea5f3332d362724dead16c7ebfdbe594b8403ef7b44e09f4180629894506e333ec2a423828244 SHA512 df3b8b4de8fa8d78f203ea00c059e43585e18a229009f202e42e6a9e59db67d09df0dbba8a016e99ed73c82f59e4f8b26f86c2288afdbb96a6807cbe2c56e6b3 EBUILD aria2-1.36.0-r1.ebuild 5150 BLAKE2B 8ea5bcf18525cd88401c682a15305bddf5eb53f1c0d0d55620f91680c03874bdf12c31c16f9083b5c4419ee2398ab9da6e02167cce100f878ae18b9eb52cfd68 SHA512 a11f47da7b43a28156e7d67fd36a9908d08e6289525729094131f27b0c8667962e67ec31199eefc32a8a3c758b46ace102ebe943ad8f47f150e3c284d211218b +EBUILD aria2-1.37.0.ebuild 5153 BLAKE2B fa816d1f82a6d35d4ebd5cb0b252e0e45ccc560e5e422920b27ef60499da24cd19c70c130658b6926317e97d3342336be404e09fba4a71c7ec103415a308e937 SHA512 476d1864e7d04af14cd0e8f8efe977862f47c0ba42ee89e05dcec77014ec58bcb730101f616823b2b52d2bf070f6bb8827eaad958808e5467fc71d0aecb3129c MISC metadata.xml 1326 BLAKE2B 3ac9bf38699dc1fbde6888fca4fbc4374d44e53d7c323fcf35e9303929502473dba40503c7ce3deaf232f6057d184e19bbf5ff7cbc5908d79ee3e6de7dc6a097 SHA512 5367b67da846fbcb0175b1ee4a3a532731e6b5285b8c3f244a175515b557a64732e58a8db67d4a691c28e707511ff894afe746366efd74c06353fa1df8efcf8b diff --git a/net-misc/aria2/aria2-1.37.0.ebuild b/net-misc/aria2/aria2-1.37.0.ebuild new file mode 100644 index 000000000000..5aad543edb93 --- /dev/null +++ b/net-misc/aria2/aria2-1.37.0.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 + +DESCRIPTION="A download utility with segmented downloading with BitTorrent support" +HOMEPAGE="https://aria2.github.io/" +SRC_URI="https://github.com/aria2/${PN}/releases/download/release-${PV}/${P}.tar.xz" + +LICENSE="GPL-2+-with-openssl-exception" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +SLOT="0" +IUSE=" + adns bittorrent +gnutls jemalloc libuv +libxml2 metalink +nettle + nls sqlite scripts ssh ssl tcmalloc test xmlrpc +" +# xmlrpc has no explicit switch, it's turned out by any XML library +# so metalink implicitly forces it on +REQUIRED_USE=" + ?? ( jemalloc tcmalloc ) + metalink? ( xmlrpc ) +" +RESTRICT="!test? ( test )" + +# Crazy GnuTLS/OpenSSL/etc. logic below: +# 1. Those libraries are used for two purposes: TLS & MD. +# 2. Upstream preferences are: +# 1) gnutls [tls] +# 2) !gnutls? -> openssl [tls+md] +# 3) !openssl? -> nettle [md] +# 4) !openssl? !nettle? -> gcrypt [md] +# 5) !*? -> bundled md routines (we don't use them) +# 3. There's also gmp usage for bittorrent with nettle. +# 4. You can't really control features, just dependencies. +# (we are skipping native Apple/Windows TLS support) +# +# We map this into: +# ssl? -> openssl || (gnutls + (nettle || libgcrypt )) +# !ssl? -> nettle || libgcrypt +RDEPEND=" + sys-libs/zlib:0= + adns? ( >=net-dns/c-ares-1.5.0:0= ) + jemalloc? ( dev-libs/jemalloc ) + libuv? ( >=dev-libs/libuv-1.13:0= ) + metalink? ( + libxml2? ( >=dev-libs/libxml2-2.6.26:2= ) + !libxml2? ( dev-libs/expat:0= ) + ) + sqlite? ( dev-db/sqlite:3= ) + ssh? ( net-libs/libssh2:= ) + ssl? ( + app-misc/ca-certificates + gnutls? ( + >=net-libs/gnutls-1.2.9:0= + nettle? ( + >=dev-libs/nettle-2.4:0= + bittorrent? ( + >=dev-libs/nettle-2.4:0=[gmp] + >=dev-libs/gmp-6:0= + ) + ) + !nettle? ( >=dev-libs/libgcrypt-1.2.2:0= ) + ) + !gnutls? ( + dev-libs/openssl:0= + ) + ) + !ssl? ( + nettle? ( + >=dev-libs/nettle-2.4:0= + bittorrent? ( + >=dev-libs/nettle-2.4:0=[gmp] + >=dev-libs/gmp-6:0= + ) + ) + !nettle? ( >=dev-libs/libgcrypt-1.2.2:0= ) + ) + tcmalloc? ( dev-util/google-perftools ) + xmlrpc? ( + libxml2? ( >=dev-libs/libxml2-2.6.26:2= ) + !libxml2? ( dev-libs/expat:0= ) + ) +" + +DEPEND=" + ${RDEPEND} + test? ( >=dev-util/cppunit-1.12.0:0 ) +" +RDEPEND+=" + nls? ( virtual/libiconv virtual/libintl ) + scripts? ( dev-lang/ruby ) +" +BDEPEND="app-arch/xz-utils + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +pkg_setup() { + if use scripts && ! use xmlrpc; then + ewarn "Please note that you may need to enable USE=xmlrpc to run the aria2rpc" + ewarn "and aria2mon scripts against the local aria2." + fi +} + +src_prepare() { + default + sed -i -e "s|/tmp|${T}|" test/*.cc test/*.txt || die "sed failed" + # Fails with USE=bittorrent && FEATURES=network-sandbox + sed -i -E \ + -e '/^@ENABLE_BITTORRENT_TRUE@ LpdMessageDispatcherTest/d' \ + -e '/^@ENABLE_BITTORRENT_TRUE@ LpdMessageReceiverTest/d' \ + test/Makefile.in || die +} + +src_configure() { + local myconf=( + # threads, epoll: check for best portability + + # do not try to compile and run a test LIBXML program + --disable-xmltest + # enable the shared library + --enable-libaria2 + # zlib should always be available anyway + --with-libz + --with-ca-bundle="${EPREFIX}/etc/ssl/certs/ca-certificates.crt" + + # optional features + $(use_enable bittorrent) + $(use_enable metalink) + $(use_enable nls) + $(use_with adns libcares) + $(use_with jemalloc) + $(use_with libuv) + $(use_with sqlite sqlite3) + $(use_with ssh libssh2) + $(use_with tcmalloc) + + # forces bundled wslay + --disable-websocket + ) + + # See TLS/MD logic described above deps. + if use ssl && ! use gnutls; then + # 1. if ssl & !gnutls, use openssl and disable gnutls + myconf+=( --without-gnutls --with-openssl ) + else + myconf+=( + # 2. otherwise, disable openssl + --without-openssl + # 3. if ssl & gnutls, use gnutls + $(use_with ssl gnutls) + + # 4. switch between nettle & libgcrypt + $(use_with nettle libnettle) + $(use_with !nettle libgcrypt) + ) + + # 5. if bittorrent is used along with nettle, use libgmp + if use bittorrent && use nettle; then + myconf+=( --with-libgmp ) + else + myconf+=( --without-libgmp ) + fi + fi + + # metalink+xmlrpc := libxml2 / expat + # USE=(metalink || xmlrpc) + # + USE=libxml2 -> libxml2 + # + USE=-libxml2 -> expat + + if use metalink || use xmlrpc; then + myconf+=( $(use_with !libxml2 libexpat) $(use_with libxml2) ) + else + myconf+=( --without-libexpat --without-libxml2 ) + fi + + # Note: + # - always enable gzip/http compression since zlib should always be available anyway + # - always enable epoll since we can assume kernel 2.6.x + # - other options for threads: solaris, pth, win32 + econf "${myconf[@]}" +} + +src_install() { + default + rm -r "${ED}"/usr/share/doc/${PF}/README{,.html} || die + + dobashcomp doc/bash_completion/aria2c + use scripts && dobin doc/xmlrpc/aria2{mon,rpc} +} + +pkg_postinst() { + if use xmlrpc; then + elog "If you would like to use the additional aria2mon and aria2rpc tools," + elog "you need to have \033[1mdev-lang/ruby\033[0m installed." + fi +} |