From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: divoplade Newsgroups: gmane.lisp.guile.bugs Subject: bug#44186: Recursive mkdir Date: Tue, 27 Oct 2020 08:01:23 +0100 Message-ID: <064c08f86112e49533000738aa01f98314d3b08b.camel@divoplade.fr> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-5WQk0+X3B5zLqlWQkO+R" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21723"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Evolution 3.34.2 Cc: 44186@debbugs.gnu.org To: Leo Prikler Original-X-From: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Tue Oct 27 08:02:23 2020 Return-path: Envelope-to: guile-bugs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kXIzv-0005Xg-DK for guile-bugs@m.gmane-mx.org; Tue, 27 Oct 2020 08:02:23 +0100 Original-Received: from localhost ([::1]:43636 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kXIzu-0006Yl-E7 for guile-bugs@m.gmane-mx.org; Tue, 27 Oct 2020 03:02:22 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:45394) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kXIzd-0006XM-CL for bug-guile@gnu.org; Tue, 27 Oct 2020 03:02:06 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:59252) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kXIza-0003Sd-JS for bug-guile@gnu.org; Tue, 27 Oct 2020 03:02:04 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kXIza-0000Uq-Fr for bug-guile@gnu.org; Tue, 27 Oct 2020 03:02:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: divoplade Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Tue, 27 Oct 2020 07:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 44186 X-GNU-PR-Package: guile Original-Received: via spool by 44186-submit@debbugs.gnu.org id=B44186.16037820951870 (code B ref 44186); Tue, 27 Oct 2020 07:02:02 +0000 Original-Received: (at 44186) by debbugs.gnu.org; 27 Oct 2020 07:01:35 +0000 Original-Received: from localhost ([127.0.0.1]:42564 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXIz8-0000U5-My for submit@debbugs.gnu.org; Tue, 27 Oct 2020 03:01:35 -0400 Original-Received: from relay3-d.mail.gandi.net ([217.70.183.195]:44001) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kXIz6-0000Tq-2U for 44186@debbugs.gnu.org; Tue, 27 Oct 2020 03:01:33 -0400 X-Originating-IP: 86.202.110.111 Original-Received: from divoplade.home (lfbn-lyo-1-15-111.w86-202.abo.wanadoo.fr [86.202.110.111]) (Authenticated sender: d@divoplade.fr) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id 3CB7960005; Tue, 27 Oct 2020 07:01:23 +0000 (UTC) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane-mx.org@gnu.org Original-Sender: "bug-guile" Xref: news.gmane.io gmane.lisp.guile.bugs:9913 Archived-At: --=-5WQk0+X3B5zLqlWQkO+R Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Hello, I think I have made my point for the second commit. I intend this change to be user-centric: it would be better to confuse the developer of a guile program than the user of said program. Anyway, this will not confuse anyone because creating the directory is not the default behavior. As for the first commit: Le lundi 26 octobre 2020 à 22:05 +0100, Leo Prikler a écrit : > I'd prefer it if you didn't credit me for messing up your code. ;) > The reason my version works, is because (ice-9 filesystem) has a > working implementation of file-ancestors, which it uses to create all > ancestors in order. The part you've copied only creates one such > directory. With the changes you've made, the directory, that does > get > created, is the first one in the tree, which does not exist. I'm > surprised, that this test passes for you, because it does not pass > for > me. Exactly, it does not pass the test, because I still can't run them. That's one of my open questions (the other being: in which file do I write the code, I feel the ports module is not the best place). How do you run the tests? When I run "make check", I get 1 of 39 tests failed, the test-out-of-memory test. It does not even try to run the ports test. So until I can check it, my work can only be understood as "work in progress". Best regards, divoplade --=-5WQk0+X3B5zLqlWQkO+R Content-Disposition: attachment; filename*0=0002-Use-the-recursive-mkdir-function-in-file-output-proc.pat; filename*1=ch Content-Type: text/x-patch; name="0002-Use-the-recursive-mkdir-function-in-file-output-proc.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBjZTFlYjQyYWIyZGIxMzIzNWUyZGU3MWQxMDUyOWRhYWNkZjlkZjg3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBkaXZvcGxhZGUgPGRAZGl2b3BsYWRlLmZyPgpEYXRlOiBTYXQs IDI0IE9jdCAyMDIwIDAwOjM1OjAxICswMjAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIFVzZSB0aGUg cmVjdXJzaXZlIG1rZGlyIGZ1bmN0aW9uIGluIGZpbGUgb3V0cHV0CiBwcm9jZWR1cmVzCgoyMDIw LTEwLTI1IGRpdm9wbGFkZSA8ZEBkaXZvcGxhZGUuZnI+CgkqIG1vZHVsZS9pY2UtOS9wb3J0cy5z Y20gKG9wZW4tb3V0cHV0LWZpbGUpOiBhZGQgYSBta2RpciBrZXl3b3JkCgl0byB0cnkgdG8gcmVj dXJzaXZlbHkgY3JlYXRlIHRoZSBkaXJlY3Rvcnkgb2YgdGhlIG91dHB1dCBmaWxlLgoJKiBtb2R1 bGUvaWNlLTkvcG9ydHMuc2NtIChjYWxsLXdpdGgtb3V0cHV0LWZpbGUpOiBzYW1lLgoJKiBtb2R1 bGUvaWNlLTkvcG9ydHMuc2NtICh3aXRoLW91dHB1dC10by1maWxlKTogc2FtZS4KCSogbW9kdWxl L2ljZS05L3BvcnRzLnNjbSAod2l0aC1lcnJvci10by1maWxlKTogc2FtZS4KCSogZG9jL3JlZi9h cGktaW8udGV4aTogZG9jdW1lbnQgdGhlIG5ldyBrZXl3b3JkIGFyZ3VtZW50IGZvcgoJb3Blbmlu ZyBvdXRwdXQgZmlsZXMuCgkqIE5FV1M6IGluZGljYXRlIHRoYXQgdGhlIG9wZW4gb3V0cHV0IGZ1 bmN0aW9uIGNhbiBub3cgY3JlYXRlCgl0aGUgZmlsZW5hbWUgZGlyZWN0b3J5IGlmIGl0IGRvZXMg bm90IGV4aXN0LgotLS0KIE5FV1MgICAgICAgICAgICAgICAgICAgfCAgNiArKystCiBkb2MvcmVm L2FwaS1pby50ZXhpICAgIHwgMzggKysrKysrKysrKysrKystLS0tLS0tCiBtb2R1bGUvaWNlLTkv cG9ydHMuc2NtIHwgNzUgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0t CiAzIGZpbGVzIGNoYW5nZWQsIDcxIGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL05FV1MgYi9ORVdTCmluZGV4IDk0YTNmMzE1NC4uMDllMDZhN2JhIDEwMDY0NAot LS0gYS9ORVdTCisrKyBiL05FV1MKQEAgLTE5LDcgKzE5LDExIEBAIG1hbnkgc2ltaWxhciBjbGF1 c2VzIHdob3NlIGZpcnN0IGRpZmZlcmVudGlhdG9yIGFyZSBjb25zdGFudHMuCiAqKiBOZXcgZnVu Y3Rpb24gbWtkaXItcmVjdXJzaXZlCiAKIFRoaXMgZnVuY3Rpb24gd2lsbCB0cnkgYW5kIGNyZWF0 ZSB0aGUgZGlyZWN0b3J5IGFuZCBwYXJlbnQgZGlyZWN0b3JpZXMsCi11cCB0byBhIGRpcmVjdG9y eSB0aGF0IGNhbiBiZSBvcGVuZWQgb3IgdGhlIHJvb3QuCit1cCB0byBhIGRpcmVjdG9yeSB0aGF0 IGNhbiBiZSBvcGVuZWQgb3IgdGhlIHJvb3QuIFRoaXMgYmVoYXZpb3IgaXMKK2luY2x1ZGVkIGlu IG9wZW4tb3V0cHV0LWZpbGUsIGNhbGwtd2l0aC1vdXRwdXQtZmlsZSwgd2l0aC1vdXRwdXQtdG8t ZmlsZQorYW5kIHdpdGgtZXJyb3ItdG8tZmlsZSBieSBhZGRpbmcgYSBrZXl3b3JkIGFyZ3VtZW50 IGAjOm1rZGlyJyB3aGljaCwKK3doZW4gc2V0IHRvIGAjdCcsIGNyZWF0ZXMgdGhlIGRpcmVjdG9y aWVzIGJlZm9yZSB0cnlpbmcgdG8gb3BlbiB0aGUKK2ZpbGUuCiAKICogSW5jb21wYXRpYmxlIGNo YW5nZXMKIApkaWZmIC0tZ2l0IGEvZG9jL3JlZi9hcGktaW8udGV4aSBiL2RvYy9yZWYvYXBpLWlv LnRleGkKaW5kZXggZWNiZDM1NTg1Li4wYzZiZWVjMjAgMTAwNjQ0Ci0tLSBhL2RvYy9yZWYvYXBp LWlvLnRleGkKKysrIGIvZG9jL3JlZi9hcGktaW8udGV4aQpAQCAtMTAzNiwxMyArMTAzNiwxNiBA QCBmb3IgQGNvZGV7b3Blbi1maWxlfS4gIEVxdWl2YWxlbnQgdG8KIAogQHJuaW5kZXggb3Blbi1v dXRwdXQtZmlsZQogQGRlZmZuIHtTY2hlbWUgUHJvY2VkdXJlfSBvcGVuLW91dHB1dC1maWxlIGZp bGVuYW1lIEAKLSAgICAgICBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNmXQorICAgICAgIFsj OmVuY29kaW5nPSNmXSBbIzpiaW5hcnk9I2ZdIFsjOm1rZGlyPSNmXQogCiBPcGVuIEB2YXJ7Zmls ZW5hbWV9IGZvciBvdXRwdXQuICBJZiBAdmFye2JpbmFyeX0gaXMgdHJ1ZSwgb3BlbiB0aGUgcG9y dAogaW4gYmluYXJ5IG1vZGUsIG90aGVyd2lzZSB1c2UgdGV4dCBtb2RlLiAgQHZhcntlbmNvZGlu Z30gc3BlY2lmaWVzIHRoZQotY2hhcmFjdGVyIGVuY29kaW5nIGFzIGRlc2NyaWJlZCBhYm92ZSBm b3IgQGNvZGV7b3Blbi1maWxlfS4gIEVxdWl2YWxlbnQKLXRvCitjaGFyYWN0ZXIgZW5jb2Rpbmcg YXMgZGVzY3JpYmVkIGFib3ZlIGZvciBAY29kZXtvcGVuLWZpbGV9LiAgSWYKK0B2YXJ7bWtkaXJ9 IGlzIHRydWUsIHJlY3Vyc2l2ZWx5IGNyZWF0ZSB0aGUgZGlyZWN0b3J5IG9mIEB2YXJ7ZmlsZW5h bWV9CitpZiBpdCBkb2VzIG5vdCBleGlzdCBmaXJzdC4gIEVxdWl2YWxlbnQgdG8KIEBsaXNwCiso d2hlbiBAdmFye21rZGlyfQorICAobWtkaXItcmVjdXJzaXZlIChkaXJuYW1lIEB2YXJ7ZmlsZW5h bWV9KSkpCiAob3Blbi1maWxlIEB2YXJ7ZmlsZW5hbWV9CiAgICAgICAgICAgIChpZiBAdmFye2Jp bmFyeX0gIndiIiAidyIpCiAgICAgICAgICAgICM6ZW5jb2RpbmcgQHZhcntlbmNvZGluZ30pCkBA IC0xMDUyLDEyICsxMDU1LDE0IEBAIHRvCiBAZGVmZm4ge1NjaGVtZSBQcm9jZWR1cmV9IGNhbGwt d2l0aC1pbnB1dC1maWxlIGZpbGVuYW1lIHByb2MgQAogICAgICAgICBbIzpndWVzcy1lbmNvZGlu Zz0jZl0gWyM6ZW5jb2Rpbmc9I2ZdIFsjOmJpbmFyeT0jZl0KIEBkZWZmbngge1NjaGVtZSBQcm9j ZWR1cmV9IGNhbGwtd2l0aC1vdXRwdXQtZmlsZSBmaWxlbmFtZSBwcm9jIEAKLSAgICAgICAgWyM6 ZW5jb2Rpbmc9I2ZdIFsjOmJpbmFyeT0jZl0KKyAgICAgICAgWyM6ZW5jb2Rpbmc9I2ZdIFsjOmJp bmFyeT0jZl0gWyM6bWtkaXI9I2ZdCiBAcm5pbmRleCBjYWxsLXdpdGgtaW5wdXQtZmlsZQogQHJu aW5kZXggY2FsbC13aXRoLW91dHB1dC1maWxlCiBPcGVuIEB2YXJ7ZmlsZW5hbWV9IGZvciBpbnB1 dCBvciBvdXRwdXQsIGFuZCBjYWxsIEBjb2RleyhAdmFye3Byb2N9Ci1wb3J0KX0gd2l0aCB0aGUg cmVzdWx0aW5nIHBvcnQuICBSZXR1cm4gdGhlIHZhbHVlIHJldHVybmVkIGJ5Ci1AdmFye3Byb2N9 LiAgQHZhcntmaWxlbmFtZX0gaXMgb3BlbmVkIGFzIHBlciBAY29kZXtvcGVuLWlucHV0LWZpbGV9 IG9yCitwb3J0KX0gd2l0aCB0aGUgcmVzdWx0aW5nIHBvcnQuICBGb3IgQHZhcntjYWxsLXdpdGgt b3V0cHV0LWZpbGV9LCBpZgorQHZhcntta2Rpcn0gaXMgdHJ1ZSwgY3JlYXRlIHRoZSBkaXJlY3Rv cnkgb2YgQHZhcntmaWxlbmFtZX0gcmVjdXJzaXZlbHkKK2lmIGl0IGRvZXMgbm90IGV4aXN0IGZp cnN0LiAgUmV0dXJuIHRoZSB2YWx1ZSByZXR1cm5lZCBieSBAdmFye3Byb2N9LgorQHZhcntmaWxl bmFtZX0gaXMgb3BlbmVkIGFzIHBlciBAY29kZXtvcGVuLWlucHV0LWZpbGV9IG9yCiBAY29kZXtv cGVuLW91dHB1dC1maWxlfSByZXNwZWN0aXZlbHksIGFuZCBhbiBlcnJvciBpcyBzaWduYWxlZCBp ZiBpdAogY2Fubm90IGJlIG9wZW5lZC4KIApAQCAtMTA2NSwyMiArMTA3MCwyOCBAQCBXaGVuIEB2 YXJ7cHJvY30gcmV0dXJucywgdGhlIHBvcnQgaXMgY2xvc2VkLiAgSWYgQHZhcntwcm9jfSBkb2Vz IG5vdAogcmV0dXJuIChlLmcuQDogaWYgaXQgdGhyb3dzIGFuIGVycm9yKSwgdGhlbiB0aGUgcG9y dCBtaWdodCBub3QgYmUKIGNsb3NlZCBhdXRvbWF0aWNhbGx5LCB0aG91Z2ggaXQgd2lsbCBiZSBn YXJiYWdlIGNvbGxlY3RlZCBpbiB0aGUgdXN1YWwKIHdheSBpZiBub3Qgb3RoZXJ3aXNlIHJlZmVy ZW5jZWQuCisKK0lmIEB2YXJ7bWtkaXJ9IGlzIHRydWUsIGNyZWF0ZSBAdmFye2ZpbGVuYW1lfSdz IGRpcmVjdG9yeSBhbmQgYWxsCitpdHMgcGFyZW50cy4KIEBlbmQgZGVmZm4KIAogQGRlZmZuIHtT Y2hlbWUgUHJvY2VkdXJlfSB3aXRoLWlucHV0LWZyb20tZmlsZSBmaWxlbmFtZSB0aHVuayBACiAg ICAgICAgIFsjOmd1ZXNzLWVuY29kaW5nPSNmXSBbIzplbmNvZGluZz0jZl0gWyM6YmluYXJ5PSNm XQogQGRlZmZueCB7U2NoZW1lIFByb2NlZHVyZX0gd2l0aC1vdXRwdXQtdG8tZmlsZSBmaWxlbmFt ZSB0aHVuayBACi0gICAgICAgIFsjOmVuY29kaW5nPSNmXSBbIzpiaW5hcnk9I2ZdCisgICAgICAg IFsjOmVuY29kaW5nPSNmXSBbIzpiaW5hcnk9I2ZdIFsjOm1rZGlyPSNmXQogQGRlZmZueCB7U2No ZW1lIFByb2NlZHVyZX0gd2l0aC1lcnJvci10by1maWxlIGZpbGVuYW1lIHRodW5rIEAKLSAgICAg ICAgWyM6ZW5jb2Rpbmc9I2ZdIFsjOmJpbmFyeT0jZl0KKyAgICAgICAgWyM6ZW5jb2Rpbmc9I2Zd IFsjOmJpbmFyeT0jZl0gWyM6bWtkaXI9I2ZdCiBAcm5pbmRleCB3aXRoLWlucHV0LWZyb20tZmls ZQogQHJuaW5kZXggd2l0aC1vdXRwdXQtdG8tZmlsZQogT3BlbiBAdmFye2ZpbGVuYW1lfSBhbmQg Y2FsbCBAY29kZXsoQHZhcnt0aHVua30pfSB3aXRoIHRoZSBuZXcgcG9ydAogc2V0dXAgYXMgcmVz cGVjdGl2ZWx5IHRoZSBAY29kZXtjdXJyZW50LWlucHV0LXBvcnR9LAotQGNvZGV7Y3VycmVudC1v dXRwdXQtcG9ydH0sIG9yIEBjb2Rle2N1cnJlbnQtZXJyb3ItcG9ydH0uICBSZXR1cm4gdGhlCi12 YWx1ZSByZXR1cm5lZCBieSBAdmFye3RodW5rfS4gIEB2YXJ7ZmlsZW5hbWV9IGlzIG9wZW5lZCBh cyBwZXIKLUBjb2Rle29wZW4taW5wdXQtZmlsZX0gb3IgQGNvZGV7b3Blbi1vdXRwdXQtZmlsZX0g cmVzcGVjdGl2ZWx5LCBhbmQgYW4KLWVycm9yIGlzIHNpZ25hbGVkIGlmIGl0IGNhbm5vdCBiZSBv cGVuZWQuCitAY29kZXtjdXJyZW50LW91dHB1dC1wb3J0fSwgb3IgQGNvZGV7Y3VycmVudC1lcnJv ci1wb3J0fS4gIEZvcgorQHZhcnt3aXRoLW91dHB1dC10by1maWxlfSBhbmQgQHZhcnt3aXRoLWVy cm9yLXRvLWZpbGV9LCBpZiBAdmFye21rZGlyfQoraXMgdHJ1ZSwgcmVjdXJzaXZlbHkgY3JlYXRl IHRoZSBkaXJlY3Rvcnkgb2YgQHZhcntmaWxlbmFtZX0gaWYgaXQgZG9lcworbm90IGV4aXN0IGZp cnN0LiAgUmV0dXJuIHRoZSB2YWx1ZSByZXR1cm5lZCBieSBAdmFye3RodW5rfS4KK0B2YXJ7Zmls ZW5hbWV9IGlzIG9wZW5lZCBhcyBwZXIgQGNvZGV7b3Blbi1pbnB1dC1maWxlfSBvcgorQGNvZGV7 b3Blbi1vdXRwdXQtZmlsZX0gcmVzcGVjdGl2ZWx5LCBhbmQgYW4gZXJyb3IgaXMgc2lnbmFsZWQg aWYgaXQKK2Nhbm5vdCBiZSBvcGVuZWQuCiAKIFdoZW4gQHZhcnt0aHVua30gcmV0dXJucywgdGhl IHBvcnQgaXMgY2xvc2VkIGFuZCB0aGUgcHJldmlvdXMgc2V0dGluZwogb2YgdGhlIHJlc3BlY3Rp dmUgY3VycmVudCBwb3J0IGlzIHJlc3RvcmVkLgpAQCAtMTA5NSw2ICsxMTA2LDkgQEAgZXhpdGVk IHZpYSBhbiBleGNlcHRpb24gb3IgbmV3IGNvbnRpbnVhdGlvbi4gIFRoaXMgZW5zdXJlcyBpdCdz IHN0aWxsCiByZWFkeSBmb3IgdXNlIGlmIEB2YXJ7dGh1bmt9IGlzIHJlLWVudGVyZWQgYnkgYSBj YXB0dXJlZCBjb250aW51YXRpb24uCiBPZiBjb3Vyc2UgdGhlIHBvcnQgaXMgYWx3YXlzIGdhcmJh Z2UgY29sbGVjdGVkIGFuZCBjbG9zZWQgaW4gdGhlIHVzdWFsCiB3YXkgd2hlbiBubyBsb25nZXIg cmVmZXJlbmNlZCBhbnl3aGVyZS4KKworSWYgQHZhcntta2Rpcn0gaXMgdHJ1ZSwgdGhlbiBAdmFy e2ZpbGVuYW1lfSdzIGRpcmVjdG9yeSBhbmQgYWxsIGl0cworcGFyZW50cyBhcmUgY3JlYXRlZC4K IEBlbmQgZGVmZm4KIAogQGRlZmZuIHtTY2hlbWUgUHJvY2VkdXJlfSBwb3J0LW1vZGUgcG9ydApk aWZmIC0tZ2l0IGEvbW9kdWxlL2ljZS05L3BvcnRzLnNjbSBiL21vZHVsZS9pY2UtOS9wb3J0cy5z Y20KaW5kZXggZWQwNzQyMzhiLi4wZWEwNDhlMjMgMTAwNjQ0Ci0tLSBhL21vZHVsZS9pY2UtOS9w b3J0cy5zY20KKysrIGIvbW9kdWxlL2ljZS05L3BvcnRzLnNjbQpAQCAtNDI5LDExICs0MjksMTQg QEAgZGlyZWN0b3J5LCBvciB1cCB0byB0aGUgcm9vdC4iCiAgICAgICAgICAgKGxhbWJkYSBlcnJv cgogICAgICAgICAgICAgI3QpKSkpKSkKIAotKGRlZmluZSogKG9wZW4tb3V0cHV0LWZpbGUgZmls ZSAjOmtleSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpKQorKGRlZmluZSogKG9wZW4tb3V0cHV0 LWZpbGUgZmlsZSAjOmtleSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpIChta2RpciAjZikpCiAg ICJUYWtlcyBhIHN0cmluZyBuYW1pbmcgYW4gb3V0cHV0IGZpbGUgdG8gYmUgY3JlYXRlZCBhbmQg cmV0dXJucyBhbgotb3V0cHV0IHBvcnQgY2FwYWJsZSBvZiB3cml0aW5nIGNoYXJhY3RlcnMgdG8g YSBuZXcgZmlsZSBieSB0aGF0Ci1uYW1lLiAgSWYgdGhlIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwg YW4gZXJyb3IgaXMgc2lnbmFsbGVkLiAgSWYgYQotZmlsZSB3aXRoIHRoZSBnaXZlbiBuYW1lIGFs cmVhZHkgZXhpc3RzLCB0aGUgZWZmZWN0IGlzIHVuc3BlY2lmaWVkLiIKK291dHB1dCBwb3J0IGNh cGFibGUgb2Ygd3JpdGluZyBjaGFyYWN0ZXJzIHRvIGEgbmV3IGZpbGUgYnkgdGhhdCBuYW1lLgor SWYgdGhlIGZpbGUgY2Fubm90IGJlIG9wZW5lZCwgYW4gZXJyb3IgaXMgc2lnbmFsbGVkLiAgSWYg YSBmaWxlIHdpdGggdGhlCitnaXZlbiBuYW1lIGFscmVhZHkgZXhpc3RzLCB0aGUgZWZmZWN0IGlz IHVuc3BlY2lmaWVkLiAgSWYgQHZhcntta2Rpcn0gaXMKK3RydWUsIHJlY3Vyc2l2ZWx5IGNyZWF0 ZSB0aGUgZGlyZWN0b3J5IG9mIEB2YXJ7ZmlsZX0uIgorICAod2hlbiBta2RpcgorICAgIChta2Rp ci1wIChkaXJuYW1lIGZpbGUpKSkKICAgKG9wZW4tZmlsZSBmaWxlIChpZiBiaW5hcnkgIndiIiAi dyIpCiAgICAgICAgICAgICAgIzplbmNvZGluZyBlbmNvZGluZykpCiAKQEAgLTQ2MywxOCArNDY2 LDE4IEBAIG5ldmVyIGFnYWluIGJlIHVzZWQgZm9yIGEgcmVhZCBvciB3cml0ZSBvcGVyYXRpb24u IgogICAgICAgICAoY2xvc2UtaW5wdXQtcG9ydCBwKQogICAgICAgICAoYXBwbHkgdmFsdWVzIHZh bHMpKSkpKQogCi0oZGVmaW5lKiAoY2FsbC13aXRoLW91dHB1dC1maWxlIGZpbGUgcHJvYyAjOmtl eSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpKQorKGRlZmluZSogKGNhbGwtd2l0aC1vdXRwdXQt ZmlsZSBmaWxlIHByb2MgIzprZXkgKGJpbmFyeSAjZikgKGVuY29kaW5nICNmKSAobWtkaXIgI2Yp KQogICAiUFJPQyBzaG91bGQgYmUgYSBwcm9jZWR1cmUgb2Ygb25lIGFyZ3VtZW50LCBhbmQgRklM RSBzaG91bGQgYmUgYQotc3RyaW5nIG5hbWluZyBhIGZpbGUuICBUaGUgYmVoYXZpb3VyIGlzIHVu c3BlY2lmaWVkIGlmIHRoZSBmaWxlCi1hbHJlYWR5IGV4aXN0cy4gVGhlc2UgcHJvY2VkdXJlcyBj YWxsIFBST0MKLXdpdGggb25lIGFyZ3VtZW50OiB0aGUgcG9ydCBvYnRhaW5lZCBieSBvcGVuaW5n IHRoZSBuYW1lZCBmaWxlIGZvcgotaW5wdXQgb3Igb3V0cHV0LiAgSWYgdGhlIGZpbGUgY2Fubm90 IGJlIG9wZW5lZCwgYW4gZXJyb3IgaXMKLXNpZ25hbGxlZC4gIElmIHRoZSBwcm9jZWR1cmUgcmV0 dXJucywgdGhlbiB0aGUgcG9ydCBpcyBjbG9zZWQKLWF1dG9tYXRpY2FsbHkgYW5kIHRoZSB2YWx1 ZXMgeWllbGRlZCBieSB0aGUgcHJvY2VkdXJlIGFyZSByZXR1cm5lZC4KLUlmIHRoZSBwcm9jZWR1 cmUgZG9lcyBub3QgcmV0dXJuLCB0aGVuIHRoZSBwb3J0IHdpbGwgbm90IGJlIGNsb3NlZAotYXV0 b21hdGljYWxseSB1bmxlc3MgaXQgaXMgcG9zc2libGUgdG8gcHJvdmUgdGhhdCB0aGUgcG9ydCB3 aWxsCi1uZXZlciBhZ2FpbiBiZSB1c2VkIGZvciBhIHJlYWQgb3Igd3JpdGUgb3BlcmF0aW9uLiIK LSAgKGxldCAoKHAgKG9wZW4tb3V0cHV0LWZpbGUgZmlsZSAjOmJpbmFyeSBiaW5hcnkgIzplbmNv ZGluZyBlbmNvZGluZykpKQorc3RyaW5nIG5hbWluZyBhIGZpbGUuICBUaGUgYmVoYXZpb3VyIGlz IHVuc3BlY2lmaWVkIGlmIHRoZSBmaWxlIGFscmVhZHkKK2V4aXN0cy4gVGhlc2UgcHJvY2VkdXJl cyBjYWxsIFBST0Mgd2l0aCBvbmUgYXJndW1lbnQ6IHRoZSBwb3J0IG9idGFpbmVkCitieSBvcGVu aW5nIHRoZSBuYW1lZCBmaWxlIGZvciBpbnB1dCBvciBvdXRwdXQuICBJZiB0aGUgZmlsZSBjYW5u b3QgYmUKK29wZW5lZCwgYW4gZXJyb3IgaXMgc2lnbmFsbGVkLiAgSWYgdGhlIHByb2NlZHVyZSBy ZXR1cm5zLCB0aGVuIHRoZSBwb3J0CitpcyBjbG9zZWQgYXV0b21hdGljYWxseSBhbmQgdGhlIHZh bHVlcyB5aWVsZGVkIGJ5IHRoZSBwcm9jZWR1cmUgYXJlCityZXR1cm5lZC4gIElmIHRoZSBwcm9j ZWR1cmUgZG9lcyBub3QgcmV0dXJuLCB0aGVuIHRoZSBwb3J0IHdpbGwgbm90IGJlCitjbG9zZWQg YXV0b21hdGljYWxseSB1bmxlc3MgaXQgaXMgcG9zc2libGUgdG8gcHJvdmUgdGhhdCB0aGUgcG9y dCB3aWxsCituZXZlciBhZ2FpbiBiZSB1c2VkIGZvciBhIHJlYWQgb3Igd3JpdGUgb3BlcmF0aW9u LiBXaGVuIE1LRElSIGlzIHRydWUsCitjcmVhdGUgRklMRSdzIGRpcmVjdG9yeSBhbmQgYWxsIGl0 cyBwYXJlbnRzLiIKKyAgKGxldCAoKHAgKG9wZW4tb3V0cHV0LWZpbGUgZmlsZSAjOmJpbmFyeSBi aW5hcnkgIzplbmNvZGluZyBlbmNvZGluZyAjOm1rZGlyIG1rZGlyKSkpCiAgICAgKGNhbGwtd2l0 aC12YWx1ZXMKICAgICAgIChsYW1iZGEgKCkgKHByb2MgcCkpCiAgICAgICAobGFtYmRhIHZhbHMK QEAgLTUxMCwzNSArNTEzLDM3IEBAIHByb2NlZHVyZXMsIHRoZWlyIGJlaGF2aW9yIGlzIGltcGxl bWVudGF0aW9uIGRlcGVuZGVudC4iCiAgICAjOmVuY29kaW5nIGVuY29kaW5nCiAgICAjOmd1ZXNz LWVuY29kaW5nIGd1ZXNzLWVuY29kaW5nKSkKIAotKGRlZmluZSogKHdpdGgtb3V0cHV0LXRvLWZp bGUgZmlsZSB0aHVuayAjOmtleSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpKQotICAiVEhVTksg bXVzdCBiZSBhIHByb2NlZHVyZSBvZiBubyBhcmd1bWVudHMsIGFuZCBGSUxFIG11c3QgYmUgYQot c3RyaW5nIG5hbWluZyBhIGZpbGUuICBUaGUgZWZmZWN0IGlzIHVuc3BlY2lmaWVkIGlmIHRoZSBm aWxlIGFscmVhZHkgZXhpc3RzLgorKGRlZmluZSogKHdpdGgtb3V0cHV0LXRvLWZpbGUgZmlsZSB0 aHVuayAjOmtleSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpIChta2RpciAjZikpCisgICJUSFVO SyBtdXN0IGJlIGEgcHJvY2VkdXJlIG9mIG5vIGFyZ3VtZW50cywgYW5kIEZJTEUgbXVzdCBiZSBh IHN0cmluZworbmFtaW5nIGEgZmlsZS4gIFRoZSBlZmZlY3QgaXMgdW5zcGVjaWZpZWQgaWYgdGhl IGZpbGUgYWxyZWFkeSBleGlzdHMuCiBUaGUgZmlsZSBpcyBvcGVuZWQgZm9yIG91dHB1dCwgYW4g b3V0cHV0IHBvcnQgY29ubmVjdGVkIHRvIGl0IGlzIG1hZGUKLXRoZSBkZWZhdWx0IHZhbHVlIHJl dHVybmVkIGJ5IGBjdXJyZW50LW91dHB1dC1wb3J0JywKLWFuZCB0aGUgVEhVTksgaXMgY2FsbGVk IHdpdGggbm8gYXJndW1lbnRzLgotV2hlbiB0aGUgVEhVTksgcmV0dXJucywgdGhlIHBvcnQgaXMg Y2xvc2VkIGFuZCB0aGUgcHJldmlvdXMKLWRlZmF1bHQgaXMgcmVzdG9yZWQuICBSZXR1cm5zIHRo ZSB2YWx1ZXMgeWllbGRlZCBieSBUSFVOSy4gIElmIGFuCi1lc2NhcGUgcHJvY2VkdXJlIGlzIHVz ZWQgdG8gZXNjYXBlIGZyb20gdGhlIGNvbnRpbnVhdGlvbiBvZiB0aGVzZQotcHJvY2VkdXJlcywg dGhlaXIgYmVoYXZpb3IgaXMgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiIKK3RoZSBkZWZhdWx0 IHZhbHVlIHJldHVybmVkIGJ5IGBjdXJyZW50LW91dHB1dC1wb3J0JywgYW5kIHRoZSBUSFVOSyBp cworY2FsbGVkIHdpdGggbm8gYXJndW1lbnRzLiAgV2hlbiB0aGUgVEhVTksgcmV0dXJucywgdGhl IHBvcnQgaXMgY2xvc2VkCithbmQgdGhlIHByZXZpb3VzIGRlZmF1bHQgaXMgcmVzdG9yZWQuICBS ZXR1cm5zIHRoZSB2YWx1ZXMgeWllbGRlZCBieQorVEhVTksuICBJZiBhbiBlc2NhcGUgcHJvY2Vk dXJlIGlzIHVzZWQgdG8gZXNjYXBlIGZyb20gdGhlIGNvbnRpbnVhdGlvbgorb2YgdGhlc2UgcHJv Y2VkdXJlcywgdGhlaXIgYmVoYXZpb3IgaXMgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiBXaGVu CitNS0RJUiBpcyB0cnVlLCB0aGUgZGlyZWN0b3J5IG9mIEZJTEUgYW5kIGFsbCBpdHMgcGFyZW50 cyBhcmUgY3JlYXRlZC4iCiAgIChjYWxsLXdpdGgtb3V0cHV0LWZpbGUgZmlsZQogICAgKGxhbWJk YSAocCkgKHdpdGgtb3V0cHV0LXRvLXBvcnQgcCB0aHVuaykpCiAgICAjOmJpbmFyeSBiaW5hcnkK LSAgICM6ZW5jb2RpbmcgZW5jb2RpbmcpKQorICAgIzplbmNvZGluZyBlbmNvZGluZworICAgIzpt a2RpciBta2RpcikpCiAKLShkZWZpbmUqICh3aXRoLWVycm9yLXRvLWZpbGUgZmlsZSB0aHVuayAj OmtleSAoYmluYXJ5ICNmKSAoZW5jb2RpbmcgI2YpKQotICAiVEhVTksgbXVzdCBiZSBhIHByb2Nl ZHVyZSBvZiBubyBhcmd1bWVudHMsIGFuZCBGSUxFIG11c3QgYmUgYQotc3RyaW5nIG5hbWluZyBh IGZpbGUuICBUaGUgZWZmZWN0IGlzIHVuc3BlY2lmaWVkIGlmIHRoZSBmaWxlIGFscmVhZHkgZXhp c3RzLgorKGRlZmluZSogKHdpdGgtZXJyb3ItdG8tZmlsZSBmaWxlIHRodW5rICM6a2V5IChiaW5h cnkgI2YpIChlbmNvZGluZyAjZikgKG1rZGlyICNmKSkKKyAgIlRIVU5LIG11c3QgYmUgYSBwcm9j ZWR1cmUgb2Ygbm8gYXJndW1lbnRzLCBhbmQgRklMRSBtdXN0IGJlIGEgc3RyaW5nCituYW1pbmcg YSBmaWxlLiAgVGhlIGVmZmVjdCBpcyB1bnNwZWNpZmllZCBpZiB0aGUgZmlsZSBhbHJlYWR5IGV4 aXN0cy4KIFRoZSBmaWxlIGlzIG9wZW5lZCBmb3Igb3V0cHV0LCBhbiBvdXRwdXQgcG9ydCBjb25u ZWN0ZWQgdG8gaXQgaXMgbWFkZQotdGhlIGRlZmF1bHQgdmFsdWUgcmV0dXJuZWQgYnkgYGN1cnJl bnQtZXJyb3ItcG9ydCcsCi1hbmQgdGhlIFRIVU5LIGlzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50 cy4KLVdoZW4gdGhlIFRIVU5LIHJldHVybnMsIHRoZSBwb3J0IGlzIGNsb3NlZCBhbmQgdGhlIHBy ZXZpb3VzCi1kZWZhdWx0IGlzIHJlc3RvcmVkLiAgUmV0dXJucyB0aGUgdmFsdWVzIHlpZWxkZWQg YnkgVEhVTksuICBJZiBhbgotZXNjYXBlIHByb2NlZHVyZSBpcyB1c2VkIHRvIGVzY2FwZSBmcm9t IHRoZSBjb250aW51YXRpb24gb2YgdGhlc2UKLXByb2NlZHVyZXMsIHRoZWlyIGJlaGF2aW9yIGlz IGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4iCit0aGUgZGVmYXVsdCB2YWx1ZSByZXR1cm5lZCBi eSBgY3VycmVudC1lcnJvci1wb3J0JywgYW5kIHRoZSBUSFVOSyBpcworY2FsbGVkIHdpdGggbm8g YXJndW1lbnRzLiAgV2hlbiB0aGUgVEhVTksgcmV0dXJucywgdGhlIHBvcnQgaXMgY2xvc2VkCith bmQgdGhlIHByZXZpb3VzIGRlZmF1bHQgaXMgcmVzdG9yZWQuICBSZXR1cm5zIHRoZSB2YWx1ZXMg eWllbGRlZCBieQorVEhVTksuICBJZiBhbiBlc2NhcGUgcHJvY2VkdXJlIGlzIHVzZWQgdG8gZXNj YXBlIGZyb20gdGhlIGNvbnRpbnVhdGlvbgorb2YgdGhlc2UgcHJvY2VkdXJlcywgdGhlaXIgYmVo YXZpb3IgaXMgaW1wbGVtZW50YXRpb24gZGVwZW5kZW50LiBXaGVuCitNS0RJUiBpcyB0cnVlLCB0 aGUgZGlyZWN0b3J5IG9mIEZJTEUgYW5kIGFsbCBpdHMgcGFyZW50cyBhcmUgY3JlYXRlZC4iCiAg IChjYWxsLXdpdGgtb3V0cHV0LWZpbGUgZmlsZQogICAgKGxhbWJkYSAocCkgKHdpdGgtZXJyb3It dG8tcG9ydCBwIHRodW5rKSkKICAgICM6YmluYXJ5IGJpbmFyeQotICAgIzplbmNvZGluZyBlbmNv ZGluZykpCisgICAjOmVuY29kaW5nIGVuY29kaW5nCisgICAjOm1rZGlyIG1rZGlyKSkKIAogKGRl ZmluZSAoY2FsbC13aXRoLWlucHV0LXN0cmluZyBzdHJpbmcgcHJvYykKICAgIkNhbGxzIHRoZSBv bmUtYXJndW1lbnQgcHJvY2VkdXJlIEB2YXJ7cHJvY30gd2l0aCBhIG5ld2x5IGNyZWF0ZWQKLS0g CjIuMjkuMQoK --=-5WQk0+X3B5zLqlWQkO+R Content-Disposition: attachment; filename="0001-ports-Add-mkdir-recursive.patch" Content-Type: text/x-patch; name="0001-ports-Add-mkdir-recursive.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBjMTViOWZmZjFiY2Q5MDg0OGM2YzE2YTllMmU1Y2ZhMzAzMzdhY2U3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBkaXZvcGxhZGUgPGRAZGl2b3BsYWRlLmZyPgpEYXRlOiBGcmks IDIzIE9jdCAyMDIwIDIyOjQ0OjM2ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxLzJdIHBvcnRzOiBB ZGQgbWtkaXItcmVjdXJzaXZlCgoyMDIwLTEwLTI1IGRpdm9wbGFkZSA8ZEBkaXZvcGxhZGUuZnI+ CgkqIG1vZHVsZS9pY2UtOS9wb3J0cy5zY206IGFkZCBhIGZ1bmN0aW9uLCBta2Rpci1yZWN1cnNp dmUsIHRvCgljcmVhdGUgdGhlIGNoYWluIG9mIGRpcmVjdG9yaWVzLgoJKiBkb2MvcmVmL3Bvc2l4 LnRleGk6IGRvY3VtZW50IHRoZSBuZXcgZnVuY3Rpb24gbWtkaXItcmVjdXJzaXZlLgoJKiBORVdT OiBtZW50aW9uIHRoZSBuZXcgZnVuY3Rpb24uCgkqIHRlc3Qtc3VpdGUvdGVzdHMvcG9ydHMudGVz dDogYWRkIGEgdGVzdCBzdWl0ZSB0byBjaGVjawoJcmVjdXJzaXZlIG1rZGlyLgotLS0KIE5FV1Mg ICAgICAgICAgICAgICAgICAgICAgICB8ICA1ICsrKysrCiBkb2MvcmVmL3Bvc2l4LnRleGkgICAg ICAgICAgfCAxNSArKysrKysrKysrLS0tLQogbW9kdWxlL2ljZS05L3BvcnRzLnNjbSAgICAgIHwg MTYgKysrKysrKysrKysrKysrCiB0ZXN0LXN1aXRlL3Rlc3RzL3BvcnRzLnRlc3QgfCA0MCArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDcyIGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvTkVXUyBiL05FV1MKaW5k ZXggNjk0NDQ5MjAyLi45NGEzZjMxNTQgMTAwNjQ0Ci0tLSBhL05FV1MKKysrIGIvTkVXUwpAQCAt MTYsNiArMTYsMTEgQEAgTygxKSBkaXNwYXRjaCB0aW1lLCByZWdhcmRsZXNzIG9mIHRoZSBsZW5n dGggb2YgdGhlIGNoYWluLiAgVGhpcwogb3B0aW1pemF0aW9uIGlzIGFsc28gdW5sb2NrZWQgaW4g bWFueSBjYXNlcyBmb3IgYG1hdGNoJyBleHByZXNzaW9ucyB3aXRoCiBtYW55IHNpbWlsYXIgY2xh dXNlcyB3aG9zZSBmaXJzdCBkaWZmZXJlbnRpYXRvciBhcmUgY29uc3RhbnRzLgogCisqKiBOZXcg ZnVuY3Rpb24gbWtkaXItcmVjdXJzaXZlCisKK1RoaXMgZnVuY3Rpb24gd2lsbCB0cnkgYW5kIGNy ZWF0ZSB0aGUgZGlyZWN0b3J5IGFuZCBwYXJlbnQgZGlyZWN0b3JpZXMsCit1cCB0byBhIGRpcmVj dG9yeSB0aGF0IGNhbiBiZSBvcGVuZWQgb3IgdGhlIHJvb3QuCisKICogSW5jb21wYXRpYmxlIGNo YW5nZXMKIAogKiogYGNvcHknIHJlYWQtb3B0aW9uIHJlbW92ZWQKZGlmZiAtLWdpdCBhL2RvYy9y ZWYvcG9zaXgudGV4aSBiL2RvYy9yZWYvcG9zaXgudGV4aQppbmRleCBmMzRjNTIyMmQuLmNiOTk0 Mzk3NyAxMDA2NDQKLS0tIGEvZG9jL3JlZi9wb3NpeC50ZXhpCisrKyBiL2RvYy9yZWYvcG9zaXgu dGV4aQpAQCAtODgxLDEwICs4ODEsMTcgQEAgQ3JlYXRlIGEgc3ltYm9saWMgbGluayBuYW1lZCBA dmFye25ld3BhdGh9IHdpdGggdGhlIHZhbHVlIChpLmUuLCBwb2ludGluZyB0bykKIEBkZWZmbiB7 U2NoZW1lIFByb2NlZHVyZX0gbWtkaXIgcGF0aCBbbW9kZV0KIEBkZWZmbngge0MgRnVuY3Rpb259 IHNjbV9ta2RpciAocGF0aCwgbW9kZSkKIENyZWF0ZSBhIG5ldyBkaXJlY3RvcnkgbmFtZWQgYnkg QHZhcntwYXRofS4gIElmIEB2YXJ7bW9kZX0gaXMgb21pdHRlZAotdGhlbiB0aGUgcGVybWlzc2lv bnMgb2YgdGhlIGRpcmVjdG9yeSBhcmUgc2V0IHRvIEBjb2RleyNvNzc3fQotbWFza2VkIHdpdGgg dGhlIGN1cnJlbnQgdW1hc2sgKEBweHJlZntQcm9jZXNzZXMsIEBjb2Rle3VtYXNrfX0pLgotT3Ro ZXJ3aXNlIHRoZXkgYXJlIHNldCB0byB0aGUgdmFsdWUgc3BlY2lmaWVkIHdpdGggQHZhcnttb2Rl fS4KLVRoZSByZXR1cm4gdmFsdWUgaXMgdW5zcGVjaWZpZWQuCit0aGVuIHRoZSBwZXJtaXNzaW9u cyBvZiB0aGUgZGlyZWN0b3J5IGFyZSBzZXQgdG8gQGNvZGV7I283Nzd9IG1hc2tlZAord2l0aCB0 aGUgY3VycmVudCB1bWFzayAoQHB4cmVme1Byb2Nlc3NlcywgQGNvZGV7dW1hc2t9fSkuICBPdGhl cndpc2UKK3RoZXkgYXJlIHNldCB0byB0aGUgdmFsdWUgc3BlY2lmaWVkIHdpdGggQHZhcnttb2Rl fS4gIFRoZSByZXR1cm4gdmFsdWUKK2lzIHVuc3BlY2lmaWVkLgorQGVuZCBkZWZmbgorCitAZGVm Zm4ge1NjaGVtZSBQcm9jZWR1cmV9IG1rZGlyLXJlY3Vyc2l2ZSBAdmFye3BhdGh9IFttb2RlXQor Q3JlYXRlIHRoZSBkaXJlY3RvcnkgbmFtZWQgQHZhcntwYXRofSwgd2l0aCB0aGUgb3B0aW9uYWwg Z2l2ZW4KK0B2YXJ7bW9kZX0sIGFzIGZvciBAY29kZXtta2Rpcn0uIENyZWF0ZSBhbGwgcGFyZW50 IGRpcmVjdG9yaWVzIHVwIHRvIGEKK2RpcmVjdG9yeSB0aGF0IGNhbiBiZSBvcGVuZWQsIG9yIHRo ZSByb290LiBUaGUgY2hhaW4gb2YgZGlyZWN0b3JpZXMgaXMKK25vdCBjbGVhbmVkIGluIGNhc2Ug b2YgYW4gZXJyb3IuCiBAZW5kIGRlZmZuCiAKIEBkZWZmbiB7U2NoZW1lIFByb2NlZHVyZX0gcm1k aXIgcGF0aApkaWZmIC0tZ2l0IGEvbW9kdWxlL2ljZS05L3BvcnRzLnNjbSBiL21vZHVsZS9pY2Ut OS9wb3J0cy5zY20KaW5kZXggZGJjN2VmN2E3Li5lZDA3NDIzOGIgMTAwNjQ0Ci0tLSBhL21vZHVs ZS9pY2UtOS9wb3J0cy5zY20KKysrIGIvbW9kdWxlL2ljZS05L3BvcnRzLnNjbQpAQCAtMTA1LDYg KzEwNSw3IEBACiAgICAgICAgICAgICBPUEVOX1JFQUQgT1BFTl9XUklURSBPUEVOX0JPVEgKICAg ICAgICAgICAgICpudWxsLWRldmljZSoKICAgICAgICAgICAgIG9wZW4taW5wdXQtZmlsZQorICAg ICAgICAgICAgbWtkaXItcmVjdXJzaXZlCiAgICAgICAgICAgICBvcGVuLW91dHB1dC1maWxlCiAg ICAgICAgICAgICBvcGVuLWlvLWZpbGUKICAgICAgICAgICAgIGNhbGwtd2l0aC1pbnB1dC1maWxl CkBAIC00MTMsNiArNDE0LDIxIEBAIGNhbm5vdCBiZSBvcGVuZWQsIGFuIGVycm9yIGlzIHNpZ25h bGxlZC4iCiAgICAgICAgICAgICAgIzplbmNvZGluZyBlbmNvZGluZwogICAgICAgICAgICAgICM6 Z3Vlc3MtZW5jb2RpbmcgZ3Vlc3MtZW5jb2RpbmcpKQogCisoZGVmaW5lIChta2Rpci1yZWN1cnNp dmUgbmFtZSkKKyAgIkNyZWF0ZSB0aGUgcGFyZW50IGRpcmVjdG9yaWVzIG9mIEB2YXJ7bmFtZX0s IHVwIHRvIGFuIGV4aXN0aW5nCitkaXJlY3RvcnksIG9yIHVwIHRvIHRoZSByb290LiIKKyAgKGNh dGNoICdzeXN0ZW0tZXJyb3IKKyAgICAobGFtYmRhICgpCisgICAgICAobWtkaXIgbmFtZSkpCisg ICAgKGxhbWJkYSBlcnJvcgorICAgICAgKHVubGVzcyAoPSBFRVhJU1QgKHN5c3RlbS1lcnJvci1l cnJubyBlcnJvcikpCisgICAgICAgIChta2Rpci1yZWN1cnNpdmUgKGRpcm5hbWUgbmFtZSkpCisg ICAgICAgIChjYXRjaCAnc3lzdGVtLWVycm9yCisgICAgICAgICAgKGxhbWJkYSAoKQorICAgICAg ICAgICAgKG1rZGlyIG5hbWUpKQorICAgICAgICAgIChsYW1iZGEgZXJyb3IKKyAgICAgICAgICAg ICN0KSkpKSkpCisKIChkZWZpbmUqIChvcGVuLW91dHB1dC1maWxlIGZpbGUgIzprZXkgKGJpbmFy eSAjZikgKGVuY29kaW5nICNmKSkKICAgIlRha2VzIGEgc3RyaW5nIG5hbWluZyBhbiBvdXRwdXQg ZmlsZSB0byBiZSBjcmVhdGVkIGFuZCByZXR1cm5zIGFuCiBvdXRwdXQgcG9ydCBjYXBhYmxlIG9m IHdyaXRpbmcgY2hhcmFjdGVycyB0byBhIG5ldyBmaWxlIGJ5IHRoYXQKZGlmZiAtLWdpdCBhL3Rl c3Qtc3VpdGUvdGVzdHMvcG9ydHMudGVzdCBiL3Rlc3Qtc3VpdGUvdGVzdHMvcG9ydHMudGVzdApp bmRleCAzMWZiMmIwYTguLmFiNjk2MTk1YiAxMDA2NDQKLS0tIGEvdGVzdC1zdWl0ZS90ZXN0cy9w b3J0cy50ZXN0CisrKyBiL3Rlc3Qtc3VpdGUvdGVzdHMvcG9ydHMudGVzdApAQCAtMjAyMiw2ICsy MDIyLDQ2IEBACiAKIChkZWxldGUtZmlsZSAodGVzdC1maWxlKSkKIAorKHdpdGgtdGVzdC1wcmVm aXggInJlY3Vyc2l2ZSBta2RpciIKKworICAocGFzcy1pZiAiUmVsYXRpdmUgcmVjdXJzaXZlIG1r ZGlyIGNyZWF0ZXMgdGhlIGNoYWluIG9mIGRpcmVjdG9yaWVzIgorICAgIChsZXQgKChkaXIgIi4v bmVzdGVkL3JlbGF0aXZlL3N1YmRpcmVjdG9yeSIpKQorICAgICAgKG1rZGlyLXJlY3Vyc2l2ZSBk aXIpCisgICAgICAobGV0ICgob2sKKyAgICAgICAgICAgICAoY2F0Y2ggI3QKKyAgICAgICAgICAg ICAgIChsYW1iZGEgKCkKKyAgICAgICAgICAgICAgICAgKHdpdGgtb3V0cHV0LXRvLWZpbGUgIi4v bmVzdGVkL3JlbGF0aXZlL3N1YmRpcmVjdG9yeS9maWxlIgorICAgICAgICAgICAgICAgICAgIChs YW1iZGEgKCkKKyAgICAgICAgICAgICAgICAgICAgIChkaXNwbGF5ICJUaGUgZGlyZWN0b3JpZXMg aGF2ZSBiZWVuIGNyZWF0ZWQhIikKKyAgICAgICAgICAgICAgICAgICAgICN0KSkpCisgICAgICAg ICAgICAgICAobGFtYmRhIChlcnJvciAuIGFyZ3MpCisgICAgICAgICAgICAgICAgICNmKSkpKQor ICAgICAgICAod2hlbiBvaworICAgICAgICAgIChkZWxldGUtZmlsZSAiLi9uZXN0ZWQvcmVsYXRp dmUvc3ViZGlyZWN0b3J5L2ZpbGUiKQorICAgICAgICAgIChybWRpciAiLi9uZXN0ZWQvcmVsYXRp dmUvc3ViZGlyZWN0b3J5IikKKyAgICAgICAgICAocm1kaXIgIi4vbmVzdGVkL3JlbGF0aXZlIikK KyAgICAgICAgICAocm1kaXIgIi4vbmVzdGVkIikpCisgICAgICAgIG9rKSkpCisKKyAgKHBhc3Mt aWYgIkFic29sdXRlIHJlY3Vyc2l2ZSBta2RpciBjcmVhdGVzIHRoZSBjaGFpbiBvZiBkaXJlY3Rv cmllcyIKKyAgICAobGV0ICgoZGlyIChzdHJpbmctYXBwZW5kICV0ZW1wb3JhcnktZGlyZWN0b3J5 ICIvbmVzdGVkL2Fic29sdXRlL3N1YmRpcmVjdG9yeSIpKSkKKyAgICAgIChta2Rpci1yZWN1cnNp dmUgZGlyKQorICAgICAgKGxldCAoKG9rCisgICAgICAgICAgICAgKGNhdGNoICN0CisgICAgICAg ICAgICAgICAobGFtYmRhICgpCisgICAgICAgICAgICAgICAgICh3aXRoLW91dHB1dC10by1maWxl IChzdHJpbmctYXBwZW5kIGRpciAiL2ZpbGUiKQorICAgICAgICAgICAgICAgICAgIChsYW1iZGEg KCkKKyAgICAgICAgICAgICAgICAgICAgIChkaXNwbGF5ICJUaGUgZGlyZWN0b3JpZXMgaGF2ZSBi ZWVuIGNyZWF0ZWQhIikKKyAgICAgICAgICAgICAgICAgICAgICN0KSkpCisgICAgICAgICAgICAg ICAobGFtYmRhIChlcnJvciAuIGFyZ3MpCisgICAgICAgICAgICAgICAgICNmKSkpKQorICAgICAg ICAod2hlbiBvaworICAgICAgICAgIChkZWxldGUtZmlsZSAoc3RyaW5nLWFwcGVuZCBkaXIgIi9m aWxlIikpCisgICAgICAgICAgKHJtZGlyIChzdHJpbmctYXBwZW5kICV0ZW1wb3JhcnktZGlyZWN0 b3J5ICIvbmVzdGVkL2Fic29sdXRlL3N1YmRpcmVjdG9yeSIpKQorICAgICAgICAgIChybWRpciAo c3RyaW5nLWFwcGVuZCAldGVtcG9yYXJ5LWRpcmVjdG9yeSAiL25lc3RlZC9hYnNvbHV0ZSIpKQor ICAgICAgICAgIChybWRpciAoc3RyaW5nLWFwcGVuZCAldGVtcG9yYXJ5LWRpcmVjdG9yeSAiL25l c3RlZCIpKSkKKyAgICAgICAgb2spKSkpCisKIDs7OyBMb2NhbCBWYXJpYWJsZXM6CiA7OzsgZXZh bDogKHB1dCAndGVzdC1kZWNvZGluZy1lcnJvciAnc2NoZW1lLWluZGVudC1mdW5jdGlvbiAzKQog Ozs7IGV2YWw6IChwdXQgJ3dpdGgtbG9hZC1wYXRoICdzY2hlbWUtaW5kZW50LWZ1bmN0aW9uIDEp Ci0tIAoyLjI5LjEKCg== --=-5WQk0+X3B5zLqlWQkO+R--