From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/8840 Path: news.gmane.org!not-for-mail From: Petr Hosek Newsgroups: gmane.linux.lib.musl.general Subject: Re: Support for out-of-tree build Date: Wed, 11 Nov 2015 22:02:50 +0000 Message-ID: References: <20151107130537.GC8500@port70.net> <20151108004323.GE3818@brightrain.aerifal.cx> <20151108021630.GG8500@port70.net> <20151108022920.GL3818@brightrain.aerifal.cx> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=94eb2c0340105e197b05244afd02 X-Trace: ger.gmane.org 1447279416 12024 80.91.229.3 (11 Nov 2015 22:03:36 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 11 Nov 2015 22:03:36 +0000 (UTC) To: musl@lists.openwall.com Original-X-From: musl-return-8853-gllmg-musl=m.gmane.org@lists.openwall.com Wed Nov 11 23:03:21 2015 Return-path: Envelope-to: gllmg-musl@m.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1ZwdU5-0000Hr-MS for gllmg-musl@m.gmane.org; Wed, 11 Nov 2015 23:03:18 +0100 Original-Received: (qmail 16264 invoked by uid 550); 11 Nov 2015 22:03:14 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 16221 invoked from network); 11 Nov 2015 22:03:13 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :content-type; bh=18Jq44sUXBlAJiHzP6LsL83N3eiw6+8YbCcANsFGfi0=; b=WXFGhYrMpd2dmBYQggVmZN8ppUreVnGdzh5plupdvzWgxhD2jSsIaKUdzsCuxVrkR2 8XkRgr/dfNFRX8t07ht4D8sv61m4pxMSeZ254tsEfvJ0V/jdGMRycLF1Su2uC8UYnbEw bua33dPQ3JzxnAUd8BHBMVCIu7phlUbAdOkuk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:content-type; bh=18Jq44sUXBlAJiHzP6LsL83N3eiw6+8YbCcANsFGfi0=; b=PTb47zWvEhOWF1YHZh2xKq66Tm3hkET55Z5ubnH61TYiyV4wmuL72HsuvXkbA/UPor wxUFzLDME9XZi/PfgrXXTewsvJtTWbh7SrN23xkgXncgqY5cBwzvjpuHfksc2+/LWzKS GK/WHW3gurSDJZdA5v3pqZPstXgL3OhcBCJwE+O9jmjnBQHSue6W38vT/Mp84r2DMOfl ZCNDPZtgv0D/xu+72aG2HfVuGyZbUtr1A3y2L3xnvB7Vwe6/sQAGFZHscVPo36ocIhAJ WQM+2IOmCjaAOUwkOXN5MmlthDUVwMHUVdXUwy/Ph5cSUCi7G0BpDhrW5FGz9l0JtEUA D9UA== X-Gm-Message-State: ALoCoQlSYcH+0ElxhKHYqiD9K3yZYWTkGY0YHrGF96/q+J4TjCa4JwV5sPvSgghy2ZFf0kklUU6q X-Received: by 10.13.242.196 with SMTP id b187mr13422747ywf.241.1447279380499; Wed, 11 Nov 2015 14:03:00 -0800 (PST) In-Reply-To: <20151108022920.GL3818@brightrain.aerifal.cx> Xref: news.gmane.org gmane.linux.lib.musl.general:8840 Archived-At: --94eb2c0340105e197b05244afd02 Content-Type: multipart/alternative; boundary=94eb2c0340105e197405244afd00 --94eb2c0340105e197405244afd00 Content-Type: text/plain; charset=UTF-8 Attached is an update version which doesn't use VPATH and supports both in-tree and out-of-tree builds. One way to improve this even further would be to completely avoid the mkasmdep and instead include the architecture specific object files into the list of objects directly (filtering out the generic versions). Would that be a preferred way? --94eb2c0340105e197405244afd00 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Attached is an update version which doesn't use VPATH = and supports both in-tree and out-of-tree builds.

