pkgsrc/net/aria2/Makefile

53 lines
1.4 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.70 2017/07/10 21:33:15 seb Exp $
DISTNAME= aria2-1.32.0
#PKGREVISION= 1
CATEGORIES= net
Update to 1.30.0 * Update HOMEPAGE Chagnelog: aria2 1.30.0 ============ Release Note ------------ This release fixes several bugs. See Changes below for detailed bug fixes. This release adds an ability to expand `${HOME}` to user's home directory in several options. It would be useful when used in configuration file. -S option against torrent file now prints out DHT nodes. Changes ------- * mingw: Use sqlite 3.15.2 * Fix bug that --disable-websocket causes build error * Fix bug that lower bound of optimize-concurrent-downloads becomes 1 GH-798 * Print DHT nodes with -S option GH-795 * Take into account address family when resolving DHT node address GH-794 * Allow block device file to -i option GH-785 * Expand `${HOME}` to user's home directory in several options The following options implement this substitution: * --ca-certificate * --certificate * --dht-file-path * --dht-file-path6 * --dir * --input-file * --load-cookies * --log * --metalink-file * --netrc-path * --on-bt-download-complete * --on-download-complete * --on-download-error * --on-download-start * --on-download-stop * --on-download_pause * --out * --private-key * --rpc-certificate * --rpc-private-key * --save-cookies * --save-session * --server-stat-if * --server-stat-of * --torrent-file GH-780 * Document that libaria2 is not thread safe GH-775 * configure: Use pkg-config to find libs whenever possible Use pkg-config to find cppunit, libxml2 and expat. All those libraries provide pkg-config files, and in all of those cases the pkg-config macro is superior to the custom macros used currently. The advantages of pkg-config files include: - Explicit static linking support via --static. Currently, e.g. 'xml2-config --libs' prints all libraries needed for static linking when doing dynamic linking unnecessary, resulting in unnecessary direct deps. - Better cross-build support. You don't have to build the additional *-config tools for target. - Better multilib support. Per-ABI pkgconfig directories are commonly supported while packages usually fail to look for per-CHOST *-config variants. - Better override support. The current macros allow little to no result overrides, the pkg-config macros let you pass FOO_CFLAGS and FOO_LIBS manually. - Cleaner version checks. The code used in libxml.m4 is really creepy. Patch from Michał Górny GH-773 * WinTLS: Rewrite writeData We re-wrote WinTLSSession::writeData. The major points are: * Buffer is now preallocated once handshake is finished. Previously, they are allocated each time when we send one TLS record. * Schannel uses header, body and trailer for each secBuffer. Now we send them off at once using WSASend which is windows counterpart of sendv. Previously, we do memmove if some of them are truncated. * We don't try to send application data in WinTLSSession::closeConnection, since semantically we need same application data used to create TLS record before. Using 0 length data to finish sending buffered data looks like a hack. GH-772
2017-01-01 09:42:45 +01:00
MASTER_SITES= ${MASTER_SITE_GITHUB:=aria2/}
EXTRACT_SUFX= .tar.xz
MAINTAINER= pkgsrc-users@NetBSD.org
Update to 1.30.0 * Update HOMEPAGE Chagnelog: aria2 1.30.0 ============ Release Note ------------ This release fixes several bugs. See Changes below for detailed bug fixes. This release adds an ability to expand `${HOME}` to user's home directory in several options. It would be useful when used in configuration file. -S option against torrent file now prints out DHT nodes. Changes ------- * mingw: Use sqlite 3.15.2 * Fix bug that --disable-websocket causes build error * Fix bug that lower bound of optimize-concurrent-downloads becomes 1 GH-798 * Print DHT nodes with -S option GH-795 * Take into account address family when resolving DHT node address GH-794 * Allow block device file to -i option GH-785 * Expand `${HOME}` to user's home directory in several options The following options implement this substitution: * --ca-certificate * --certificate * --dht-file-path * --dht-file-path6 * --dir * --input-file * --load-cookies * --log * --metalink-file * --netrc-path * --on-bt-download-complete * --on-download-complete * --on-download-error * --on-download-start * --on-download-stop * --on-download_pause * --out * --private-key * --rpc-certificate * --rpc-private-key * --save-cookies * --save-session * --server-stat-if * --server-stat-of * --torrent-file GH-780 * Document that libaria2 is not thread safe GH-775 * configure: Use pkg-config to find libs whenever possible Use pkg-config to find cppunit, libxml2 and expat. All those libraries provide pkg-config files, and in all of those cases the pkg-config macro is superior to the custom macros used currently. The advantages of pkg-config files include: - Explicit static linking support via --static. Currently, e.g. 'xml2-config --libs' prints all libraries needed for static linking when doing dynamic linking unnecessary, resulting in unnecessary direct deps. - Better cross-build support. You don't have to build the additional *-config tools for target. - Better multilib support. Per-ABI pkgconfig directories are commonly supported while packages usually fail to look for per-CHOST *-config variants. - Better override support. The current macros allow little to no result overrides, the pkg-config macros let you pass FOO_CFLAGS and FOO_LIBS manually. - Cleaner version checks. The code used in libxml.m4 is really creepy. Patch from Michał Górny GH-773 * WinTLS: Rewrite writeData We re-wrote WinTLSSession::writeData. The major points are: * Buffer is now preallocated once handshake is finished. Previously, they are allocated each time when we send one TLS record. * Schannel uses header, body and trailer for each secBuffer. Now we send them off at once using WSASend which is windows counterpart of sendv. Previously, we do memmove if some of them are truncated. * We don't try to send application data in WinTLSSession::closeConnection, since semantically we need same application data used to create TLS record before. Using 0 length data to finish sending buffered data looks like a hack. GH-772
2017-01-01 09:42:45 +01:00
HOMEPAGE= https://aria2.github.io/
Update to version 0.15.2. This release features extensive bug fixes and significant feature enhancements; it also now builds on OpenSolaris (tested with NexentaOS by development community). I urge all users to upgrade. A _partial_ list of changes: - Added and/or updated Danish, Greek, Spanish, Catalan, Norwegian Nynorsk, Bulgarian, French, Catalan, and Japanese translations. - Man page fixes. - Fixed: numCommand is less than the value specified in -C option. - Myriad bug fixes. - Now uses name attribute in Metalink as local filename in BitTorrent downloads. BUG#2033999 - Fixed memory leaks in test code. - Fixed wrong argument passing to BitfieldMan::isBitSet() - Initialized _directIOAllowed - Fixed memory leak in gzip decoder and metalink parser state machine. - Plug many other memory leaks and fix unmatch malloc/free calls. - Removed max chunk size check. This change fixes BUG#2040169 - Fixed the bug that causes segmentaion fault when resuming download using metalink without size tag. Reproducible only using HTTP URI. - Removed writable check when socket's send buffer is full in BitTorrent downloads to lower CPU usage. - Fixed broken gzip inflation. Turn off segmented downloading if gzip content is smaller than or equal to 1MiB and inflate the data on the fly, because HTTP response header doesn't contain the length of inflated file we can't determin where the chunk of data should be written. On the other hand, if gzip content is larger than 1MB, then turn off on the fly inflation, because some servers returns "content-type: gzip" for *.tgz, *.gz files. - Added gzip decompressor via libz. - Cache last calculated average download/upload speed. - Supported absolute/relative path in Location header field. - Use File::exists() instead of File::isFile() to allow non- regular file such as block special files. - Added a message "aria2 doesn't verify signature" to log message when signature file is saved. - Added the ability to save signature when download is completed if signature is available. The filename of signature file is the path to download file followed by ".sig". If it already exists, then signature will not be saved. - Improve accuracy of documentation and rename some options to be more descriptive of their functions/purposes. - Added the ability to retrieve signature from Metalink file. A retrieved signature is stored in Signature class and it is held by DownloadContext class. Note that aria2 doesn't verify signature. - Added --bt-seed option. If --bt-seed=true is given at the command-line, aria2 seeds previously downloaded files without validating piece hashes. - Fixed the compile error on Nexenta OS(GNU/Solaris OS). (Don't define `struct addrinfo' when __sun is defined) - Fixed the bug that UTF-8 encoded URL is not URL-encoded - Properly differentiate between ftp errors and actual zero-byte files (now supports ftp servers which do not recognize SIZE raw command).
2008-08-19 16:41:58 +02:00
COMMENT= Multi-threaded, multi-protocol, flexible download accelerator
LICENSE= gnu-gpl-v2
Update to 1.30.0 * Update HOMEPAGE Chagnelog: aria2 1.30.0 ============ Release Note ------------ This release fixes several bugs. See Changes below for detailed bug fixes. This release adds an ability to expand `${HOME}` to user's home directory in several options. It would be useful when used in configuration file. -S option against torrent file now prints out DHT nodes. Changes ------- * mingw: Use sqlite 3.15.2 * Fix bug that --disable-websocket causes build error * Fix bug that lower bound of optimize-concurrent-downloads becomes 1 GH-798 * Print DHT nodes with -S option GH-795 * Take into account address family when resolving DHT node address GH-794 * Allow block device file to -i option GH-785 * Expand `${HOME}` to user's home directory in several options The following options implement this substitution: * --ca-certificate * --certificate * --dht-file-path * --dht-file-path6 * --dir * --input-file * --load-cookies * --log * --metalink-file * --netrc-path * --on-bt-download-complete * --on-download-complete * --on-download-error * --on-download-start * --on-download-stop * --on-download_pause * --out * --private-key * --rpc-certificate * --rpc-private-key * --save-cookies * --save-session * --server-stat-if * --server-stat-of * --torrent-file GH-780 * Document that libaria2 is not thread safe GH-775 * configure: Use pkg-config to find libs whenever possible Use pkg-config to find cppunit, libxml2 and expat. All those libraries provide pkg-config files, and in all of those cases the pkg-config macro is superior to the custom macros used currently. The advantages of pkg-config files include: - Explicit static linking support via --static. Currently, e.g. 'xml2-config --libs' prints all libraries needed for static linking when doing dynamic linking unnecessary, resulting in unnecessary direct deps. - Better cross-build support. You don't have to build the additional *-config tools for target. - Better multilib support. Per-ABI pkgconfig directories are commonly supported while packages usually fail to look for per-CHOST *-config variants. - Better override support. The current macros allow little to no result overrides, the pkg-config macros let you pass FOO_CFLAGS and FOO_LIBS manually. - Cleaner version checks. The code used in libxml.m4 is really creepy. Patch from Michał Górny GH-773 * WinTLS: Rewrite writeData We re-wrote WinTLSSession::writeData. The major points are: * Buffer is now preallocated once handshake is finished. Previously, they are allocated each time when we send one TLS record. * Schannel uses header, body and trailer for each secBuffer. Now we send them off at once using WSASend which is windows counterpart of sendv. Previously, we do memmove if some of them are truncated. * We don't try to send application data in WinTLSSession::closeConnection, since semantically we need same application data used to create TLS record before. Using 0 length data to finish sending buffered data looks like a hack. GH-772
2017-01-01 09:42:45 +01:00
GITHUB_PROJECT= aria2
GITHUB_RELEASE= release-${PKGVERSION_NOREV}
# Minimum requirement is 4.8.3
GCC_REQD+= 4.8
Update to 1.18.2 * This package requires gcc 4.7 later from pkgsrc Changelog: aria2 1.18.2 ============ Release Note ------------ This release fixes the wrong handling of return value of fork(), which leads to high CPU usage. The progress readout has some color output. Mingw32 build now receives colorized output. Mingw32 build now can read unicode command-line arguments. The build script of OSX was rewritten. The --bt-max-open-files now limits the number of opened file globally for multi-file downloads instead of per download basis. Changes ------- * Remove the outdated, broken build_osx_release.sh * Initial revision of the a new OSX release Makefile * Allow using libgmp with AppleTLS/WinTLS * Fix crash when metaurl contains unsupported URI or text * Fix bad fork() return value handling * Use some colors in progress reports (where available) * Implement basic color support for the Windows console Only \033[*m (SGR) is supported, with a 16+16 color terminal. * AppleTLS: Implement PKCS12 loading. * Limit number of opened file globally with --bt-max-open-files option This change changes the behavior of --bt-max-open-files. Previously, it specifies the maximum number of opened files for each multi-file download. Since it is more useful to limit the number globally, the option now specifies the global limit. This change suggests that aria2.changeOption() method now ignores --bt-max-open-files and aria2.changeGlobalOption now reads it and dynamically change the limit. * Don't fail multiple concurrent dl same file if auto-file-renaming is enabled * mingw32: Use CommandLineToArgvW() and GetCommandLineW() to read cmd-line args This change enables aria2 to read unicode characters in command-line. aria2 1.18.1 ============ Release Note ------------ This release fixes the percent-encoding bug which affects file name encodings. It adds PKCS12 support in certificate import. It also adds experimental internal implementation of message digest functions, ARC4 cipher and bignum. It means that no external libraries are required to build BitTorrent support, but this feature is still marked as experimental. This release also fixes the android build with NDK r9. Changes ------- * LibsslTLSContext: Remove weak cipher suite * AppleTLS: Enable --certificate * util::percentEncodeMini: Fix regression bug removed unsignedness srange-based for around std::string is convenient but several functions depend unsigned char for correctness and readability. * Log exception; throw error if loading private key and/or certificate failed * Provide internal ARC4 implementation Now you can build bittorrent support without without external libraries, meaning you can skip libnettle, libgmp, libgcrypt, GnuTLS and OpenSSL on OSX (for now). * Internal implementation of DHKeyExchange Reusing a bignum (well, unsigned very-long) implementation I had lying around for years and just cleaned up a bit and brought to C++11 land. It might not be the most performant implementation, but it shoud be fast enough for our purposes and will go a long way of removing gcrypt, nettle, gmp, openssl dependencies when using AppleTLS and WinTLS (upcoming). * PKCS12 support in --certificate and --rpc-certificate options. * Add --disable-ssl configure option * Add internal md5 and sha1 message digests * Fix AppleMessageDigestImpl use with large data * Set old cookie's creation-time to new cookie on replacement As described in http://tools.ietf.org/html/rfc6265#section-5.3 * Fix link error with Android NDK r9 Since Android ndk r9, __set_errno is deprecated. It is now defined as inline function in errno.h. The syscall assembly calls __set_errno, but since libc.so does not export it, the link fails. To workaround this, replace all occurrences of __set_errno with a2_set_errno and define it as normal C function. aria2 1.18.0 ============ Release Note ------------ This release changes the default disk cache size to 16 MiB. To change the default size, --with-disk-cache configure option was added. Now used URIs are also saved by --save-session option. The control file is now always saved if --force-save is given. The ctrl-c handling on Mingw build was improved. The internal intl library is no longer supplied. From this release, C++11 compiler is required to build aria2 executable. For gcc, at least 4.6.3 is required. Changes ------- * Use AM subdir-objects Doing so in AM_INIT_AUTOMAKE seems to be the most compatible way of doing so. Closes GH-120 * AM_SILENT_RULES([yes]) with backwards-compatiblity Supported since automake-1.11. There is no point in having the very verbose compile stuff running about, which cannot even silenced properly with `make -s` by default. Otherwise, `make V=1` or `--disable-silent-rules` are your friends * Fix automake-1.14 am_aux_dir AC_USE_SYSTEM_EXTENSIONS will cause AC_PROG_CC, which is overridden by automake-1.14, which will then init (part) of automake, in particular am_aux_dir expansion, which in turn relies on ac_aux-dir, which is not initialized at this point, and thus: certain doom (or fun, depending on your POV and mood :p) Hence call AC_USE_SYSTEM_EXTENSIONS only after AM_INIT_AUTOMAKE. This, of course, caused a lot of related macro shuffling. Tested against automake-1.10 (OSX Lion/XCode version) and automake-1.14 (homebrew version) * Require external gettext for --enable-nls And stop using the internal flavor with ./intl * Make AX_CXX_COMPILE_STDCXX_11 test for -stdlib=libc++ via std::shared_ptr The clang shipped with OSX XCode and clangs not build enabling libcpp, will default to the libstdc++ headers and lib installed on the system. In the OSX case, that libstdc++ is the one bundles with gcc-4.2, which is far too old to provide all required C++11 types, such as std::shared_ptr. Hence, the C++11 check should try to compile a program with a C++11 type and try -stdlib=libc++ if the default lib fails to compile said program. * Make the configure check for C++11 compiler mandatory Remove stray "dnl", so that mandatory actually works with (my) autoreconf. * Always build doc/manual-src Should sphinx-build be not available AND the man file not be prsent, then just "touch" it into existence (and warn about that) * Win: Use SetConsoleCtrlHandler for SIGINT/SIGTERM * Implement a simple resource lock (threading) In this initial implementation Locks are no-ops on platforms other than Windows. * Check for sphinx-build during configure * Add --with-disk-cache configure option Enables packagers more fine grained control over the default value without having to mess with config files. See GH-115 * Change defaults: Enable 16M disk cache by default. * Always save control file if --force-save is given * Set log level DEBUG for unittests * Check that C++ compiler supports override keyword If the compiler supports override, define CXX11_OVERRIDE as override, otherwise define it as empty. Use CXX11_OVERRIDE instead of override. * AppleTLS: Fix MessageDigestImpl * AppleTLS: Fix session CFRelease stuff * Use AX_CXX_COMPILE_STDCXX_11 macro to detect C++0x/C++11 support in compiler * Require -std=c++11 and use std::shared_ptr instead of SharedHandle * Join URI on redirect * Send HAVE message to the peer which the piece is downloaded from Historically, aria2 did not send HAVE message to the peer which the piece is coming from, thinking it is obvious that the peer knows we have the piece. But it is not obvious if one piece is download from more than 1 peers (e.g., end game mode). So it is better to send HAVE to all peers connected. * Improvements to --follow-torrent=false documentation. Patch from gt * SessionSerializer: Truly unique URIs Before, only spent uris where sanitized not to be contained within remaining uris. Change this so that each uri in the union(remaining,spent) get saved once at most. The order of the uris will won't be changed, with remaining uris going first followed by spent uris. Also avoid copying the uri std::strings around during dupe checking, usually resulting in better performance regarding CPU and space. * Make getOption RPC method return option for stopped downloads * SessionSerializer: Save spent URIs as well as remaining ones
2014-01-08 17:32:30 +01:00
USE_LANGUAGES= c c++
USE_LIBTOOL= yes
Update to version 0.13.1+2. This update includes myriad bug fixes and feature enhancements--way too many for this commit message. While here, deprecate aria2-metalink option. Aria2 now supports building with libexpat, so we do that by default now. Some of the more significant changes: ------------------------------------- * Fixed compile error without gnutls/libgcrypt/libgpg-error and openSSL installed. Fixed compilation on: x84-64 platform, Mac OSX, g++-4.3, and without c-ares/ares. * Added Simplified Chinese translation. Also updated the following translations: Polish, Dutch, German, Thai, Indonesian, Norwegian Nynorsk, Hungarian, Finnish, Hebrew. * Changed inactive connection timeout to 120. To accept more mulually interested peers, disconnect peer when there is no interest between us after certain time passed. Lengthened DNS timeout to 30. I think old value '10' will be a little bit short when some DNS servers are offline and several DNS servers are tried. It should be configured by command-line option. * Fixed the bug that prevents aria2 from stopping other than by pressing Ctrl-C in BitTorrent download. It is reproducible using --seed-time option. aria2 doesn't stop even after --seed-time is satisfied and continues to output blank lines in the console. * Added Message Stream Encryption(MSE) support. Currently, aria2 accepts incoming connections with Obfuscation Header and legacy BitTorrent Header and establishes connections with Obfuscation Header first and if failed then retry with legacy BitTorrent header. If plain text and ARC4 is provided, aria2 always choose ARC4. The new option to change the default behavior is planned. For tracker extension, "supportcrypto=1" is added statically. * Added the ability to load nodes from torrent file. These nodes are added to the routing table when downloading that torrent. * Added the ability to stop aria2 itself when given time has passed from start. Use --stop option to specify time in minutes. When 0 is given, this feature is disabled. before calling RequestGroupMan::fillRequestGroupFromReserver(). Without this modification, the result list shows "ERR" when aria2 is stopped by --stop option. It should be "INPR". Bootstrap through node added by port message. Currently bootstrap is executed if the number of buckets in routing table is 1. * Added DHT functionality, compatible with mainline. DHT is disabled by default. To enable it, give --enable-dht to aria2c. You may need to specify entry point to DHT network using --dht-entry-point. DHT uses UDP port to listen incoming message. Use --dht-listen-port to specify port number. Make sure that your firewall configuration can pass through UDP traffic to the port. The routing table is saved in $HOME/.aria2/dht.dat. Request peers though DHT only when download hasn't finished.
2008-04-16 02:09:39 +02:00
USE_PKGLOCALEDIR= yes
USE_TOOLS+= bison msgfmt msgmerge xgettext
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --enable-bittorrent
Update to version 0.13.1+2. This update includes myriad bug fixes and feature enhancements--way too many for this commit message. While here, deprecate aria2-metalink option. Aria2 now supports building with libexpat, so we do that by default now. Some of the more significant changes: ------------------------------------- * Fixed compile error without gnutls/libgcrypt/libgpg-error and openSSL installed. Fixed compilation on: x84-64 platform, Mac OSX, g++-4.3, and without c-ares/ares. * Added Simplified Chinese translation. Also updated the following translations: Polish, Dutch, German, Thai, Indonesian, Norwegian Nynorsk, Hungarian, Finnish, Hebrew. * Changed inactive connection timeout to 120. To accept more mulually interested peers, disconnect peer when there is no interest between us after certain time passed. Lengthened DNS timeout to 30. I think old value '10' will be a little bit short when some DNS servers are offline and several DNS servers are tried. It should be configured by command-line option. * Fixed the bug that prevents aria2 from stopping other than by pressing Ctrl-C in BitTorrent download. It is reproducible using --seed-time option. aria2 doesn't stop even after --seed-time is satisfied and continues to output blank lines in the console. * Added Message Stream Encryption(MSE) support. Currently, aria2 accepts incoming connections with Obfuscation Header and legacy BitTorrent Header and establishes connections with Obfuscation Header first and if failed then retry with legacy BitTorrent header. If plain text and ARC4 is provided, aria2 always choose ARC4. The new option to change the default behavior is planned. For tracker extension, "supportcrypto=1" is added statically. * Added the ability to load nodes from torrent file. These nodes are added to the routing table when downloading that torrent. * Added the ability to stop aria2 itself when given time has passed from start. Use --stop option to specify time in minutes. When 0 is given, this feature is disabled. before calling RequestGroupMan::fillRequestGroupFromReserver(). Without this modification, the result list shows "ERR" when aria2 is stopped by --stop option. It should be "INPR". Bootstrap through node added by port message. Currently bootstrap is executed if the number of buckets in routing table is 1. * Added DHT functionality, compatible with mainline. DHT is disabled by default. To enable it, give --enable-dht to aria2c. You may need to specify entry point to DHT network using --dht-entry-point. DHT uses UDP port to listen incoming message. Use --dht-listen-port to specify port number. Make sure that your firewall configuration can pass through UDP traffic to the port. The routing table is saved in $HOME/.aria2/dht.dat. Request peers though DHT only when download hasn't finished.
2008-04-16 02:09:39 +02:00
CONFIGURE_ARGS+= --enable-metalink
CONFIGURE_ARGS+= --with-included-gettext=no
Update to version 0.13.1+2. This update includes myriad bug fixes and feature enhancements--way too many for this commit message. While here, deprecate aria2-metalink option. Aria2 now supports building with libexpat, so we do that by default now. Some of the more significant changes: ------------------------------------- * Fixed compile error without gnutls/libgcrypt/libgpg-error and openSSL installed. Fixed compilation on: x84-64 platform, Mac OSX, g++-4.3, and without c-ares/ares. * Added Simplified Chinese translation. Also updated the following translations: Polish, Dutch, German, Thai, Indonesian, Norwegian Nynorsk, Hungarian, Finnish, Hebrew. * Changed inactive connection timeout to 120. To accept more mulually interested peers, disconnect peer when there is no interest between us after certain time passed. Lengthened DNS timeout to 30. I think old value '10' will be a little bit short when some DNS servers are offline and several DNS servers are tried. It should be configured by command-line option. * Fixed the bug that prevents aria2 from stopping other than by pressing Ctrl-C in BitTorrent download. It is reproducible using --seed-time option. aria2 doesn't stop even after --seed-time is satisfied and continues to output blank lines in the console. * Added Message Stream Encryption(MSE) support. Currently, aria2 accepts incoming connections with Obfuscation Header and legacy BitTorrent Header and establishes connections with Obfuscation Header first and if failed then retry with legacy BitTorrent header. If plain text and ARC4 is provided, aria2 always choose ARC4. The new option to change the default behavior is planned. For tracker extension, "supportcrypto=1" is added statically. * Added the ability to load nodes from torrent file. These nodes are added to the routing table when downloading that torrent. * Added the ability to stop aria2 itself when given time has passed from start. Use --stop option to specify time in minutes. When 0 is given, this feature is disabled. before calling RequestGroupMan::fillRequestGroupFromReserver(). Without this modification, the result list shows "ERR" when aria2 is stopped by --stop option. It should be "INPR". Bootstrap through node added by port message. Currently bootstrap is executed if the number of buckets in routing table is 1. * Added DHT functionality, compatible with mainline. DHT is disabled by default. To enable it, give --enable-dht to aria2c. You may need to specify entry point to DHT network using --dht-entry-point. DHT uses UDP port to listen incoming message. Use --dht-listen-port to specify port number. Make sure that your firewall configuration can pass through UDP traffic to the port. The routing table is saved in $HOME/.aria2/dht.dat. Request peers though DHT only when download hasn't finished.
2008-04-16 02:09:39 +02:00
CONFIGURE_ARGS+= --with-libexpat
CONFIGURE_ARGS+= --without-libxml2
CONFIGURE_ARGS.SunOS+= --disable-epoll
TEST_TARGET= check
USE_FEATURES= getopt_long snprintf
.include "../../mk/compiler.mk"
.if !empty(PKGSRC_RUN_TEST:M[Yy][Ee][Ss])
BUILDLINK_DEPMETHOD.cppunit= build
BUILDLINK_API_DEPENDS.cppunit+= cppunit>=1.10.2
. include "../../devel/cppunit/buildlink3.mk"
.else
CONFIGURE_ARGS+= --disable-xmltest
.endif
Update to version 0.13.1+2. This update includes myriad bug fixes and feature enhancements--way too many for this commit message. While here, deprecate aria2-metalink option. Aria2 now supports building with libexpat, so we do that by default now. Some of the more significant changes: ------------------------------------- * Fixed compile error without gnutls/libgcrypt/libgpg-error and openSSL installed. Fixed compilation on: x84-64 platform, Mac OSX, g++-4.3, and without c-ares/ares. * Added Simplified Chinese translation. Also updated the following translations: Polish, Dutch, German, Thai, Indonesian, Norwegian Nynorsk, Hungarian, Finnish, Hebrew. * Changed inactive connection timeout to 120. To accept more mulually interested peers, disconnect peer when there is no interest between us after certain time passed. Lengthened DNS timeout to 30. I think old value '10' will be a little bit short when some DNS servers are offline and several DNS servers are tried. It should be configured by command-line option. * Fixed the bug that prevents aria2 from stopping other than by pressing Ctrl-C in BitTorrent download. It is reproducible using --seed-time option. aria2 doesn't stop even after --seed-time is satisfied and continues to output blank lines in the console. * Added Message Stream Encryption(MSE) support. Currently, aria2 accepts incoming connections with Obfuscation Header and legacy BitTorrent Header and establishes connections with Obfuscation Header first and if failed then retry with legacy BitTorrent header. If plain text and ARC4 is provided, aria2 always choose ARC4. The new option to change the default behavior is planned. For tracker extension, "supportcrypto=1" is added statically. * Added the ability to load nodes from torrent file. These nodes are added to the routing table when downloading that torrent. * Added the ability to stop aria2 itself when given time has passed from start. Use --stop option to specify time in minutes. When 0 is given, this feature is disabled. before calling RequestGroupMan::fillRequestGroupFromReserver(). Without this modification, the result list shows "ERR" when aria2 is stopped by --stop option. It should be "INPR". Bootstrap through node added by port message. Currently bootstrap is executed if the number of buckets in routing table is 1. * Added DHT functionality, compatible with mainline. DHT is disabled by default. To enable it, give --enable-dht to aria2c. You may need to specify entry point to DHT network using --dht-entry-point. DHT uses UDP port to listen incoming message. Use --dht-listen-port to specify port number. Make sure that your firewall configuration can pass through UDP traffic to the port. The routing table is saved in $HOME/.aria2/dht.dat. Request peers though DHT only when download hasn't finished.
2008-04-16 02:09:39 +02:00
.include "options.mk"
.include "../../converters/libiconv/buildlink3.mk"
Update to version 0.15.2. This release features extensive bug fixes and significant feature enhancements; it also now builds on OpenSolaris (tested with NexentaOS by development community). I urge all users to upgrade. A _partial_ list of changes: - Added and/or updated Danish, Greek, Spanish, Catalan, Norwegian Nynorsk, Bulgarian, French, Catalan, and Japanese translations. - Man page fixes. - Fixed: numCommand is less than the value specified in -C option. - Myriad bug fixes. - Now uses name attribute in Metalink as local filename in BitTorrent downloads. BUG#2033999 - Fixed memory leaks in test code. - Fixed wrong argument passing to BitfieldMan::isBitSet() - Initialized _directIOAllowed - Fixed memory leak in gzip decoder and metalink parser state machine. - Plug many other memory leaks and fix unmatch malloc/free calls. - Removed max chunk size check. This change fixes BUG#2040169 - Fixed the bug that causes segmentaion fault when resuming download using metalink without size tag. Reproducible only using HTTP URI. - Removed writable check when socket's send buffer is full in BitTorrent downloads to lower CPU usage. - Fixed broken gzip inflation. Turn off segmented downloading if gzip content is smaller than or equal to 1MiB and inflate the data on the fly, because HTTP response header doesn't contain the length of inflated file we can't determin where the chunk of data should be written. On the other hand, if gzip content is larger than 1MB, then turn off on the fly inflation, because some servers returns "content-type: gzip" for *.tgz, *.gz files. - Added gzip decompressor via libz. - Cache last calculated average download/upload speed. - Supported absolute/relative path in Location header field. - Use File::exists() instead of File::isFile() to allow non- regular file such as block special files. - Added a message "aria2 doesn't verify signature" to log message when signature file is saved. - Added the ability to save signature when download is completed if signature is available. The filename of signature file is the path to download file followed by ".sig". If it already exists, then signature will not be saved. - Improve accuracy of documentation and rename some options to be more descriptive of their functions/purposes. - Added the ability to retrieve signature from Metalink file. A retrieved signature is stored in Signature class and it is held by DownloadContext class. Note that aria2 doesn't verify signature. - Added --bt-seed option. If --bt-seed=true is given at the command-line, aria2 seeds previously downloaded files without validating piece hashes. - Fixed the compile error on Nexenta OS(GNU/Solaris OS). (Don't define `struct addrinfo' when __sun is defined) - Fixed the bug that UTF-8 encoded URL is not URL-encoded - Properly differentiate between ftp errors and actual zero-byte files (now supports ftp servers which do not recognize SIZE raw command).
2008-08-19 16:41:58 +02:00
.include "../../devel/zlib/buildlink3.mk"
.include "../../net/libcares/buildlink3.mk"
Update to version 0.13.1+2. This update includes myriad bug fixes and feature enhancements--way too many for this commit message. While here, deprecate aria2-metalink option. Aria2 now supports building with libexpat, so we do that by default now. Some of the more significant changes: ------------------------------------- * Fixed compile error without gnutls/libgcrypt/libgpg-error and openSSL installed. Fixed compilation on: x84-64 platform, Mac OSX, g++-4.3, and without c-ares/ares. * Added Simplified Chinese translation. Also updated the following translations: Polish, Dutch, German, Thai, Indonesian, Norwegian Nynorsk, Hungarian, Finnish, Hebrew. * Changed inactive connection timeout to 120. To accept more mulually interested peers, disconnect peer when there is no interest between us after certain time passed. Lengthened DNS timeout to 30. I think old value '10' will be a little bit short when some DNS servers are offline and several DNS servers are tried. It should be configured by command-line option. * Fixed the bug that prevents aria2 from stopping other than by pressing Ctrl-C in BitTorrent download. It is reproducible using --seed-time option. aria2 doesn't stop even after --seed-time is satisfied and continues to output blank lines in the console. * Added Message Stream Encryption(MSE) support. Currently, aria2 accepts incoming connections with Obfuscation Header and legacy BitTorrent Header and establishes connections with Obfuscation Header first and if failed then retry with legacy BitTorrent header. If plain text and ARC4 is provided, aria2 always choose ARC4. The new option to change the default behavior is planned. For tracker extension, "supportcrypto=1" is added statically. * Added the ability to load nodes from torrent file. These nodes are added to the routing table when downloading that torrent. * Added the ability to stop aria2 itself when given time has passed from start. Use --stop option to specify time in minutes. When 0 is given, this feature is disabled. before calling RequestGroupMan::fillRequestGroupFromReserver(). Without this modification, the result list shows "ERR" when aria2 is stopped by --stop option. It should be "INPR". Bootstrap through node added by port message. Currently bootstrap is executed if the number of buckets in routing table is 1. * Added DHT functionality, compatible with mainline. DHT is disabled by default. To enable it, give --enable-dht to aria2c. You may need to specify entry point to DHT network using --dht-entry-point. DHT uses UDP port to listen incoming message. Use --dht-listen-port to specify port number. Make sure that your firewall configuration can pass through UDP traffic to the port. The routing table is saved in $HOME/.aria2/dht.dat. Request peers though DHT only when download hasn't finished.
2008-04-16 02:09:39 +02:00
.include "../../textproc/expat/buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"