Commit graph

68 commits

Author SHA1 Message Date
tron
4afb5cd5b6 Attempt to fix build problems of "rtorretn" on 32bit platforms like
Linux/i586 or NetBSD/i386.
2014-11-04 08:36:17 +00:00
tron
5bc46dd7a7 Update libtorrent to version 0.13.4 and rtorrent to version 0.9.4.
A list of changes is not available unfortunately. But the update seems
to prevent crashes with a message like this one:

rtorrent: Read past initial payload after incoming encrypted handshake
2014-06-15 22:44:15 +00:00
tron
73d05e2276 Recursive PKGREVISION bump for OpenSSL API version bump. 2014-02-12 23:17:32 +00:00
joerg
f16b7e6c9e Restore support for Clang with libc++11. Bump revision. 2013-09-18 16:32:05 +00:00
tron
4ffbc0e83e Back out all of the C++11 related patches. They don't only break the
build under Mac OS X but also under NetBSD/amd64 6.1 with the default
G++ compiler.

This fixes PR pkg/47873 by myself.
2013-06-02 22:52:14 +00:00
tron
c18e683be8 Fix build problems under Mac OS X Lion (and possibly other platforms that
use GCC 4.1.x) caused by unapproved C++11/TR1 patches.
2013-05-12 11:30:13 +00:00
joerg
67e2821b85 Link libtorrent against libcrypto as it uses various functions from it.
Fix C++11 vs TR1 usage. Bump revision.
2013-05-09 14:26:41 +00:00
jperkin
becd113253 PKGREVISION bumps for the security/openssl 1.0.1d update. 2013-02-06 23:20:50 +00:00
asau
e059e7e469 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-23 17:18:07 +00:00
tron
2780edb8d5 Compile with GCC option "-march=i486" on x86 systems to make the required
function "__sync_bool_compare_and_swap_4" available. This fixes the build
of the "rtorrent" package under NetBSD/i386 5.1_STABLE.
2012-07-02 07:01:51 +00:00
tron
b85a1db87f Update "libtorrent" package to version 0.13.2 and "rtorrent" package
to version 0.9.2.

A list of changes is not available unfortunately. But it seems that most
of the Solaris related build fixes have been integrated.
2012-05-16 17:42:37 +00:00
tron
eb65fab3a3 Improve GCC version handling:
1.) Set minimum required GCC version to 4.1.3 because that is what has
    been tested. Based on the bug-report it also seems that GCC 4.0.1
    doesn't work.
2.) GCC 4.1.3 (as distributed with NetBSD 5.*) works fine under
    NetBSD/macppc as reported by Matthias Kretschmer on IRCnet.
    So don't insist on GCC 4.2.1 for this platform. This fixes seems
    to fix the build as the GCC 4.4.6 package doesn't build for
    this platform.
2012-01-11 22:41:46 +00:00
hans
b326ae8502 Libtorrent and rtorrent need gcc>=4.2.1, at least on some architectures.
Explicitly exclude architectures known to work with older gcc versions
(alpha, i386 and x86_64 for now). Ok by tron.
2011-11-07 13:10:31 +00:00
tron
a7b5f8860d Back out last change. The package builds and works fine with GCC 4.1.3
under NetBSD/amd64 5.1_STABLE.