One wa= y to improve this even further would be to completely avoid the mkasmdep an= d instead include the architecture specific object files into the list of o= bjects directly (filtering out the generic versions). Would that be a prefe= rred way?
--94eb2c0340105e197405244afd00-- --94eb2c0340105e197b05244afd02 Content-Type: text/x-patch; charset=US-ASCII; name="suport-out-of-tree-build.patch" Content-Disposition: attachment; filename="suport-out-of-tree-build.patch" Content-Transfer-Encoding: base64 Content-ID: <150f8909da93b0a07661> X-Attachment-Id: 150f8909da93b0a07661 RnJvbSAxMzM2YmM1YzFlZGRjNDMyMTQ1NTk3MTJmODU3MDJlZmJhOGFhODY0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRyIEhvc2VrIDxwaG9zZWtAY2hyb21pdW0ub3JnPgpEYXRl OiBUaHUsIDUgTm92IDIwMTUgMTQ6NTE6NTAgLTA4MDAKU3ViamVjdDogW1BBVENIXSBzdXBvcnQg b3V0LW9mLXRyZWUgYnVpbGQKCnRoaXMgY2hhbmdlIGFkZCBzdXBwb3J0IGZvciBidWlsZGluZyBt dXNsIG91dHNpZGUgb2YgdGhlIHNvdXJjZQp0cmVlLiB0aGUgaW1wbGVtZW50YXRpb24gaXMgc2lt aWxhciB0byBhdXRvdG9vbHMgd2hlcmUgcnVubmluZwpjb25maWd1cmUgaW4gYSBkaWZmZXJlbnQg Zm9sZGVyIGNyZWF0ZXMgY29uZmlnLm1hayBpbiB0aGUgY3VycmVudAp3b3JraW5nIGRpcmVjdG9y eSBhbmQgc3ltbGlua3MgdGhlIG1ha2VmaWxlLCB3aGljaCBjb250YWlucyB0aGUKbG9naWMgZm9y IGNyZWF0aW5nIGFsbCBuZWNlc3NhcnkgZGlyZWN0b3JpZXMgYW5kIHJlc29sdmluZyBwYXRocwpy ZWxhdGl2ZSB0byB0aGUgc291cmNlIGRpcmVjdG9yeS4gYmFzZWQgb24gcGF0Y2ggYnkgU3phYm9s Y3MgTmFneS4KLS0tCiBNYWtlZmlsZSAgfCA5MyArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGNvbmZpZ3VyZSB8IDI0ICsrKysr KysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDgyIGluc2VydGlvbnMoKyksIDM1IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKaW5kZXggMmIyMTAxNS4u YTAyMjQxMSAxMDA2NDQKLS0tIGEvTWFrZWZpbGUKKysrIGIvTWFrZWZpbGUKQEAgLTgsNiArOCw3 IEBACiAjIERvIG5vdCBtYWtlIGNoYW5nZXMgaGVyZS4KICMKIAorc3JjZGlyID0gLgogZXhlY19w cmVmaXggPSAvdXNyL2xvY2FsCiBiaW5kaXIgPSAkKGV4ZWNfcHJlZml4KS9iaW4KIApAQCAtMTYs MTIgKzE3LDI0IEBAIGluY2x1ZGVkaXIgPSAkKHByZWZpeCkvaW5jbHVkZQogbGliZGlyID0gJChw cmVmaXgpL2xpYgogc3lzbGliZGlyID0gL2xpYgogCi1TUkNTID0gJChzb3J0ICQod2lsZGNhcmQg c3JjLyovKi5jIGFyY2gvJChBUkNIKS9zcmMvKi5jKSkKLU9CSlMgPSAkKFNSQ1M6LmM9Lm8pCitT UkNTID0gJChzb3J0ICQod2lsZGNhcmQgJChzcmNkaXIpL3NyYy8qLyouYyAkKHNyY2RpcikvYXJj aC8kKEFSQ0gpL3NyYy8qLmMpKQorT0JKUyA9ICQoU1JDUzokKHNyY2RpcikvJS5jPSUubykKIExP QkpTID0gJChPQkpTOi5vPS5sbykKIEdFTkggPSBpbmNsdWRlL2JpdHMvYWxsdHlwZXMuaAogR0VO SF9JTlQgPSBzcmMvaW50ZXJuYWwvdmVyc2lvbi5oCi1JTVBIID0gc3JjL2ludGVybmFsL3N0ZGlv X2ltcGwuaCBzcmMvaW50ZXJuYWwvcHRocmVhZF9pbXBsLmggc3JjL2ludGVybmFsL2xpYmMuaAor SU1QSCA9ICQoYWRkcHJlZml4ICQoc3JjZGlyKS8sIHNyYy9pbnRlcm5hbC9zdGRpb19pbXBsLmgg c3JjL2ludGVybmFsL3B0aHJlYWRfaW1wbC5oIHNyYy9pbnRlcm5hbC9saWJjLmgpCisKK1NSQ1Nf U1VCID0gJCh3aWxkY2FyZCAkKHNyY2Rpcikvc3JjLyovJChBUkNIKSQoQVNNU1VCQVJDSCkvKi5z dWIpCitPQkpTX1NVQiA9ICQoZm9yZWFjaCBzLCQoU1JDU19TVUIpLCQoZGlyICQocGF0c3Vic3Qg JChzcmNkaXIpLyUvLCUsJChkaXIgJChzKSkpKSQobm90ZGlyICQoczouc3ViPS5vKSkpCitMT0JK U19TVUIgPSAkKE9CSlNfU1VCOi5vPS5sbykKKworU1JDU19TID0gJCh3aWxkY2FyZCAkKHNyY2Rp cikvc3JjLyovJChBUkNIKSovKi5zKQorT0JKU19TID0gJChmb3JlYWNoIHMsJChTUkNTX1MpLCQo ZGlyICQocGF0c3Vic3QgJChzcmNkaXIpLyUvLCUsJChkaXIgJChzKSkpKSQobm90ZGlyICQoczou cz0ubykpKQorTE9CSlNfUyA9ICQoT0JKU19TOi5vPS5sbykKKworT0JKU19DID0gJChmaWx0ZXIt b3V0ICQoT0JKU19TKSAkKE9CSlNfU1VCKSwgJChPQkpTKSkKK0xPQkpTX0MgPSAkKE9CSlNfQzou bz0ubG8pCitPQkpTX0MgKz0gY3J0L2NydDEubyBjcnQvU2NydDEubyBjcnQvcmNydDEubyBjcnQv Y3J0aS5vIGNydC9jcnRuLm8KIAogTERGTEFHUyA9CiBMREZMQUdTX0FVVE8gPQpAQCAtMzIsNyAr NDUsNyBAQCBDRkxBR1NfQVVUTyA9IC1PcyAtcGlwZQogQ0ZMQUdTX0M5OUZTRSA9IC1zdGQ9Yzk5 IC1mZnJlZXN0YW5kaW5nIC1ub3N0ZGluYyAKIAogQ0ZMQUdTX0FMTCA9ICQoQ0ZMQUdTX0M5OUZT RSkKLUNGTEFHU19BTEwgKz0gLURfWE9QRU5fU09VUkNFPTcwMCAtSS4vYXJjaC8kKEFSQ0gpIC1J Li9zcmMvaW50ZXJuYWwgLUkuL2luY2x1ZGUKK0NGTEFHU19BTEwgKz0gLURfWE9QRU5fU09VUkNF PTcwMCAtSSQoc3JjZGlyKS9hcmNoLyQoQVJDSCkgJChzb3J0IC1JLi9zcmMvaW50ZXJuYWwgLUkk KHNyY2Rpcikvc3JjL2ludGVybmFsKSAkKHNvcnQgLUkuL2luY2x1ZGUgLUkkKHNyY2RpcikvaW5j bHVkZSkKIENGTEFHU19BTEwgKz0gJChDUFBGTEFHUykgJChDRkxBR1NfQVVUTykgJChDRkxBR1Mp CiBDRkxBR1NfQUxMX1NUQVRJQyA9ICQoQ0ZMQUdTX0FMTCkKIENGTEFHU19BTExfU0hBUkVEID0g JChDRkxBR1NfQUxMKSAtZlBJQyAtRFNIQVJFRApAQCAtNDEsMTAgKzU0LDExIEBAIExERkxBR1Nf QUxMID0gJChMREZMQUdTX0FVVE8pICQoTERGTEFHUykKIAogQVIgICAgICA9ICQoQ1JPU1NfQ09N UElMRSlhcgogUkFOTElCICA9ICQoQ1JPU1NfQ09NUElMRSlyYW5saWIKLUlOU1RBTEwgPSAuL3Rv b2xzL2luc3RhbGwuc2gKK0lOU1RBTEwgPSAkKHNyY2RpcikvdG9vbHMvaW5zdGFsbC5zaAogCi1B UkNIX0lOQ0xVREVTID0gJCh3aWxkY2FyZCBhcmNoLyQoQVJDSCkvYml0cy8qLmgpCi1BTExfSU5D TFVERVMgPSAkKHNvcnQgJCh3aWxkY2FyZCBpbmNsdWRlLyouaCBpbmNsdWRlLyovKi5oKSAkKEdF TkgpICQoQVJDSF9JTkNMVURFUzphcmNoLyQoQVJDSCkvJT1pbmNsdWRlLyUpKQorQVJDSF9JTkNM VURFUyA9ICQod2lsZGNhcmQgJChzcmNkaXIpL2FyY2gvJChBUkNIKS9iaXRzLyouaCkKK0lOQ0xV REVTID0gJCh3aWxkY2FyZCAkKHNyY2RpcikvaW5jbHVkZS8qLmggJChzcmNkaXIpL2luY2x1ZGUv Ki8qLmgpCitBTExfSU5DTFVERVMgPSAkKHNvcnQgJChJTkNMVURFUzokKHNyY2RpcikvJT0lKSAk KEdFTkgpICQoQVJDSF9JTkNMVURFUzokKHNyY2RpcikvYXJjaC8kKEFSQ0gpLyU9aW5jbHVkZS8l KSkKIAogRU1QVFlfTElCX05BTUVTID0gbSBydCBwdGhyZWFkIGNyeXB0IHV0aWwgeG5ldCByZXNv bHYgZGwKIEVNUFRZX0xJQlMgPSAkKEVNUFRZX0xJQl9OQU1FUzolPWxpYi9saWIlLmEpCkBAIC01 NSw2ICs2OSw4IEBAIFRPT0xfTElCUyA9IGxpYi9tdXNsLWdjYy5zcGVjcwogQUxMX0xJQlMgPSAk KENSVF9MSUJTKSAkKFNUQVRJQ19MSUJTKSAkKFNIQVJFRF9MSUJTKSAkKEVNUFRZX0xJQlMpICQo VE9PTF9MSUJTKQogQUxMX1RPT0xTID0gdG9vbHMvbXVzbC1nY2MKIAorU1JDX0RJUlMgPSAkKHNv cnQgJChkaXIgJChPQkpTKSAkKEFMTF9MSUJTKSAkKEFMTF9UT09MUykpIGFyY2gvJChBUkNIKS9i aXRzLyBjcnQvIGluY2x1ZGUvIHNyYy9pbnRlcm5hbC8pCisKIFdSQVBDQ19HQ0MgPSBnY2MKIFdS QVBDQ19DTEFORyA9IGNsYW5nCiAKQEAgLTY0LDYgKzgwLDE3IEBAIExEU09fUEFUSE5BTUUgPSAk KHN5c2xpYmRpcikvbGQtbXVzbC0kKEFSQ0gpJChTVUJBUkNIKS5zby4xCiAKIGFsbDogJChBTExf TElCUykgJChBTExfVE9PTFMpCiAKKyQoQUxMX0xJQlMpOiB8IGxpYi8KKyQoQUxMX1RPT0xTKTog fCB0b29scy8KKyQoQ1JUX0xJQlM6bGliLyU9Y3J0LyUpOiB8IGNydC8KKyQoT0JKUykgJChMT0JK Uyk6IHwgJChzb3J0ICQoZGlyICQoT0JKUykpKQorJChHRU5IKTogfCBhcmNoLyQoQVJDSCkvYml0 cy8KKyQoR0VOSF9JTlQpOiB8IHNyYy9pbnRlcm5hbC8KK2luY2x1ZGUvYml0czogfCBpbmNsdWRl CisKKyQoU1JDX0RJUlMpOgorCW1rZGlyIC1wICRACisKIGluc3RhbGw6IGluc3RhbGwtbGlicyBp bnN0YWxsLWhlYWRlcnMgaW5zdGFsbC10b29scwogCiBjbGVhbjoKQEAgLTgyLDI2ICsxMDksMjQg QEAgaW5jbHVkZS9iaXRzOgogCUB0ZXN0ICIkKEFSQ0gpIiB8fCB7IGVjaG8gIlBsZWFzZSBzZXQg QVJDSCBpbiBjb25maWcubWFrIGJlZm9yZSBydW5uaW5nIG1ha2UuIiA7IGV4aXQgMSA7IH0KIAls biAtc2YgLi4vYXJjaC8kKEFSQ0gpL2JpdHMgJEAKIAotaW5jbHVkZS9iaXRzL2FsbHR5cGVzLmgu aW46IGluY2x1ZGUvYml0cwotCi1pbmNsdWRlL2JpdHMvYWxsdHlwZXMuaDogaW5jbHVkZS9iaXRz L2FsbHR5cGVzLmguaW4gaW5jbHVkZS9hbGx0eXBlcy5oLmluIHRvb2xzL21rYWxsdHlwZXMuc2Vk Ci0Jc2VkIC1mIHRvb2xzL21rYWxsdHlwZXMuc2VkIGluY2x1ZGUvYml0cy9hbGx0eXBlcy5oLmlu IGluY2x1ZGUvYWxsdHlwZXMuaC5pbiA+ICRACitpbmNsdWRlL2JpdHMvYWxsdHlwZXMuaDogJChz cmNkaXIpL2FyY2gvJChBUkNIKS9iaXRzL2FsbHR5cGVzLmguaW4gJChzcmNkaXIpL2luY2x1ZGUv YWxsdHlwZXMuaC5pbiAkKHNyY2RpcikvdG9vbHMvbWthbGx0eXBlcy5zZWQgaW5jbHVkZS9iaXRz CisJc2VkIC1mICQoc3JjZGlyKS90b29scy9ta2FsbHR5cGVzLnNlZCAkKHNyY2RpcikvYXJjaC8k KEFSQ0gpL2JpdHMvYWxsdHlwZXMuaC5pbiAkKHNyY2RpcikvaW5jbHVkZS9hbGx0eXBlcy5oLmlu ID4gJEAKIAotc3JjL2ludGVybmFsL3ZlcnNpb24uaDogJCh3aWxkY2FyZCBWRVJTSU9OIC5naXQp Ci0JcHJpbnRmICcjZGVmaW5lIFZFUlNJT04gIiVzIlxuJyAiJCQoc2ggdG9vbHMvdmVyc2lvbi5z aCkiID4gJEAKK3NyYy9pbnRlcm5hbC92ZXJzaW9uLmg6ICQod2lsZGNhcmQgJChzcmNkaXIpL1ZF UlNJT04gJChzcmNkaXIpLy5naXQpCisJcHJpbnRmICcjZGVmaW5lIFZFUlNJT04gIiVzIlxuJyAi JCQoY2QgJChzcmNkaXIpOyBzaCB0b29scy92ZXJzaW9uLnNoKSIgPiAkQAogCiBzcmMvaW50ZXJu YWwvdmVyc2lvbi5sbzogc3JjL2ludGVybmFsL3ZlcnNpb24uaAogCi1jcnQvcmNydDEubyBzcmMv bGRzby9kbHN0YXJ0LmxvIHNyYy9sZHNvL2R5bmxpbmsubG86IHNyYy9pbnRlcm5hbC9keW5saW5r LmggYXJjaC8kKEFSQ0gpL3JlbG9jLmgKK2NydC9yY3J0MS5vIHNyYy9sZHNvL2Rsc3RhcnQubG8g c3JjL2xkc28vZHlubGluay5sbzogJChzcmNkaXIpL3NyYy9pbnRlcm5hbC9keW5saW5rLmggJChz cmNkaXIpL2FyY2gvJChBUkNIKS9yZWxvYy5oCiAKLWNydC9jcnQxLm8gY3J0L1NjcnQxLm8gY3J0 L3JjcnQxLm8gc3JjL2xkc28vZGxzdGFydC5sbzogJCh3aWxkY2FyZCBhcmNoLyQoQVJDSCkvY3J0 X2FyY2guaCkKK2NydC9jcnQxLm8gY3J0L3NjcnQxLm8gY3J0L3JjcnQxLm8gc3JjL2xkc28vZGxz dGFydC5sbzogJCh3aWxkY2FyZCAkKHNyY2RpcikvYXJjaC8kKEFSQ0gpL2NydF9hcmNoLmgpCiAK LWNydC9yY3J0MS5vOiBzcmMvbGRzby9kbHN0YXJ0LmMKK2NydC9yY3J0MS5vOiAkKHNyY2Rpcikv c3JjL2xkc28vZGxzdGFydC5jCiAKIGNydC9TY3J0MS5vIGNydC9yY3J0MS5vOiBDRkxBR1NfQUxM ICs9IC1mUElDCiAKLU9QVElNSVpFX1NSQ1MgPSAkKHdpbGRjYXJkICQoT1BUSU1JWkVfR0xPQlM6 JT1zcmMvJSkpCi0kKE9QVElNSVpFX1NSQ1M6JS5jPSUubykgJChPUFRJTUlaRV9TUkNTOiUuYz0l LmxvKTogQ0ZMQUdTICs9IC1PMworT1BUSU1JWkVfU1JDUyA9ICQod2lsZGNhcmQgJChPUFRJTUla RV9HTE9CUzolPSQoc3JjZGlyKS9zcmMvJSkpCiskKE9QVElNSVpFX1NSQ1M6JChzcmNkaXIpLyUu Yz0lLm8pICQoT1BUSU1JWkVfU1JDUzokKHNyY2RpcikvJS5jPSUubG8pOiBDRkxBR1MgKz0gLU8z CiAKIE1FTU9QU19TUkNTID0gc3JjL3N0cmluZy9tZW1jcHkuYyBzcmMvc3RyaW5nL21lbW1vdmUu YyBzcmMvc3RyaW5nL21lbWNtcC5jIHNyYy9zdHJpbmcvbWVtc2V0LmMKICQoTUVNT1BTX1NSQ1M6 JS5jPSUubykgJChNRU1PUFNfU1JDUzolLmM9JS5sbyk6IENGTEFHU19BTEwgKz0gJChDRkxBR1Nf TUVNT1BTKQpAQCAtMTE5LDM0ICsxNDQsMzUgQEAgJChDUlRfTElCUzpsaWIvJT1jcnQvJSk6IENG TEFHU19BTEwgKz0gLURDUlQKICMgZm9yY2UgdGhlIGNvcnJlc3BvbmRpbmcgb2JqZWN0IGZpbGUg dG8gYmUgcmVidWlsdCwgZXZlbiBpZiB0aGUgaW1wbGljaXQKICMgcnVsZSBiZWxvdyBnb2VzIGlu ZGlyZWN0bHkgdGhyb3VnaCBhIC5zdWIgZmlsZS4KIGRlZmluZSBta2FzbWRlcAotJChkaXIgJChw YXRzdWJzdCAlLywlLCQoZGlyICQoMSkpKSkkKG5vdGRpciAkKDE6LnM9Lm8pKTogJCgxKQorJChk aXIgJChwYXRzdWJzdCAkKHNyY2RpcikvJS8sJSwkKGRpciAkKDEpKSkpJChub3RkaXIgJCgxOi5z PS5vKSk6ICQoMSkKKyQoZGlyICQocGF0c3Vic3QgJChzcmNkaXIpLyUvLCUsJChkaXIgJCgxKSkp KSQobm90ZGlyICQoMToucz0ubG8pKTogJCgxKQogZW5kZWYKLSQoZm9yZWFjaCBzLCQod2lsZGNh cmQgc3JjLyovJChBUkNIKSovKi5zKSwkKGV2YWwgJChjYWxsIG1rYXNtZGVwLCQocykpKSkKKyQo Zm9yZWFjaCBzLCQod2lsZGNhcmQgJChzcmNkaXIpL3NyYy8qLyQoQVJDSCkqLyoucyksJChldmFs ICQoY2FsbCBta2FzbWRlcCwkKHMpKSkpCiAKICMgQ2hvb3NlIGludm9jYXRpb24gb2YgYXNzZW1i bGVyIHRvIGJlIHVzZWQKICMgJCgxKSBpcyBpbnB1dCBmaWxlLCAkKDIpIGlzIG91dHB1dCBmaWxl LCAkKDMpIGlzIGFzc2VtYmxlciBmbGFncwogaWZlcSAoJChBRERfQ0ZJKSx5ZXMpCi0JQVNfQ01E ID0gTENfQUxMPUMgYXdrIC1mIHRvb2xzL2FkZC1jZmkuY29tbW9uLmF3ayAtZiB0b29scy9hZGQt Y2ZpLiQoQVJDSCkuYXdrICQ8IHwgJChDQykgLXggYXNzZW1ibGVyIC1jIC1vICRAIC0KKwlBU19D TUQgPSBMQ19BTEw9QyBhd2sgLWYgJChzcmNkaXIpL3Rvb2xzL2FkZC1jZmkuY29tbW9uLmF3ayAt ZiAkKHNyY2RpcikvdG9vbHMvYWRkLWNmaS4kKEFSQ0gpLmF3ayAkPCB8ICQoQ0MpIC14IGFzc2Vt YmxlciAtYyAtbyAkQCAtCiBlbHNlCiAJQVNfQ01EID0gJChDQykgLWMgLW8gJEAgJDwKIGVuZGlm CiAKLSUubzogJChBUkNIKSQoQVNNU1VCQVJDSCkvJS5zdWIKKyQoT0JKU19TVUIpOiAlLm86CiAJ JChDQykgJChDRkxBR1NfQUxMX1NUQVRJQykgLWMgLW8gJEAgJChkaXIgJDwpJChzaGVsbCBjYXQg JDwpCiAKLSUubzogJChBUkNIKS8lLnMKKyQoT0JKU19TKTogJS5vOgogCSQoQVNfQ01EKSAkKENG TEFHU19BTExfU1RBVElDKQogCi0lLm86ICUuYyAkKEdFTkgpICQoSU1QSCkKKyQoT0JKU19DKTog JS5vOiAkKHNyY2RpcikvJS5jICQoR0VOSCkgJChJTVBIKQogCSQoQ0MpICQoQ0ZMQUdTX0FMTF9T VEFUSUMpIC1jIC1vICRAICQ8CiAKLSUubG86ICQoQVJDSCkkKEFTTVNVQkFSQ0gpLyUuc3ViCisk KExPQkpTX1NVQik6ICUubG86CiAJJChDQykgJChDRkxBR1NfQUxMX1NIQVJFRCkgLWMgLW8gJEAg JChkaXIgJDwpJChzaGVsbCBjYXQgJDwpCiAKLSUubG86ICQoQVJDSCkvJS5zCiskKExPQkpTX1Mp OiAlLmxvOgogCSQoQVNfQ01EKSAkKENGTEFHU19BTExfU0hBUkVEKQogCi0lLmxvOiAlLmMgJChH RU5IKSAkKElNUEgpCiskKExPQkpTX0MpOiAlLmxvOiAkKHNyY2RpcikvJS5jICQoR0VOSCkgJChJ TVBIKQogCSQoQ0MpICQoQ0ZMQUdTX0FMTF9TSEFSRUQpIC1jIC1vICRAICQ8CiAKIGxpYi9saWJj LnNvOiAkKExPQkpTKQpAQCAtMTY2LDE0ICsxOTIsMTQgQEAgJChFTVBUWV9MSUJTKToKIGxpYi8l Lm86IGNydC8lLm8KIAljcCAkPCAkQAogCi1saWIvbXVzbC1nY2Muc3BlY3M6IHRvb2xzL211c2wt Z2NjLnNwZWNzLnNoIGNvbmZpZy5tYWsKK2xpYi9tdXNsLWdjYy5zcGVjczogJChzcmNkaXIpL3Rv b2xzL211c2wtZ2NjLnNwZWNzLnNoIGNvbmZpZy5tYWsKIAlzaCAkPCAiJChpbmNsdWRlZGlyKSIg IiQobGliZGlyKSIgIiQoTERTT19QQVRITkFNRSkiID4gJEAKIAogdG9vbHMvbXVzbC1nY2M6IGNv bmZpZy5tYWsKIAlwcmludGYgJyMhL2Jpbi9zaFxuZXhlYyAiJCR7UkVBTEdDQzotJChXUkFQQ0Nf R0NDKX0iICIkJEAiIC1zcGVjcyAiJXMvbXVzbC1nY2Muc3BlY3MiXG4nICIkKGxpYmRpcikiID4g JEAKIAljaG1vZCAreCAkQAogCi10b29scy8lLWNsYW5nOiB0b29scy8lLWNsYW5nLmluIGNvbmZp Zy5tYWsKK3Rvb2xzLyUtY2xhbmc6ICQoc3JjZGlyKS90b29scy8lLWNsYW5nLmluIGNvbmZpZy5t YWsKIAlzZWQgLWUgJ3MhQENDQCEkKFdSQVBDQ19DTEFORykhZycgLWUgJ3MhQFBSRUZJWEAhJChw cmVmaXgpIWcnIC1lICdzIUBJTkNESVJAISQoaW5jbHVkZWRpcikhZycgLWUgJ3MhQExJQkRJUkAh JChsaWJkaXIpIWcnIC1lICdzIUBMRFNPQCEkKExEU09fUEFUSE5BTUUpIWcnICQ8ID4gJEAKIAlj aG1vZCAreCAkQAogCkBAIC0xODYsMTAgKzIxMiwxMyBAQCAkKERFU1RESVIpJChsaWJkaXIpLyUu c286IGxpYi8lLnNvCiAkKERFU1RESVIpJChsaWJkaXIpLyU6IGxpYi8lCiAJJChJTlNUQUxMKSAt RCAtbSA2NDQgJDwgJEAKIAorJChERVNURElSKSQoaW5jbHVkZWRpcikvYml0cy8lOiAkKHNyY2Rp cikvYXJjaC8kKEFSQ0gpL2JpdHMvJQorCSQoSU5TVEFMTCkgLUQgLW0gNjQ0ICQ8ICRACisKICQo REVTVERJUikkKGluY2x1ZGVkaXIpL2JpdHMvJTogYXJjaC8kKEFSQ0gpL2JpdHMvJQogCSQoSU5T VEFMTCkgLUQgLW0gNjQ0ICQ8ICRACiAKLSQoREVTVERJUikkKGluY2x1ZGVkaXIpLyU6IGluY2x1 ZGUvJQorJChERVNURElSKSQoaW5jbHVkZWRpcikvJTogJChzcmNkaXIpL2luY2x1ZGUvJQogCSQo SU5TVEFMTCkgLUQgLW0gNjQ0ICQ8ICRACiAKICQoREVTVERJUikkKExEU09fUEFUSE5BTUUpOiAk KERFU1RESVIpJChsaWJkaXIpL2xpYmMuc28KQEAgLTIwMiw5ICsyMzEsOSBAQCBpbnN0YWxsLWhl YWRlcnM6ICQoQUxMX0lOQ0xVREVTOmluY2x1ZGUvJT0kKERFU1RESVIpJChpbmNsdWRlZGlyKS8l KQogaW5zdGFsbC10b29sczogJChBTExfVE9PTFM6dG9vbHMvJT0kKERFU1RESVIpJChiaW5kaXIp LyUpCiAKIG11c2wtZ2l0LSUudGFyLmd6OiAuZ2l0Ci0JIGdpdCBhcmNoaXZlIC0tZm9ybWF0PXRh ci5neiAtLXByZWZpeD0kKHBhdHN1YnN0ICUudGFyLmd6LCUsJEApLyAtbyAkQCAkKHBhdHN1YnN0 IG11c2wtZ2l0LSUudGFyLmd6LCUsJEApCisJIGdpdCAtLWdpdC1kaXI9JChzcmNkaXIpLy5naXQg YXJjaGl2ZSAtLWZvcm1hdD10YXIuZ3ogLS1wcmVmaXg9JChwYXRzdWJzdCAlLnRhci5neiwlLCRA KS8gLW8gJEAgJChwYXRzdWJzdCBtdXNsLWdpdC0lLnRhci5neiwlLCRAKQogCiBtdXNsLSUudGFy Lmd6OiAuZ2l0Ci0JIGdpdCBhcmNoaXZlIC0tZm9ybWF0PXRhci5neiAtLXByZWZpeD0kKHBhdHN1 YnN0ICUudGFyLmd6LCUsJEApLyAtbyAkQCB2JChwYXRzdWJzdCBtdXNsLSUudGFyLmd6LCUsJEAp CisJIGdpdCAtLWdpdC1kaXI9JChzcmNkaXIpLy5naXQgYXJjaGl2ZSAtLWZvcm1hdD10YXIuZ3og LS1wcmVmaXg9JChwYXRzdWJzdCAlLnRhci5neiwlLCRAKS8gLW8gJEAgdiQocGF0c3Vic3QgbXVz bC0lLnRhci5neiwlLCRAKQogCiAuUEhPTlk6IGFsbCBjbGVhbiBpbnN0YWxsIGluc3RhbGwtbGli cyBpbnN0YWxsLWhlYWRlcnMgaW5zdGFsbC10b29scwpkaWZmIC0tZ2l0IGEvY29uZmlndXJlIGIv Y29uZmlndXJlCmluZGV4IGRlY2UxZDAuLjYwZWI5NGYgMTAwNzU1Ci0tLSBhL2NvbmZpZ3VyZQor KysgYi9jb25maWd1cmUKQEAgLTksNiArOSw5IEBAIFZBUj1WQUxVRS4gIFNlZSBiZWxvdyBmb3Ig ZGVzY3JpcHRpb25zIG9mIHNvbWUgb2YgdGhlIHVzZWZ1bCB2YXJpYWJsZXMuCiAKIERlZmF1bHRz IGZvciB0aGUgb3B0aW9ucyBhcmUgc3BlY2lmaWVkIGluIGJyYWNrZXRzLgogCitDb25maWd1cmF0 aW9uOgorICAtLXNyY2Rpcj1ESVIgICAgICAgICAgICBzb3VyY2UgZGlyZWN0b3J5IFtkZXRlY3Rl ZF0KKwogSW5zdGFsbGF0aW9uIGRpcmVjdG9yaWVzOgogICAtLXByZWZpeD1QUkVGSVggICAgICAg ICBtYWluIGluc3RhbGxhdGlvbiBwcmVmaXggWy91c3IvbG9jYWwvbXVzbF0KICAgLS1leGVjLXBy ZWZpeD1FUFJFRklYICAgaW5zdGFsbGF0aW9uIHByZWZpeCBmb3IgZXhlY3V0YWJsZSBmaWxlcyBb UFJFRklYXQpAQCAtMTE3LDYgKzEyMCw3IEBAIENGTEFHU19UUlk9CiBMREZMQUdTX0FVVE89CiBM REZMQUdTX1RSWT0KIE9QVElNSVpFX0dMT0JTPQorc3JjZGlyPQogcHJlZml4PS91c3IvbG9jYWwv bXVzbAogZXhlY19wcmVmaXg9JyQocHJlZml4KScKIGJpbmRpcj0nJChleGVjX3ByZWZpeCkvYmlu JwpAQCAtMTM5LDYgKzE0Myw3IEBAIGNsYW5nX3dyYXBwZXI9bm8KIGZvciBhcmcgOyBkbwogY2Fz ZSAiJGFyZyIgaW4KIC0taGVscCkgdXNhZ2UgOzsKKy0tc3JjZGlyPSopIHNyY2Rpcj0ke2FyZyMq PX0gOzsKIC0tcHJlZml4PSopIHByZWZpeD0ke2FyZyMqPX0gOzsKIC0tZXhlYy1wcmVmaXg9Kikg ZXhlY19wcmVmaXg9JHthcmcjKj19IDs7CiAtLWJpbmRpcj0qKSBiaW5kaXI9JHthcmcjKj19IDs7 CkBAIC0xNzksMTEgKzE4NCwyMyBAQCBMSUJDQz0qKSBMSUJDQz0ke2FyZyMqPX0gOzsKIGVzYWMK IGRvbmUKIAotZm9yIGkgaW4gcHJlZml4IGV4ZWNfcHJlZml4IGJpbmRpciBsaWJkaXIgaW5jbHVk ZWRpciBzeXNsaWJkaXIgOyBkbworZm9yIGkgaW4gc3JjZGlyIHByZWZpeCBleGVjX3ByZWZpeCBi aW5kaXIgbGliZGlyIGluY2x1ZGVkaXIgc3lzbGliZGlyIDsgZG8KIHN0cmlwZGlyICRpCiBkb25l CiAKICMKKyMgR2V0IHRoZSBtdXNsIHNvdXJjZSBkaXIgZm9yIG91dC1vZi10cmVlIGJ1aWxkcwor IworaWYgdGVzdCAteiAiJHNyY2RpciIgOyB0aGVuCitzcmNkaXI9IiR7MCUvY29uZmlndXJlfSIK K3N0cmlwZGlyIHNyY2RpcgorZmkKK2Fic19idWlsZGRpcj0iJChwd2QpIiB8fCBmYWlsICIkMDog Y2Fubm90IGRldGVybWluZSB3b3JraW5nIGRpcmVjdG9yeSIKK2Fic19zcmNkaXI9IiQoY2QgJHNy Y2RpciAmJiBwd2QpIiB8fCBmYWlsICIkMDogaW52YWxpZCBzb3VyY2UgZGlyZWN0b3J5ICRzcmNk aXIiCit0ZXN0ICIkYWJzX3NyY2RpciIgPSAiJGFic19idWlsZGRpciIgJiYgc3JjZGlyPS4KK2xu IC1zZiAkc3JjZGlyL01ha2VmaWxlIC4KKworIwogIyBHZXQgYSB0ZW1wIGZpbGVuYW1lIHdlIGNh biB1c2UKICMKIGk9MApAQCAtMzIxLDcgKzMzOCw3IEBAIF9fYXR0cmlidXRlX18oKF9fbWF5X2Fs aWFzX18pKQogI2VuZGlmCiB4OwogRU9GCi1pZiAkQ0MgJENGTEFHU19DOTlGU0UgLUkuL2FyY2gv JEFSQ0ggLUkuL2luY2x1ZGUgJENQUEZMQUdTICRDRkxBR1MgXAoraWYgJENDICRDRkxBR1NfQzk5 RlNFIC1JJHNyY2Rpci9hcmNoLyRBUkNIIC1JJHNyY2Rpci9pbmNsdWRlICRDUFBGTEFHUyAkQ0ZM QUdTIFwKICAgLWMgLW8gL2Rldi9udWxsICIkdG1wYyIgPi9kZXYvbnVsbCAyPiYxIDsgdGhlbgog cHJpbnRmICJub1xuIgogZWxzZQpAQCAtNjIwLDcgKzYzNyw3IEBAIGVjaG8gJyNpbmNsdWRlIDxm bG9hdC5oPicgPiAiJHRtcGMiCiBlY2hvICcjaWYgTERCTF9NQU5UX0RJRyA9PSA1MycgPj4gIiR0 bXBjIgogZWNobyAndHlwZWRlZiBjaGFyIGxkY2hlY2tbOS0oaW50KXNpemVvZihsb25nIGRvdWJs ZSldOycgPj4gIiR0bXBjIgogZWNobyAnI2VuZGlmJyA+PiAiJHRtcGMiCi1pZiAkQ0MgJENGTEFH U19DOTlGU0UgLUkuL2FyY2gvJEFSQ0ggLUkuL2luY2x1ZGUgJENQUEZMQUdTICRDRkxBR1MgXAor aWYgJENDICRDRkxBR1NfQzk5RlNFIC1JJHNyY2Rpci9hcmNoLyRBUkNIIC1JJHNyY2Rpci9pbmNs dWRlICRDUFBGTEFHUyAkQ0ZMQUdTIFwKICAgLWMgLW8gL2Rldi9udWxsICIkdG1wYyIgPi9kZXYv bnVsbCAyPiYxIDsgdGhlbgogcHJpbnRmICJ5ZXNcbiIKIGVsc2UKQEAgLTY0Myw2ICs2NjAsNyBA QCBjYXQgPDwgRU9GCiBBUkNIID0gJEFSQ0gKIFNVQkFSQ0ggPSAkU1VCQVJDSAogQVNNU1VCQVJD SCA9ICRBU01TVUJBUkNICitzcmNkaXIgPSAkc3JjZGlyCiBwcmVmaXggPSAkcHJlZml4CiBleGVj X3ByZWZpeCA9ICRleGVjX3ByZWZpeAogYmluZGlyID0gJGJpbmRpcgotLSAKMi42LjAucmMyLjIz MC5nM2RkMTVjMAoK --94eb2c0340105e197b05244afd02--