From owner-freebsd-ports@FreeBSD.ORG Sun May 13 05:02:47 2007 Return-Path: X-Original-To: freebsd-ports@freebsd.org Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3DB2B16A404 for ; Sun, 13 May 2007 05:02:47 +0000 (UTC) (envelope-from stephen@math.missouri.edu) Received: from sccmmhc91.asp.att.net (sccmmhc91.asp.att.net [204.127.203.211]) by mx1.freebsd.org (Postfix) with ESMTP id 03C9D13C44C for ; Sun, 13 May 2007 05:02:46 +0000 (UTC) (envelope-from stephen@math.missouri.edu) Received: from laptop2.montlan (12-216-253-187.client.mchsi.com[12.216.253.187]) by sccmmhc91.asp.att.net (sccmmhc91) with ESMTP id <20070513050245m9100rqj1ee>; Sun, 13 May 2007 05:02:46 +0000 Message-ID: <46469BF5.9030603@math.missouri.edu> Date: Sun, 13 May 2007 00:02:45 -0500 From: Stephen Montgomery-Smith User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.8.1.2) Gecko/20070505 SeaMonkey/1.1.1 MIME-Version: 1.0 To: "[LoN]Kamikaze" References: <464597C6.3030406@gmx.de> <20070512174011.GA22526@xor.obsecurity.org> <4645FF71.60100@gmx.de> <20070512175824.GA23103@xor.obsecurity.org> <20070512133054.B5588@math.missouri.edu> <4646193E.5040503@gmx.de> <464665D5.1090509@math.missouri.edu> <464676CC.2000203@math.missouri.edu> In-Reply-To: <464676CC.2000203@math.missouri.edu> Content-Type: multipart/mixed; boundary="------------070009090107010701090704" Cc: freebsd-ports@freebsd.org, Kris Kennaway Subject: Re: Time to abandon recursive pulling of dependencies? X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 May 2007 05:02:47 -0000 This is a multi-part message in MIME format. --------------070009090107010701090704 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Stephen Montgomery-Smith wrote: > Stephen Montgomery-Smith wrote: >> OK chaps, this is what I came up with. So for example, if I do "make >> install" on /usr/ports/x11/xorg (having made all the dependencies), on >> my computer it turns the pkg_create from taking about 4 minutes to the >> blink of an eye. Now people need to figure out how to speed up the >> "make package-depends" in bsd.ports.mk, but that is beyond my abilities. >> >> I really hope this works. The prospect of modifying a piece of code >> that is used by practically the whole FreeBSD community kind of scares >> me, so I would appreciate some good testing. >> >> Apply the patch http://www.math.missouri.edu/~stephen/deps/ddd to >> /usr/src/usr.sbin/pkg_install/lib. I have also put the patch as an >> attachment, but I don't know if the mail filters will take it out. >> >> Stephen > > I spoke too soon. It is kind of buggy. Sorry to have jumped the gun a > bit. OK, try this one. --------------070009090107010701090704 Content-Type: text/plain; name="ddd" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="ddd" LS0tIC91c3Ivc3JjL3Vzci5zYmluL3BrZ19pbnN0YWxsL2xpYi9kZXBzLmMJV2VkIERlYyAg NiAyMDoxNDoxMyAyMDA2CisrKyB1c3Iuc2Jpbi9wa2dfaW5zdGFsbC9saWIvZGVwcy5jCVNh dCBNYXkgMTIgMjM6NTM6MzYgMjAwNwpAQCAtMjYsOTggKzI2LDE0NCBAQAogI2luY2x1ZGUg PGVyci5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+CiAKK3ZvaWQgbGlzdF9kZXBzKGNvbnN0IGNo YXIgKnBrZ25hbWUsIGNoYXIgKipwa2dzLCBjaGFyICpsaXN0ZWQsIAorICAgICAgICAgICAg ICAgY2hhciAqY2hlY2tfbG9vcCwgY2hhciAqKm5ld3BrZ3MsIGludCAqbnJuZXdwa2dzLAor ICAgICAgICAgICAgICAgaW50ICplcnJfY250KTsKKwogLyoKICAqIFNvcnQgZ2l2ZW4gTlVM TC10ZXJtaW5hdGVkIGxpc3Qgb2YgaW5zdGFsbGVkIHBhY2thZ2VzIChwa2dzKSBpbgogICog c3VjaCBhIHdheSB0aGF0IGlmIHBhY2thZ2UgQSBkZXBlbmRzIG9uIHBhY2thZ2UgQiB0aGVu IGFmdGVyCiAgKiBzb3J0aW5nIEEgd2lsbCBiZSBsaXN0ZWQgYmVmb3JlIEIgbm8gbWF0dGVy IGhvdyB0aGV5IHdlcmUKICAqIG9yaWdpbmFsbHkgcG9zaXRpb25lZCBpbiB0aGUgbGlzdC4K KyAqCisgKiBXb3JrcyBieSBwZXJmb3JtaW5nIGEgcmVjdXJzaXZlIGRlcHRoLWZpcnN0IHNl YXJjaCBvbiB0aGUgCisgKiByZXF1aXJlZC1ieSBsaXN0cy4KICAqLworCiBpbnQKIHNvcnRk ZXBzKGNoYXIgKipwa2dzKQogewotICAgIGNoYXIgKnRtcDsKLSAgICBpbnQgaSwgaiwgbG9v cF9jbnQ7Ci0gICAgaW50IGVycl9jbnQgPSAwOworICAgIGludCBpLCBlcnJfY250PTA7Cisg ICAgaW50IG5ycGtncywgbnJuZXdwa2dzOworICAgIGNoYXIgKmxpc3RlZCwgKmNoZWNrX2xv b3AsICoqbmV3cGtnczsKKyAgICBjaGFyICpjcDsKIAogICAgIGlmIChwa2dzWzBdID09IE5V TEwgfHwgcGtnc1sxXSA9PSBOVUxMKQogCXJldHVybiAoMCk7CiAKLSAgICBmb3IgKGkgPSAw OyBwa2dzW2kgKyAxXTsgaSsrKSB7Ci0JLyoKLQkgKiBDaGVjayB0byBzZWUgaWYgYW55IG90 aGVyIHBhY2thZ2UgaW4gcGtnc1tpKzE6XSBkZXBlbmRzCi0JICogb24gcGtnc1tpXSBhbmQg c3dhcCB0aG9zZSB0d28gcGFja2FnZXMgaWYgc28uCi0JICovCi0JbG9vcF9jbnQgPSAwOwot CWZvciAoaiA9IGkgKyAxOyBwa2dzW2pdOyBqKyspIHsKLQkgICAgaWYgKGNoa2lmZGVwZW5k cyhwa2dzW2pdLCBwa2dzW2ldKSA9PSAxKSB7Ci0JCS8qCi0JCSAqIFRyeSB0byBhdm9pZCBk ZWFkbG9jayBpZiBwYWNrYWdlIEEgZGVwZW5kcyBvbiBCIHdoaWNoIGluCi0JCSAqIHR1cm4g ZGVwZW5kcyBvbiBDIGFuZCBDIGR1ZSB0byBhbiBlcnJvciBkZXBlbmRzIG9uIEEuCi0JCSAq IFVzZSB1Z2x5IGJ1dCBzaW1wbGUgbWV0aG9kLCBiZWNhc2UgaXQgU2hvdWxkIE5ldmVyCi0J CSAqIEhhcHBlblt0bV0gaW4gdGhlIHJlYWwgbGlmZSBhbnl3YXkuCi0JCSAqLwotCQlpZiAo bG9vcF9jbnQgPiA0MDk2KSB7Ci0JCSAgICB3YXJueCgiZGVwZW5kZW5jeSBsb29wIGRldGVj dGVkIGZvciBwYWNrYWdlICVzIiwgcGtnc1tqXSk7Ci0JCSAgICBlcnJfY250Kys7Ci0JCSAg ICBicmVhazsKLQkJfQotCQlsb29wX2NudCsrOwotCQl0bXAgPSBwa2dzW2ldOwotCQlwa2dz W2ldID0gcGtnc1tqXTsKLQkJcGtnc1tqXSA9IHRtcDsKLQkJLyoKLQkJICogQW5vdGhlciBp dGVyYXRpb24gcmVxdXJlZCB0byBjaGVjayBpZiBuZXcgcGtnc1tpXQotCQkgKiBpdHNlbGYg aGFzIGFueSBwYWNrYWdlcyB0aGF0IGRlcGVuZCBvbiBpdAotCQkgKi8KLQkJaiA9IGkgKyAx OwotCSAgICB9Ci0JfQorICAgIG5ycGtncyA9IDA7CisgICAgd2hpbGUgKHBrZ3NbbnJwa2dz XSkgbnJwa2dzKys7CisgICAgbGlzdGVkID0gYWxsb2NhKG5ycGtncyk7CisgICAgaWYgKGxp c3RlZCA9PSBOVUxMKSB7CisJd2FybngoIiVzKCk6IGFsbG9jYSgpIGZhaWxlZCIsIF9fZnVu Y19fKTsKKwlyZXR1cm4gMTsKKyAgICB9CisgICAgYnplcm8obGlzdGVkLG5ycGtncyk7Cisg ICAgY2hlY2tfbG9vcCA9IGFsbG9jYShucnBrZ3MpOworICAgIGlmIChjaGVja19sb29wID09 IE5VTEwpIHsKKwl3YXJueCgiJXMoKTogYWxsb2NhKCkgZmFpbGVkIiwgX19mdW5jX18pOwor CXJldHVybiAxOworICAgIH0KKyAgICBiemVybyhjaGVja19sb29wLG5ycGtncyk7CisgICAg bmV3cGtncyA9IGFsbG9jYShucnBrZ3Mqc2l6ZW9mKGNoYXIqKSk7CisgICAgaWYgKG5ld3Br Z3MgPT0gTlVMTCkgeworCXdhcm54KCIlcygpOiBhbGxvY2EoKSBmYWlsZWQiLCBfX2Z1bmNf Xyk7CisJcmV0dXJuIDE7CisgICAgfQorICAgIG5ybmV3cGtncyA9IDA7CisKKyAgICBmb3Ig KGkgPSAwOyBwa2dzW2ldOyBpKyspIGlmICghbGlzdGVkW2ldKSB7CisJY2hlY2tfbG9vcFtp XSA9IDE7CisJY3AgPSBzdHJjaHIocGtnc1tpXSwgJzonKTsKKwlpZiAoY3AgIT0gTlVMTCkK KwkgICAgKmNwID0gJ1wwJzsKKwlsaXN0X2RlcHMocGtnc1tpXSxwa2dzLGxpc3RlZCxjaGVj a19sb29wLG5ld3BrZ3MsJm5ybmV3cGtncywmZXJyX2NudCk7CisJaWYgKGNwICE9IE5VTEwp CisJICAgICpjcCA9ICc6JzsKKwlsaXN0ZWRbaV0gPSAxOworCW5ld3BrZ3NbbnJuZXdwa2dz XSA9IHBrZ3NbaV07CisJbnJuZXdwa2dzKys7CisgICAgfQorCisgICAgaWYgKG5ybmV3cGtn cyAhPSBucnBrZ3MpIHsKKwlmcHJpbnRmKHN0ZGVyciwiVGhpcyBzaG91bGRuJ3QgaGFwcGVu LCBhbmQgaW5kaWNhdGVzIGEgaHVnZSBlcnJvciBpbiB0aGUgY29kZS5cbiIpOworCWV4aXQo MSk7CiAgICAgfQorICAgIGZvciAoaSA9IDA7IGkgPCBucm5ld3BrZ3M7IGkrKykgcGtnc1tp XSA9IG5ld3BrZ3NbaV07CisKICAgICByZXR1cm4gZXJyX2NudDsKIH0KIAogLyoKLSAqIENo ZWNrIHRvIHNlZSBpZiBwa2duYW1lMSBkZXBlbmRzIG9uIHBrZ25hbWUyLgotICogUmV0dXJu cyAxIGlmIGRlcGVuZHMsIDAgaWYgbm90LCBhbmQgLTEgaWYgZXJyb3Igb2NjdXJlZC4KLSAq LyAKLWludAotY2hraWZkZXBlbmRzKGNvbnN0IGNoYXIgKnBrZ25hbWUxLCBjb25zdCBjaGFy ICpwa2duYW1lMikKLXsKLSAgICBjaGFyICpjcDEsICpjcDI7Ci0gICAgaW50IGVycmNvZGU7 CisgKiBUaGlzIHJlY3Vyc2l2ZSBmdW5jdGlvbiBsaXN0cyB0aGUgZGVwZW5kZW5jaWVzICh0 aGF0IGlzLCB0aGUgCisgKiAicmVxdWlyZWQtYnkicykgZm9yIHBrZ25hbWUsIHB1dHRpbmcg dGhlbSBpbnRvIG5ld3BrZ3MuCisgKi8KKwordm9pZCBsaXN0X2RlcHMoY29uc3QgY2hhciAq cGtnbmFtZSwgY2hhciAqKnBrZ3MsIGNoYXIgKmxpc3RlZCwgCisgICAgICAgICAgICAgICBj aGFyICpjaGVja19sb29wLCBjaGFyICoqbmV3cGtncywgaW50ICpucm5ld3BrZ3MsCisgICAg ICAgICAgICAgICBpbnQgKmVycl9jbnQpIHsKKyAgICBjaGFyICoqcmIsICoqcmJ0bXA7Cisg ICAgY2hhciAqY3A7CisgICAgaW50IGVycmNvZGUsIGksIGo7CiAgICAgc3RydWN0IHJlcXJf YnlfZW50cnkgKnJiX2VudHJ5OwogICAgIHN0cnVjdCByZXFyX2J5X2hlYWQgKnJiX2xpc3Q7 CiAKLSAgICBjcDIgPSBzdHJjaHIocGtnbmFtZTIsICc6Jyk7Ci0gICAgaWYgKGNwMiAhPSBO VUxMKQotCSpjcDIgPSAnXDAnOwotICAgIGNwMSA9IHN0cmNocihwa2duYW1lMSwgJzonKTsK LSAgICBpZiAoY3AxICE9IE5VTEwpCi0JKmNwMSA9ICdcMCc7Ci0KLSAgICBlcnJjb2RlID0g MDsKLSAgICAvKiBDaGVjayB0aGF0IHBrZ25hbWUyIGlzIGFjdHVhbGx5IGluc3RhbGxlZCAq LwotICAgIGlmIChpc2luc3RhbGxlZHBrZyhwa2duYW1lMikgPD0gMCkKLQlnb3RvIGV4aXQ7 CisgICAgaWYgKGlzaW5zdGFsbGVkcGtnKHBrZ25hbWUpIDw9IDApCisJcmV0dXJuOwogCi0g ICAgZXJyY29kZSA9IHJlcXVpcmVkYnkocGtnbmFtZTIsICZyYl9saXN0LCBGQUxTRSwgVFJV RSk7CisgICAgZXJyY29kZSA9IHJlcXVpcmVkYnkocGtnbmFtZSwgJnJiX2xpc3QsIEZBTFNF LCBUUlVFKTsKICAgICBpZiAoZXJyY29kZSA8IDApCi0JZ290byBleGl0OwotCi0gICAgZXJy Y29kZSA9IDA7CisJcmV0dXJuOworICAgIC8qCisgICAgICogV2UgcHV0IHJiX2xpc3QgaW50 byBhbiBhcmd2IHN0eWxlIE5VTEwgdGVybWluYXRlZCBsaXN0LAorICAgICAqIGJlY2F1c2Ug cmVxdWlyZWRieSB1c2VzIHNvbWUgc3RhdGljIHN0b3JhZ2UsIGFuZCBsaXN0X2RlcHMKKyAg ICAgKiBpcyBhIHJlY3Vyc2l2ZSBmdW5jdGlvbi4KKyAgICAgKi8KKworICAgIHJidG1wID0g cmIgPSBhbGxvY2EoKGVycmNvZGUgKyAxKSAqIHNpemVvZigqcmIpKTsKKyAgICBpZiAocmIg PT0gTlVMTCkgeworCXdhcm54KCIlcygpOiBhbGxvY2EoKSBmYWlsZWQiLCBfX2Z1bmNfXyk7 CisJKCplcnJfY250KSsrOworCXJldHVybjsKKyAgICB9CiAgICAgU1RBSUxRX0ZPUkVBQ0go cmJfZW50cnksIHJiX2xpc3QsIGxpbmspIHsKLQlpZiAoc3RyY21wKHJiX2VudHJ5LT5wa2du YW1lLCBwa2duYW1lMSkgPT0gMCkgewkvKiBtYXRjaCAqLwotCSAgICBlcnJjb2RlID0gMTsK LQkgICAgYnJlYWs7CisJKnJidG1wID0gYWxsb2NhKHN0cmxlbihyYl9lbnRyeS0+cGtnbmFt ZSkgKyAxKTsKKwlpZiAoKnJidG1wID09IE5VTEwpIHsKKwkgICAgd2FybngoIiVzKCk6IGFs bG9jYSgpIGZhaWxlZCIsIF9fZnVuY19fKTsKKwkgICAgKCplcnJfY250KSsrOworCSAgICBy ZXR1cm47CiAJfQorCXN0cmNweSgqcmJ0bXAsIHJiX2VudHJ5LT5wa2duYW1lKTsKKwlyYnRt cCsrOwogICAgIH0KKyAgICAqcmJ0bXAgPSBOVUxMOwogCi1leGl0OgotICAgIGlmIChjcDEg IT0gTlVMTCkKLQkqY3AxID0gJzonOwotICAgIGlmIChjcDIgIT0gTlVMTCkKLQkqY3AyID0g JzonOwotICAgIHJldHVybiBlcnJjb2RlOworICAgIGZvciAoaSA9IDA7IHJiW2ldOyBpKysp CisJZm9yIChqID0gMDsgcGtnc1tqXTsgaisrKSBpZiAoIWxpc3RlZFtqXSkgeworCSAgICBj cCA9IHN0cmNocihwa2dzW2pdLCAnOicpOworCSAgICBpZiAoY3AgIT0gTlVMTCkKKwkJKmNw ID0gJ1wwJzsKKwkgICAgaWYgKHN0cmNtcChyYltpXSwgcGtnc1tqXSkgPT0gMCkgeyAvKm1h dGNoICovCisJCS8qCisJCSAqIFRyeSB0byBhdm9pZCBkZWFkbG9jayBpZiBwYWNrYWdlIEEg ZGVwZW5kcyBvbiBCIHdoaWNoIGluCisJCSAqIHR1cm4gZGVwZW5kcyBvbiBDIGFuZCBDIGR1 ZSB0byBhbiBlcnJvciBkZXBlbmRzIG9uIEEuCisJCSAqIEl0IFNob3VsZCBOZXZlciBIYXBw ZW5bdG1dIGluIHJlYWwgbGlmZS4KKwkJICovCisJCWlmIChjaGVja19sb29wW2pdKSB7CisJ CSAgICB3YXJueCgiZGVwZW5kZW5jeSBsb29wIGRldGVjdGVkIGZvciBwYWNrYWdlICVzIiwg cGtnc1tqXSk7CisJCSAgICAoKmVycl9jbnQpKys7CisJCX0KKwkJZWxzZSB7CisJCSAgICBj aGVja19sb29wW2pdID0gMTsKKwkJICAgIGxpc3RfZGVwcyhwa2dzW2pdLHBrZ3MsbGlzdGVk LGNoZWNrX2xvb3AsbmV3cGtncyxucm5ld3BrZ3MsZXJyX2NudCk7CisJCSAgICBsaXN0ZWRb al0gPSAxOworCQkgICAgbmV3cGtnc1sqbnJuZXdwa2dzXSA9IHBrZ3Nbal07CisJCSAgICAo Km5ybmV3cGtncykrKzsKKwkJfQorCSAgICB9CisJICAgIGlmIChjcCAhPSBOVUxMKQorCQkq Y3AgPSAnOic7CisJfQogfQogCiAvKgo= --------------070009090107010701090704--