This change was also not approved by the owner of the package.
2011-11-06 13:42:21 +00:00
hans
4cb852ca19 libtorrent and rtorrent need gcc>=4.2.1 (http://libtorrent.rakshasa.no/ticket/2088)
Fixes a build problem seen on NetBSD/sparc64 5.x
2011-11-04 18:15:30 +00:00
tron
e8248761fe The "rtorrent" packges needs at least version 0.12.9 of the "libtorrent"
package. As the former is the only user of the later bump both the
minium ABI and API version.

Problem reported by Aleksey Cheusov in private e-mail.
2011-08-01 21:42:45 +00:00
tron
afa27f5857 Update "libtorrent" package to version 0.12.9 and "rtorrent" package
to version 0.8.9. Changes since version 0.12.6 respectively 0.8.6:
- Added multithreading support for XMLRPC calls. Sponsored by Xirvik.
- Discard dht cache if it is corrupt, instead of killing rtorrent.
- Better handling of resume after crash/reboot alliviating the need to
  full hash checks. Sponsored by anonymous source.
- Added support for Linux's fallocate and Darwin's
  fcntl(...,F_PREALLOCATE,...) to preallocate files by default. The
  'system.file_allocate' setting will now only be used to indicate you
  want posix_fallocate called, which may block while it zeros out the
  file manually.
- Added 'event.download.hash_failed' and 'event.download.hash_final_failed'.
- Cleaning up command names. The deprecated commands will be redirected.
- Renamed 'system.method.*' to 'method.*'.
- Added 'system.files.{opened,closed,failed}_counter' commands.
- Added xmlrpc calls for peer snubbed, banned and disconnect.
- Added '-D' flag which turns of redirects for deprecated commands.
  Use this to ensure your scripts/webui's will be compatible with future
  releases.
- Added separate '-I' and '-K' switches for command redirects, the
  former is for testing rtorrent code, the latter for webui's.
- Added a static_map implementation based on Josef's patches.
- Commited the DHT changes from dht-pex-static_map.diff with changes
  so it works with the modified static_map implementation.
- Applied the magnet-uri patch.
- Don't install the out-of-date man page.
- Added 'execute.*.bg' commands for non-blocking calls. Always returns 0.
- Added support for prioritizing first/last chunk of files matching
  specified patterns. Default:
  file.prioritize_toc.set=0
  file.prioritize_toc.first.set = {*.avi,*.mp4,*.mkv,*.gz}
  file.prioritize_toc.last.set  = {*.zip}
- Added 'method.rlookup' and 'method.rlookup.clear' commands for looking
  up the event handlers holding a specified key, and set views to support
  rlookup.
- Added 'd.timestamp.finished' that is set when a downloading torrent
  completes. For torrents that only seed it remains '0'.
- Added 'elapsed.{less,greater}' for checking the time elapsed since a
  time is less/greater, and it also returns false in all cases where
  the time is '0'.
- Moved the default value for 'system.files.max_size' to rtorrent, and
  set the default in libtorrent to ~0.
- Increased the default values for min/max_peers and max_uploads.
- Fixed a bug that would cause hash checking to block excessively in some
  cases.
- Fixed a bug when setting the pex flags.
- Fixed an issue where DHT's hashing function for TR1 unordered_map was
  casting unaligned size_t pointers.
- Fixed default session name.
- Added a missing inline that could cause linking errors.
2011-07-30 17:06:33 +00:00
jakllsch
a512df4ce6 libtorrent strict alignment configure check is fooled by trap & emulate
of unaligned access on alpha, enable strict alignment explicitly on alpha.
bump rev.
2010-06-16 13:07:03 +00:00
wiz
579796a3e5 Recursive PKGREVISION bump for jpeg update to 8. 2010-01-17 12:02:03 +00:00
snj
cf0644fe2d Update libtorrent to 0.12.6 and rtorrent to 0.8.6.
Changes:
- Added a simple scheduler framework.
- Don't send numwant in STOPPED messages as some trackers are stupid about
  it.
- Reintroduced clearing of epoll event list when a socket is closed as
  it might cause race conditions.
- Added cppUnit test framework. Tests will be added on rather unregular
  basis.
- Logging for SCGI calls.
- Fixed handling of errors when writing out session torrents, it should
  no longer hit an infinite loop.
- Fixed a bug that would cause reading of a piece to hang rtorrent if
  the incoming data contains only data up to a file boundary, but not
  the next file's data.
- Fixes a file handle leak in the execute_capture functions.
- Fixed crash on empty bitfield in 'd.bitfield'.
- Fixed the Object::flag_unordered code to handle initial zero-length
  keys. Ticket #1950.
- Made torrent::Rate::rate_type uint64_t and added sanity checks due to
  reports of bad download/upload values being reported to some trackers.

OK tron@ wiz@
2010-01-01 19:36:31 +00:00
tron
fdfa741b07 Update "libtorrent" and "rtorrent" package to version 0.12.5/0.8.5:
- Add support for any number of custom download values identified by
  string keys.
  d.set_custom=key,value
  d.get_custom=key (returns "" if not set)
  d.get_custom_throw=key (returns error if not set)
- With this patch, rtorrent will detect and complain about .torrent
  files with broken bencode representation (e.g. where the order of
  dictionary keys is not lexicographic).
- Choose a different poll type using the RTORRENT_POLL env. variable
  (if it's implemented), probably only useful as RTORRENT_POLL=select.
- Add the commands execute_capture and execute_capture_nothrow that
  work like their other counterparts but return the OUTPUT (stdout) of
  the given command.
- Fixes the code that detects which peer was sending bad data. Peers
  are then automatically banned after sending three bad chunks.
- Stops rtorrent from always creating and resizing ALL files, even
  those set to "off". Files will still be created, but with a size of
  zero, until a part of them is getting downloaded. This helps with
  filesystems that don't support sparse files (such as FAT, HFS+, and
  others).
- Fix inefficient piece distribution due to linear chunk request
  strategy by randomizing position every few (on average 32) chunks, see
  ticket #190.
- Enable custom throttles, both per-download or per-IP. See
  http://libtorrent.rakshasa.no/ticket/20 for info and instructions.
- Fix crashes/errors due to rtorrent attempting to pass non-utf-8
  strings to xmlrpc.
- Added support for using posix_fallocate on newly resized files.
- Include locally available chunks in the "chunks seen" statistics for
  completed/distributed copies. Patch by Josef Drexler.
- Added 'd.get_bitfield' command for retrieving the bitfield in hex
  format. Patch by Thomas Rosner.
- Fixed include headers for gcc-4.4.0. Patch by 'kloeri'.
2009-10-29 11:42:30 +00:00
tron
7220bfbb57 Update "libtorrent" package to version 0.12.4 and "rtorrent" package
to version 0.8.4. Changes since 0.12.2 respectively 0.8.2:
- Fixed EINTR handling in execute command.
- Fixed a couple of memory leaks in xmlrpc.cc.
- Initial seeding support added.
- Added a work-around for the stdin kqueue bug in MacOSX.
- Numerous bug-fixes and patches.
- Work-around for OpenBSD's broken sys/event.h, which fails to compile
  if it's the first (or only) included header. (Ticket #1470)
- Fixes compilation with old libcurl versions. (Ticket #1471)
- Fix compile error on systems that lack mincore(2).
- Fixes a crash in epoll due to libcurl/c-ares bug:
  PollEPoll::modify(...) epoll_ctl call failed.
- Enforce an http transfer timeout when libcurl fails to honor
  it. Also set a 5-minute timeout for (previously unlimited) torrent
  transfers and fixes the argument type for curl_easy_setopt values.
- Allows bandwidth throttles to work without floating point support.
- Added the 'd.add_peer=host[:port]' command to manually add a peer
  (not for torrents marked "private"), port 6881 is the default.
- Allows banning the selected peer with "B". No unbanning is possible
  yet.
- Added system.method.{insert,erase} commands that allows
  user-specified commands. E.g "system.method.insert=foo,print=Bar".
- Differentiate between commands that have no target, and those that
  take generic targets, when using XMLRPC.
- Added 'event.download.inserted_{new,session}' that are triggered
  when a new or a session torrent is added. Ticket #1516.
- Added 'system.method.get', 'ui.current_view.set' and 'group.insert'
  commands.
- Enabled different ratio settings for different groups of
  downloads.
- Added 'view.persistance' command that makes downloads inserted into
  that view persist across sessions. Only call on user-created views.
- Added 'ratio.*' commands that call the 'group.seeding.ratio.*'
  equivalents.
- Changed torrent::DownloadList::close_directly() so doesn't save the
  session if the underlying file/directory has been moved or
  removed. This change, in addition to calling 'd.set_directory=' before
  'execute=mv,...', as previously shown in the examples, will make
  rtorrent behave correctly when 'check_hash=no' is set.
2009-07-09 10:42:28 +00:00
joerg
62d1ba2bac Remove @dirrm entries from PLISTs 2009-06-14 18:03:28 +00:00
tron
0c08e53a2a Add URL of upstream bug report. 2009-06-04 19:23:51 +00:00
tron
a904e7d5f0 Add patch by Joerg Sonnenberger with small modification by myself that
addresses the API difference in kqueue(2) between NetBSD and FreeBSD.
Turn on kqueue(2) support now that it actually works under NetBSD.
2009-06-04 19:15:46 +00:00
tron
6a220763c1 Turn on kqueue(2) support under DragonFly, FreeBSD and OpenBSD.
It is not turned on under NetBSD because the kqueue(2) API is incompatible.
It is not turned on under Darwin because kevent(2) fails with ENODEV.

This fixes PR pkg/41529 by Mikko Kortelainen.
2009-06-04 14:04:08 +00:00
wiz
60f460ab01 Use standard location for LICENSE line (in MAINTAINER/HOMEPAGE/COMMENT
block). Uncomment some commented out LICENSE lines while here.
2009-05-19 08:59:00 +00:00
tron
8d87aa23a5 Add two patches taken from "xnet.fi" to fix the build under SunOS 5.11
(and eventually older versions). Problem reported by Tom Hensel in
private e-mail.
2009-04-10 09:06:20 +00:00
joerg
2d1ba244e9 Simply and speed up buildlink3.mk files and processing.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
2009-03-20 19:23:50 +00:00
tron
4467a2649c Update "libtorrent" to version 0.12.2 and "rtorrent" to version 0.8.2
Changes since version 0.11.9 respectively 0.7.9:
- Support for DHT.
- Cleanup and refactoring of the API.
- Enable PEX by default.
- A lot of bug fixes and minor improvements
2008-12-03 12:57:40 +00:00
tron
9ba46c0fc4 Fix indentation. 2008-05-25 20:49:39 +00:00
tron
5653b15d71 Remove me as maintainer of some package, clame ownership of a few packages. 2008-05-25 14:45:16 +00:00
tnn
ad6ceadd25 Per the process outlined in revbump(1), perform a recursive revbump
on packages that are affected by the switch from the openssl 0.9.7
branch to the 0.9.8 branch. ok jlam@
2008-01-18 05:06:18 +00:00
tron
24eb420373 Update "libtorrent" package to version 0.11.9 and "rtorrent" package
to version 0.7.9. Changes since 0.11.8 respectively 0.7.8:
- Improved detection of unnecessary handshakes to decrease the load when
  using PEX.
- Limit the number of PEX connections to 8 per download.
- Fixed several bugs in PEX.
- Fixed several sigc++ 2.1 compile errors.
- Print to the log when close_on_diskspace gets triggered.

This is not a stable version. The update was however necessary after
the premature update of the "libsigc++" package which broke the build
of these packages.
2007-11-23 09:49:04 +00:00
tron
4b8a89c9f4 Update "libtorrent" package to version 0.11.8 and "rtorrent" package
to version 0.7.8. Changes since version 0.11.7/0.7.7:
- Several new commands for use with XMLRPC. See the SVN log for a
  complete list.
- Fixed the wrong tracker requests being sent when finishing a torrent.
- Added Peer Exchange support, enable with the "peer_exchange=yes"
  option.
- Don't skip the last line in rc files missing the final newline.
- The torrent is no longer closed on finished for on_finished commands
  as it did last release. Instead d.set_directory causes the download to
  call close_directly to allow moving of finished torrents.
- Added "close_on_ratio".
- Allow commands to be appended to "{stop,close}_on_ratio", so you can
  e.g. erase a torrent that has finished.
- Set "encryption=allow_incoming,prefer_plaintext,enable_retry" by default.
2007-11-06 21:38:07 +00:00
wiz
3528e06345 Fix paths for GConf, libglade, libart, libsigc++, lablgtk moves.
Bump PKGREVISION.
2007-09-21 13:03:25 +00:00
tron
a5b36fa336 Update "libtorrent" package to version 0.11.7 and "rtorrent" package
to version 0.7.7. Changes since version 0.11.6/0.7.6:
- Renamed all commands to from e.g "get_d_*" to "d.get_*". Remember to
  update your rc file.
- Removed support for appending multiple commands to 'schedule'.
  Multiple commands must now be quoted, e.g "print=cmd1 ;print=cmd2".
-  Enabled 'max_downloads_div' by default. This should give better
  connection responsiveness if a reasonable download throttle rate is set.
- Added a default low_diskspace check for 500MB. It is scheduled with
  the id "low_diskspace".
- Allow lists as arguments in commands by using '{' and '}'. The list
  will be recursed and all '$' will be called, while '~' will only be
  expanded when in the first element in the list. E.g "execute =
  touch,{~/tmp/,$get_client_version=}".
- Added 'execute_log' for logging the result of calls to 'execute'.
- Dynamically sized SCGI read buffer, system.multicall should work
  properly now.
- Added 'call_download' that takes a view as the first parameter and
  then a list of commands. It will return a list of lists containing the
  results from those commands.
- Allow loading torrents from https and ftp uri's.

A quick release to get new "d.get_*" naming into use before too many
people write XMLRPC clients using the old commands.
2007-09-18 12:35:12 +00:00
tron
4bbc7c25a4 Update "libtorrent" package to 0.11.6 and "rtorrent" package to 0.7.6.
Change since versions 0.11.4 respectively 0.7.4:
- The old option handler has been rewritten.
- Added support for SCGI rpc calls.
- Added "http_ca{path/cert}" options. Patch by Johan Gunnarsson
- Added configure options that allow building universal binaries.
- Fixed a bug that caused piped requests to be lost.
- Improved XMLRPC support, including support for 64bit ints, removed
  defective FastCGI support,
- Added a large number of commands for use with XMLRPC. See
  system.listMethods for a complete list.
- Fixed a bug where the tracker re-announce interval for the previous
  tracker was being used. Now the announce intervals for each tracker is
  stored seperately.
- Commands that pass through rpc::parse_command_* now support inline
  commands that start with a '$'. E.g 'print="$get_ip="'.
- Allow ';' as a separator for multi-command lines. Not recognized by
  the string parser, so it must be preceded by whitespace.
- Allow escaping of newlines in the resource file.
- The "load_*" commands now allow a list of commands to be appended.
  These commands will be called on the newly loaded download.
2007-08-19 18:08:02 +00:00
tron
f0bcb129a6 Update "libtorrent" package to version 0.11.4 and "rtorrent" package
to version 0.7.4. Changes since versions 0.11.1 and 0.7.1 respectively:
- Added "max_open_http" option that limits the max number of simultaneous
  http connections. By default set to 32.
- Directory structured view of the file list. The '/' key collapses
  directories, while the right arrow or ^F enters the selected directory.
  Changing the priority for a directory changes all contained files.
- Added "create_link" and "delete_link" options which apply to a download.
  These must be used with the new "on_*" options, so as to allow you to
  create symbolic links when starting, stopping, finishing, etc, a torrent.
- The "tos" option was parsing the hex value with unit == 0, which caused
  it to always zero it.
- Forgot to check if there were any torrents hashing before starting new
  non-fast-resume checks, which would cause multiple torrents to be hashed
  at once.
- File progress is now updated when hash_check is called, and no longer
  cleared on close. This fixes a bug with >100% file progress being reported
  and optimizes file progress updating for completed torrents.
- Disabled IPv6 http requests so the trackers won't think we support it,
  and enabled curl's support for gzip encodings.
- Added 'seeding' view on key 8.
- Added "max_{up,down}loads_{div,global}" options. See the man page for
  more information.
- Added support for dvorak keyboard layout. Patch by matled at gmx.net.
- The STOPPED request was being canceled when a download was closed with
  f.ex ^K, moved it so it only happens when the download is removed.
- Allow properly quoted and escaped arguments to options. F.ex "schedule
  = wd,10,10,load_start=~/Foo\ Bar/*.torrent" and "schedule =
  wd,10,10,load_start="~/Foo Bar/*.torrent"" now works.
- Added unlimited setting for max unchoked in ChokeManager and made it
  the default. Set with 0 as a temporary hack.
- Don't resize empty files used for creating directories.
2007-04-20 13:37:57 +00:00
tron
8ff7fc8320 Update minimum required version of "libtorrent" package to >=0.11.0. 2007-01-30 14:04:05 +00:00
tron
0d390f4fa3 Update "libtorrent" package to version 0.11.1 and "rtorrent" package to
version 0.7.1. Major changes since 0.10.4/0.6.4:
- support for the CANCEL piece request message
- support for tunneling through HTTP 1.0 proxies
- Azureus-style encryption
2007-01-26 18:48:52 +00:00
tron
725248de0f Fix build under Solaris. Patch provided by Peter Schuller in PR pkg/35356. 2007-01-04 12:45:41 +00:00
tron
1cfb02359b Update "libtorrent" package to version 0.10.4 and "rtorrent" package to
version 0.6.4. Changes since version 0.10.3 and 0.6.4:
- Use the actual completed torrent data in the 'downloaded' field sent to
  the tracker, rather than the download rate total. This should fix some
  problems with too much downloaded data being reported to the tracker.
2006-11-08 09:19:40 +00:00
joerg
aa48c98240 DESTDIR support. 2006-11-05 17:31:09 +00:00
tron
3405645ea4 Update the "libtorrent" package to version 0.10.3 and the "rtorrent"
package to version 0.6.3. Change since version 0.10.2 respectively 0.6.2:
- Didn't properly clean up when a torrent with the same info hash was
  rejected. This caused random crashes and memory leaks.
- Properly cancel pieces that are skipped when downloading.
2006-10-17 12:28:12 +00:00
tron
0497ecbb4e Update "libtorrent" package to version 0.10.2 and "rtorrent" package to
version 0.6.2. Changes since 0.10.1 respectively 0.6.1:
- Rebound the old ^P for commands to ^X due to a collision with up key.
- The ^F and ^B keys can be used instead of left and right arrows.
- Support for qwertz keyboard layout.
- Fixed a bug that caused quick hash checking to mark chunks as
  unfinished if it was unable to map them.
- Peer info with the corrupt upload counter is now saved in the session
  torrent. Uninteresting peers are removed at regular intervals.
- Allow only one connection from a single host. A peer's listening port
  is now kept track of separately from the connection port.
- An integer is used in the session torrent instead of a bitfield when
  either none or all chunks are done.
- Added code for preloading chunks that get mapped, currently disabled.
- When checking how much free disk-space remains, any file or directory
  that is a symlink is tested as they may be on a different mount point.
- Fixed most of the bugs reported.
2006-09-27 20:36:45 +00:00
joerg
e8b4578ed9 Retire propolice hack, it compiles now. Add a small patch to fix
compilation on DragonFly 1.4.
2006-09-18 22:04:52 +00:00
tron
7b74506529 Update "libtorrent" package to version 0.10.1 and "rtorrent" package
to version 0.6.1. Changes since version 0.8.5 respectively 0.4.5 are:
- improved user interface (apparently also fixing redraw problems
  under DragonFly BSD)
- better diskspace handling
- show client names and versions in the peer list
- improved tracker communication
- lots of bug fixes

Based on patches provided by Jan 'Rumko' Kosir in private e-mail.
2006-09-13 21:04:19 +00:00
jlam
c16221a4db Change the format of BUILDLINK_ORDER to contain depth information as well,
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.

For example, "make show-buildlink3" in fonts/Xft2 displays:

	zlib
	fontconfig
	    iconv
	    zlib
	    freetype2
	    expat
	freetype2
	Xrender
	    renderproto
2006-07-08 23:10:35 +00:00
jlam
9430e49307 Track information in a new variable BUILDLINK_ORDER that informs us
of the order in which buildlink3.mk files are (recursively) included
by a package Makefile.
2006-07-08 22:38:58 +00:00