# ChangeLog for net-p2p/mldonkey
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/mldonkey/ChangeLog,v 1.148 2007/04/07 15:47:33 opfer Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-p2p/mldonkey/ChangeLog,v 1.149 2007/04/08 13:14:09 armin76 Exp $
+
+ 08 Apr 2007; Raúl Porcel <armin76@gentoo.org>
+ -files/mldonkey-2.8.2-avoid_dupl_sending.patch, -mldonkey-2.8.2-r1.ebuild:
+ drop old
07 Apr 2007; Christian Faulhammer <opfer@gentoo.org>
mldonkey-2.8.3.ebuild:
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX mldonkey 336 RMD160 e12f193088e91ddb02baa63533115075abea0dae SHA1 11af8f2912799262112feaa52358cc0fd62abb26 SHA256 38392622dd39cd8d73e9a6944593e82e45ec0d12cc0134fb736d443a9b17f3d7
MD5 ac93ed074d62909b2a496045f0740127 files/mldonkey 336
RMD160 e12f193088e91ddb02baa63533115075abea0dae files/mldonkey 336
SHA256 38392622dd39cd8d73e9a6944593e82e45ec0d12cc0134fb736d443a9b17f3d7 files/mldonkey 336
-AUX mldonkey-2.8.2-avoid_dupl_sending.patch 6027 RMD160 1264bbc07351ee770a905ebdc2d3f317f3c25529 SHA1 5d02ee1105716158bd889ec3f413a1dd49c7301e SHA256 c40a3f7a50b86cbb141ab242b57bd257e5ed59e06158adefdc7aac9205632567
-MD5 f99565d33e2f1b174129123816070f2f files/mldonkey-2.8.2-avoid_dupl_sending.patch 6027
-RMD160 1264bbc07351ee770a905ebdc2d3f317f3c25529 files/mldonkey-2.8.2-avoid_dupl_sending.patch 6027
-SHA256 c40a3f7a50b86cbb141ab242b57bd257e5ed59e06158adefdc7aac9205632567 files/mldonkey-2.8.2-avoid_dupl_sending.patch 6027
AUX mldonkey-gui.desktop 263 RMD160 c8da2a5e90446cefe75e93969b975093b2d367b0 SHA1 6e350814866f741ef76389c98df34af22751e164 SHA256 8ba9aec085500abbc7fcf53cf34a61e23a5b68cdc8b4b856f4395a5729608eb9
MD5 93e16748ad44af182177978057266aa7 files/mldonkey-gui.desktop 263
RMD160 c8da2a5e90446cefe75e93969b975093b2d367b0 files/mldonkey-gui.desktop 263
MD5 855aedd7fba1ffe74d7f6c0bce98f45f files/mldonkey.png 6835
RMD160 2ef0cbc5be4de95893b43da0281bd52f5aabb314 files/mldonkey.png 6835
SHA256 c16ecc040b5ea82ed06b04a76c5d7304d7aca2f0854176aa8d78aa90831d8798 files/mldonkey.png 6835
-DIST mldonkey-2.8.2.tar.bz2 2652074 RMD160 ce95184805ac8f4c690e37c75d418b5f7e265f92 SHA1 510fad86b4c83b54a7e8836cec3a3f30d67aed8a SHA256 51efc1c339b8cbafde93f4444f18e4243f41008b1c4107a41602542e9eeaa68e
DIST mldonkey-2.8.3.tar.bz2 2659818 RMD160 4dc9547584c2bcf4de93a2eee420528e6d7b7814 SHA1 6b824a657b08a2fcc030cf2b4f81af8cb181e500 SHA256 454860f3dddd7e72eb97bcb57a7d2aef9b509cf0d989e0dc0c2f5f38b335663f
DIST mldonkey-2.8.4.tar.bz2 2665209 RMD160 729e8018bbf09c8707e37132f6827b469f59faac SHA1 1934efbf900a8a15f47108a27a985e2363b76ffc SHA256 71d069dff71649e98978391158140a54c4e72ad2545e40298d12de4440a98720
-EBUILD mldonkey-2.8.2-r1.ebuild 4746 RMD160 43123bb737ecc9761b7bc8e843a96179449cfffc SHA1 cb5d0e355549e4414a257e37d370c5410b29d968 SHA256 23a7c177fccace57b68570950c43bc7d3f17ba87c6a83c29af876d62ba3aa9a0
-MD5 6bdfed28ef423a60b9c98309b72bffe0 mldonkey-2.8.2-r1.ebuild 4746
-RMD160 43123bb737ecc9761b7bc8e843a96179449cfffc mldonkey-2.8.2-r1.ebuild 4746
-SHA256 23a7c177fccace57b68570950c43bc7d3f17ba87c6a83c29af876d62ba3aa9a0 mldonkey-2.8.2-r1.ebuild 4746
EBUILD mldonkey-2.8.3.ebuild 4671 RMD160 6ac33a9ae456e23aee4e536d040992d2015df886 SHA1 0c8adb4d1955baa3c6c73e7e73ed0c02f70a744e SHA256 a860ab1f68d1e8cfe6a134b596d41ecb1e975ab8df90e276cb325d9fabea727b
MD5 00f277ab98aa39848c803f10337841e3 mldonkey-2.8.3.ebuild 4671
RMD160 6ac33a9ae456e23aee4e536d040992d2015df886 mldonkey-2.8.3.ebuild 4671
MD5 42c33aa9b48a5853c097d381f8ed0db2 mldonkey-2.8.4.ebuild 4678
RMD160 167e431a0e8aabf3a525a5e60f53086e12d6ac60 mldonkey-2.8.4.ebuild 4678
SHA256 872f5bfef7bd03dc0a0f9f8145e57bf6bc3a8c35a4d9a84421b7e2e7f7f27445 mldonkey-2.8.4.ebuild 4678
-MISC ChangeLog 24193 RMD160 3773ee07d81f045a6ed3c18225d0a33f207a672b SHA1 5fc05cd34ea6210456d754a9644612f12c24419f SHA256 0cf10306d3fe1db242c160e8dc6c380b4a23b2e346f37ecc14dd5212578cc9a7
-MD5 21e2641a106d3503982d05443ffc0118 ChangeLog 24193
-RMD160 3773ee07d81f045a6ed3c18225d0a33f207a672b ChangeLog 24193
-SHA256 0cf10306d3fe1db242c160e8dc6c380b4a23b2e346f37ecc14dd5212578cc9a7 ChangeLog 24193
+MISC ChangeLog 24333 RMD160 fcc9c33e9f1ef9bf889f057db9f4ab7fcfb44389 SHA1 a35c4e98194275c524802739922ca3978258ecaa SHA256 60dfa459eb7593791b24fb1fab67c842cf501c9c928a6f4e9ab0a6688115b7b2
+MD5 cbd5ea4e38670f5973f3a2fcf83de37d ChangeLog 24333
+RMD160 fcc9c33e9f1ef9bf889f057db9f4ab7fcfb44389 ChangeLog 24333
+SHA256 60dfa459eb7593791b24fb1fab67c842cf501c9c928a6f4e9ab0a6688115b7b2 ChangeLog 24333
MISC metadata.xml 242 RMD160 d0edc89382298dee00d3571b62a5f457ef268751 SHA1 25511186cac54f1353a3347f72da7f5d05b9da57 SHA256 b354d71d5efbed0ff97e27564894438b42a8bd8b577007cadc6972dd37d6b5f8
MD5 ee159929f3e247f937fe88bb1919d8bd metadata.xml 242
RMD160 d0edc89382298dee00d3571b62a5f457ef268751 metadata.xml 242
SHA256 b354d71d5efbed0ff97e27564894438b42a8bd8b577007cadc6972dd37d6b5f8 metadata.xml 242
-MD5 7a49132cb0108ac570b978eb6000db45 files/digest-mldonkey-2.8.2-r1 250
-RMD160 4213be41a9c4db4d112e40396786dcd55f49436a files/digest-mldonkey-2.8.2-r1 250
-SHA256 cdb85c503837b524df40852095c65b6fe6211fdc48b803c4da5a92554e6286a1 files/digest-mldonkey-2.8.2-r1 250
MD5 c266459079754cd1f7cd94e25e20acef files/digest-mldonkey-2.8.3 250
RMD160 047c3dd1309a7613612c337055ed7fa788ea02d3 files/digest-mldonkey-2.8.3 250
SHA256 458be0c5dae9781c1236e54ac527e18977c81d6a3254545e6dab9f2568c5b50a files/digest-mldonkey-2.8.3 250
MD5 fae11296270e9fc58d9561f019e20b45 files/digest-mldonkey-2.8.4 250
RMD160 94dec0ce8aa6e3a821bbed0878108dc890c7cb17 files/digest-mldonkey-2.8.4 250
SHA256 3d2752b72030f40ed7d080071886bc00d448373a99e259fc8a7e9ffb935df0cd files/digest-mldonkey-2.8.4 250
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.6 (GNU/Linux)
-
-iD8DBQFGF70iNQqtfCuFneMRAnW8AJ4sgrIEa0peIDWcAEnFpgbqi80iSgCeICYm
-FOjC46SBobEdG1XzjotTPWg=
-=9T5+
------END PGP SIGNATURE-----
+++ /dev/null
-MD5 123aeb79a3ca91a4943b59f044e98d4a mldonkey-2.8.2.tar.bz2 2652074
-RMD160 ce95184805ac8f4c690e37c75d418b5f7e265f92 mldonkey-2.8.2.tar.bz2 2652074
-SHA256 51efc1c339b8cbafde93f4444f18e4243f41008b1c4107a41602542e9eeaa68e mldonkey-2.8.2.tar.bz2 2652074
+++ /dev/null
-diff -a -x Root -x Repository -x Tag -x Entries -x Entries.Log -x .svn -x '*.rej' -x '*.orig' -x '*.cmi' -x '*.cma' -x '*.cmo' -x '*.cmx' -x '*.cmxa' -x '*.a' -x '*.o' -x .depend -x Makefile -x mlnet -x ocamlpp.byte -N -r -u ./src/networks/donkey/donkeyClient.ml ./src/networks/donkey/donkeyClient.ml
---- ./src/networks/donkey/donkeyClient.ml 2007-01-06 19:15:17.000000000 +0100
-+++ ./src/networks/donkey/donkeyClient.ml 2007-01-07 23:15:39.000000000 +0100
-@@ -449,15 +449,17 @@
-
- let new_chunk up begin_pos end_pos =
- if begin_pos <> end_pos then
-- let pair = (begin_pos, end_pos) in
-- (match up.up_chunks with
-- [] ->
-+ let chunk = (begin_pos, end_pos) in
-+ (* the zone requested is already "in the pipe" *)
-+ if not (List.mem chunk up.up_flying_chunks) then
-+ match up.up_chunks with
-+ | [] ->
- up.up_pos <- begin_pos;
- up.up_end_chunk <- end_pos;
-- up.up_chunks <- [pair];
-- | chunks ->
-- if not (List.mem pair chunks) then
-- up.up_chunks <- chunks @ [pair])
-+ up.up_chunks <- [chunk];
-+ | up_chunks ->
-+ if not (List.mem chunk up_chunks) then
-+ up.up_chunks <- up_chunks @ [chunk]
-
- let identify_client_brand c =
- if c.client_brand = Brand_unknown then
-@@ -2055,13 +2057,21 @@
- set_rtimeout sock !!upload_timeout;
-
- let up, waiting = match c.client_upload with
-- Some ({ up_file = f } as up) when f == file -> up, up.up_waiting
-+ | Some ({ up_file = f } as up) when f == file ->
-+ (* zones are received in the order they're sent, so we
-+ know that the oldest of the zones "in fly" must have
-+ been received when this QueryBlockReq was sent *)
-+ (match up.up_flying_chunks with
-+ | [] -> ()
-+ | _ :: q -> up.up_flying_chunks <- q);
-+ up, up.up_waiting
- | Some old_up ->
- {
- up_file = file;
- up_pos = Int64.zero;
- up_end_chunk = Int64.zero;
- up_chunks = [];
-+ up_flying_chunks = [];
- up_waiting = old_up.up_waiting;
- }, old_up.up_waiting
- | _ ->
-@@ -2070,6 +2080,7 @@
- up_pos = Int64.zero;
- up_end_chunk = Int64.zero;
- up_chunks = [];
-+ up_flying_chunks = [];
- up_waiting = false;
- }, false
- in
-@@ -2157,12 +2168,12 @@
- let init_client sock c =
- set_handler sock WRITE_DONE (fun s ->
- match c.client_upload with
-- None -> ()
-- | Some up ->
-+ | Some ({ up_chunks = _ :: _ } as up) ->
- if not up.up_waiting && !CommonUploads.has_upload = 0 then begin
- up.up_waiting <- true;
- CommonUploads.ready_for_upload (as_client c)
- end
-+ | _ -> ()
- );
- (*
- set_handler sock (BASIC_EVENT RTIMEOUT) (fun s ->
-diff -a -x Root -x Repository -x Tag -x Entries -x Entries.Log -x .svn -x '*.rej' -x '*.orig' -x '*.cmi' -x '*.cma' -x '*.cmo' -x '*.cmx' -x '*.cmxa' -x '*.a' -x '*.o' -x .depend -x Makefile -x mlnet -x ocamlpp.byte -N -r -u ./src/networks/donkey/donkeyFiles.ml ./src/networks/donkey/donkeyFiles.ml
---- ./src/networks/donkey/donkeyFiles.ml 2007-01-06 19:15:17.000000000 +0100
-+++ ./src/networks/donkey/donkeyFiles.ml 2007-01-07 23:16:18.000000000 +0100
-@@ -127,7 +127,7 @@
- (* lprintf "send_client_block\n"; *)
- if per_client > 0 && CommonUploads.can_write_len sock max_msg_size then
- match c.client_upload with
-- | Some ({ up_chunks = _ :: chunks } as up) ->
-+ | Some ({ up_chunks = current_chunk :: chunks } as up) ->
- if up.up_file.file_shared = None then begin
- (* Is there a message to warn that a file is not shared anymore ? *)
- c.client_upload <- None;
-@@ -138,16 +138,17 @@
- if max_len <= msg_block_size_int then
- (* last block from chunk *)
- begin
-+ send_small_block c sock up.up_file up.up_pos max_len;
- if !verbose_upload then
- lprintf_nl "End of chunk (%d) %Ld %s" max_len up.up_end_chunk (file_best_name up.up_file);
-- send_small_block c sock up.up_file up.up_pos max_len;
-+ up.up_flying_chunks <- up.up_flying_chunks @ [current_chunk];
- up.up_chunks <- chunks;
- let per_client = per_client - max_len in
- match chunks with
-- [] ->
-+ | [] ->
- if !verbose_upload then
-- lprintf_nl "NO CHUNKS";
-- c.client_upload <- None;
-+ lprintf_nl "NO MORE CHUNKS";
-+ up.up_waiting <- false;
- | (begin_pos, end_pos) :: _ ->
- up.up_pos <- begin_pos;
- up.up_end_chunk <- end_pos;
-@@ -172,10 +173,10 @@
- let size = min max_msg_size size in
- send_client_block c sock size;
- (match c.client_upload with
-- None -> ()
-- | Some up ->
-+ | Some ({ up_chunks = _ :: _ }) ->
- if !CommonUploads.has_upload = 0 then
- CommonUploads.ready_for_upload (as_client c)
-+ | _ -> ()
- )
- )
- let _ =
-diff -a -x Root -x Repository -x Tag -x Entries -x Entries.Log -x .svn -x '*.rej' -x '*.orig' -x '*.cmi' -x '*.cma' -x '*.cmo' -x '*.cmx' -x '*.cmxa' -x '*.a' -x '*.o' -x .depend -x Makefile -x mlnet -x ocamlpp.byte -N -r -u ./src/networks/donkey/donkeyTypes.ml ./src/networks/donkey/donkeyTypes.ml
---- ./src/networks/donkey/donkeyTypes.ml 2007-01-06 19:15:17.000000000 +0100
-+++ ./src/networks/donkey/donkeyTypes.ml 2007-01-07 23:15:39.000000000 +0100
-@@ -618,6 +618,8 @@
- mutable up_pos : int64;
- mutable up_end_chunk : int64;
- mutable up_chunks : (int64 * int64) list;
-+ (* zones sent but not yet received by other peer, oldest first *)
-+ mutable up_flying_chunks : (int64 * int64) list;
- mutable up_waiting : bool;
- }
-
+++ /dev/null
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-p2p/mldonkey/mldonkey-2.8.2-r1.ebuild,v 1.7 2007/02/25 13:53:29 mabi Exp $
-
-inherit flag-o-matic
-
-IUSE="batch doc fasttrack gd gnutella gtk guionly magic"
-
-DESCRIPTION="MLDonkey is a multi-network P2P application written in Ocaml, coming with its own Gtk GUI, web and telnet interface."
-HOMEPAGE="http://mldonkey.sourceforge.net/"
-SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 hppa ~ia64 ppc ~sparc x86"
-RESTRICT="nomirror"
-
-RDEPEND="dev-lang/perl
- guionly? ( >=gnome-base/librsvg-2.4.0
- >=dev-ml/lablgtk-2.6 )
- gtk? ( >=gnome-base/librsvg-2.4.0
- >=dev-ml/lablgtk-2.6 )
- gd? ( >=media-libs/gd-2.0.28 )
- magic? ( sys-apps/file )"
-
-DEPEND="${RDEPEND}
- >=sys-devel/autoconf-2.58
- !batch? ( >=dev-lang/ocaml-3.08.3 )
- batch? ( net-misc/wget )"
-
-MLUSER="p2p"
-
-pkg_setup() {
- if use gtk; then
- echo ""
- einfo "If the compile with gui fails, and you have updated Ocaml"
- einfo "recently, you may have forgotten that you need to run"
- einfo "/usr/portage/dev-lang/ocaml/files/ocaml-rebuild.sh"
- einfo "to learn which ebuilds you need to recompile"
- einfo "each time you update Ocaml to a different version"
- einfo "see the Ocaml ebuild for details"
- echo ""
- fi
-
- if use gtk && !(built_with_use dev-ml/lablgtk svg); then
- eerror "dev-ml/lablgtk must be built with the 'svg' USE flag to use the gtk gui"
- die "Recompile dev-ml/lablgtk with enabled svg USE flag"
- fi
-
- if use gd && !(built_with_use media-libs/gd truetype); then
- eerror "media-libs/gd must be built with 'truetype' to compile"
- eerror "MLDonkey with gd support"
- die "Recompile media-libs/gd with enabled truetype USE flag"
- fi
-}
-
-src_unpack() {
- unpack ${A} && cd "${S}"
-
- # Avoid upload unneeded data to eMule clients, bug #161169
- epatch "${FILESDIR}/${P}-avoid_dupl_sending.patch"
-
- export WANT_AUTOCONF=2.5
- cd "${S}"/config
- autoconf
- cd "${S}"
-}
-
-src_compile() {
- append-ldflags -Wl,-z,noexecstack
-
- # the dirs are not (yet) used, but it doesn't hurt to specify them anyway
-
- # batch Automatically download and build OCAML-3.08.3 for compiling itself
- # onlygui Disable all nets support, build only chosen GUI
-
- if use gtk || use guionly; then
- myconf="--enable-gui=newgui2"
- else
- myconf="--disable-gui"
- fi
-
- if use guionly; then
- myconf="${myconf} --disable-multinet --disable-donkey"
- fi
-
- cd ${S}
- econf \
- --sysconfdir=/etc/mldonkey \
- --sharedstatedir=/var/mldonkey \
- --localstatedir=/var/mldonkey \
- --enable-checks \
- $(use_enable fasttrack) \
- $(use_enable gnutella) \
- $(use_enable gnutella gnutella2) \
- $(use_enable batch) \
- $(use_enable gd) \
- $(use_enable magic) \
- ${myconf} || die "econf failed"
-
- export OCAMLRUNPARAM="l=256M"
- emake || die "emake failed"
-
- if ! use guionly; then
- emake utils || die "emake utils failed"
- fi;
-}
-
-src_install() {
- if ! use guionly; then
- dobin mlnet mld_hash get_range copysources make_torrent subconv
- dobin ${FILESDIR}/mldonkey
-
- insinto /etc/conf.d; newins "${FILESDIR}/mldonkey.confd-2.8" mldonkey
- fperms 600 /etc/conf.d/mldonkey
- exeinto /etc/init.d; newexe "${FILESDIR}/mldonkey.initd-2.8-r1" mldonkey
- fi
-
- if use gtk; then
- dobin mlgui mlguistarter
- domenu ${FILESDIR}/${PN}-gui.desktop
- doicon ${FILESDIR}/${PN}.png
- fi
-
- if use doc ; then
- cd ${S}/distrib
- dodoc ChangeLog *.txt
- dohtml *.html
-
- insinto /usr/share/doc/${PF}/scripts
- doins kill_mldonkey mldonkey_command mldonkey_previewer make_buginfo
-
- cd ${S}/docs
- dodoc *.txt *.tex *.pdf
- dohtml *.html
-
- cd ${S}/docs/developers
- dodoc *.txt *.tex
-
- cd ${S}/docs/images
- insinto /usr/share/doc/${PF}/html/images
- doins *
- fi
-}
-
-pkg_preinst() {
- if ! use guionly; then
- enewuser ${MLUSER} -1 /bin/bash /home/p2p users
- fi
-}
-
-pkg_postinst() {
- if ! use guionly; then
- echo
- einfo "Running \`mldonkey' will start the server inside ~/.mldonkey/"
- einfo "If you want to start MLDonkey in a particular working directory,"
- einfo "use the \`mlnet' command."
- einfo "If you want to start MLDonkey as a system service, use"
- einfo "the /etc/init.d/mldonkey script. To control bandwidth, use"
- einfo "the 'slow' and 'fast' arguments. Be sure to have a look at"
- einfo "/etc/conf.d/mldonkey also."
- echo
- einfo "Attention: 2.6 has changed the inifiles structure, so downgrading"
- einfo "will be problematic."
- einfo "User settings (admin) are transferred to users.ini from "
- einfo "downloads.ini"
- einfo "Old ini files are automatically converted to the new format"
- echo
- else
- echo
- einfo "Simply run mlgui to start the chosen MLDonkey gui."
- einfo "It puts its config files into ~/.mldonkey"
- fi
-}