From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1Nbteu-00077z-NY for garchives@archives.gentoo.org; Mon, 01 Feb 2010 10:37:33 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 64B74E092A; Mon, 1 Feb 2010 10:37:20 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id DEE03E08FB for ; Mon, 1 Feb 2010 10:36:36 +0000 (UTC) Received: from [192.168.1.4] (smer.tone.cz [89.250.247.23]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTP id 8C3201B4024; Mon, 1 Feb 2010 10:36:34 +0000 (UTC) Message-ID: <4B66AE86.9090006@gentoo.org> Date: Mon, 01 Feb 2010 11:35:50 +0100 From: =?UTF-8?B?VG9tw6HFoSBDaHbDoXRhbA==?= User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.7) Gecko/20100131 Thunderbird/3.0.1 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 To: gentoo-dev@lists.gentoo.org, fonts@gentoo.org Subject: [gentoo-dev] [RFC] Font eclass EAPI update and design X-Enigmail-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enig2FB1934822F4FAAF6C61E778" X-Archives-Salt: ea9cb51a-7f46-47cf-bcac-14a5501d11f3 X-Archives-Hash: 4e9fcc8ef6ad1b3896b7710b8822db25 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig2FB1934822F4FAAF6C61E778 Content-Type: multipart/mixed; boundary="------------090006070006090005080807" This is a multi-part message in MIME format. --------------090006070006090005080807 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi guys, As I was reworking the x-modular-r2 eclass I found out that most of the slowdowns for fonts were produced in fonts eclass. Since we were the guys who are supposed to update it, I redesign it to be bit faster and also to support all known eapis. I would like to ask you to review the changes and spot anything that might slipped my sight. (Diff and full eclass attached) Expected addition to main tree: if nothing huge is found after fosdem, otherwise in 3 weeks Cheers Tomas --------------090006070006090005080807 Content-Type: text/plain; name="font.eclass" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="font.eclass" IyBDb3B5cmlnaHQgMTk5OS0yMDEwIEdlbnRvbyBGb3VuZGF0aW9uCiMgRGlzdHJpYnV0ZWQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2Mgoj ICRIZWFkZXI6ICQKCiMgQEVDTEFTUzogZm9udC5lY2xhc3MKIyBATUFJTlRBSU5FUjoKIyBm b250c0BnZW50b28ub3JnCgojIEF1dGhvcjogVG9tw6HFoSBDaHbDoXRhbCA8c2NhcmFiZXVz QGdlbnRvby5vcmc+CiMgQXV0aG9yOiBmb3NlciA8Zm9zZXJAZ2VudG9vLm9yZz4KIyBAQkxV UkI6IEVjbGFzcyB0byBtYWtlIGZvbnQgaW5zdGFsbGF0aW9uIHVuaWZvcm0KCmluaGVyaXQg ZXV0aWxzCgpFWFBPUlRfRlVOQ1RJT05TIHBrZ19zZXR1cCBzcmNfaW5zdGFsbCBwa2dfcG9z dGluc3QgcGtnX3Bvc3RybQoKIyBARUNMQVNTLVZBUklBQkxFOiBGT05UX1NVRkZJWAojIEBE RVNDUklQVElPTjoKIyBTcGFjZSBkZWxpbWl0ZWQgbGlzdCBvZiBmb250IHN1ZmZpeGVzIHRv IGluc3RhbGwKOiAke0ZPTlRfU1VGRklYOj19CgojIEBFQ0xBU1MtVkFSSUFCTEU6IEZPTlRf UwojIEBERVNDUklQVElPTjoKIyBEaXIgY29udGFpbmluZyB0aGUgZm9udHMKOiAke0ZPTlRf Uzo9JHtTfX0KCiMgQEVDTEFTUy1WQVJJQUJMRTogRk9OVF9QTgojIEBERVNDUklQVElPTjoK IyBMYXN0IHBhcnQgb2YgJEZPTlRESVIKOiAke0ZPTlRfUE46PSR7UE59fQoKIyBARUNMQVNT LVZBUklBQkxFOiBGT05URElSCiMgQERFU0NSSVBUSU9OOgojIFRoaXMgaXMgd2hlcmUgdGhl IGZvbnRzIGFyZSBpbnN0YWxsZWQKOiAke0ZPTlRESVI6LS91c3Ivc2hhcmUvZm9udHMvJHtG T05UX1BOfX0KCiMgQEVDTEFTUy1WQVJJQUJMRTogRk9OVF9DT05GCiMgQERFU0NSSVBUSU9O OgojIEFycmF5LCB3aGljaCBlbGVtZW50KHMpIGlzKGFyZSkgcGF0aChzKSBvZiBmb250Y29u ZmlnLTIuNCBmaWxlKHMpIHRvIGluc3RhbGwKRk9OVF9DT05GPSggIiIgKQoKIyBARUNMQVNT LVZBUklBQkxFOiBET0NTCiMgQERFU0NSSVBUSU9OOgojIERvY3MgdG8gaW5zdGFsbAo6ICR7 RE9DUzotfQoKSVVTRT0iWCIKCkRFUEVORD0iWD8gKAoJCXgxMS1hcHBzL21rZm9udGRpcgoJ CW1lZGlhLWZvbnRzL2VuY29kaW5ncwoJKQoJbWVkaWEtbGlicy9mb250Y29uZmlnIgoKIyBA RlVOQ1RJT046IGZvbnRfeGZvbnRfY29uZmlnCiMgQERFU0NSSVBUSU9OOgojIENyZWF0ZXMg dGhlIFhmb250IGZpbGVzLgpmb250X3hmb250X2NvbmZpZygpIHsKCSMgY3JlYXRlIFhmb250 IGZpbGVzCglpZiBoYXMgWCAke0lVU0UvLyt9ICYmIHVzZSBYIDsgdGhlbgoJCWViZWdpbiAi Q3JlYXRpbmcgZm9udHMuc2NhbGUgJiBmb250cy5kaXIiCgkJcm0gLWYgIiR7RUR9JHtGT05U RElSfSIvZm9udHMue2RpcixzY2FsZX0KCQlta2ZvbnRzY2FsZSAiJHtFRH0ke0ZPTlRESVJ9 IgoJCW1rZm9udGRpciBcCgkJCS1lICR7RVBSRUZJWH0vdXNyL3NoYXJlL2ZvbnRzL2VuY29k aW5ncyBcCgkJCS1lICR7RVBSRUZJWH0vdXNyL3NoYXJlL2ZvbnRzL2VuY29kaW5ncy9sYXJn ZSBcCgkJCSIke0VEfSR7Rk9OVERJUn0iCgkJZWVuZCAkPwoJCWlmIFsgLWUgIiR7Rk9OVF9T fS9mb250cy5hbGlhcyIgXSA7IHRoZW4KCQkJZG9pbnMgIiR7Rk9OVF9TfS9mb250cy5hbGlh cyIKCQlmaQoJZmkKfQoKIyBARlVOQ1RJT046IGZvbnRfeGZ0X2NvbmZpZwojIEBERVNDUklQ VElPTjoKIyBDcmVhdGVzIHRoZSBmb250Y29uZmlnIGNhY2hlIGlmIG5lY2Vzc2FyeS4KZm9u dF94ZnRfY29uZmlnKCkgewoJIyBjcmVhdGUgZm9udGNvbmZpZyBjYWNoZQoJZWJlZ2luICJD cmVhdGluZyBmb250Y29uZmlnIGNhY2hlIgoJZmMtY2FjaGUgLXNmICIke0VEfSR7Rk9OVERJ Un0iCgllZW5kICQ/Cn0KCiMgQEZVTkNUSU9OOiBmb250X2ZvbnRjb25maWcKIyBAREVTQ1JJ UFRJT046CiMgSW5zdGFsbHMgdGhlIGZvbnRjb25maWcgY29uZmlnIGZpbGVzIG9mIEZPTlRf Q09ORi4KZm9udF9mb250Y29uZmlnKCkgewoJbG9jYWwgY29uZmZpbGUKCWlmIFtbIC1uICR7 Rk9OVF9DT05GW0BdfSBdXTsgdGhlbgoJCWluc2ludG8gL2V0Yy9mb250cy9jb25mLmF2YWls LwoJCWZvciBjb25mZmlsZSBpbiAiJHtGT05UX0NPTkZbQF19IjsgZG8KCQkJW1sgLWUgICR7 Y29uZmZpbGV9IF1dICYmIGRvaW5zICR7Y29uZmZpbGV9CgkJZG9uZQoJZmkKfQoKIyBARlVO Q1RJT046IGZvbnRfc3JjX2luc3RhbGwKIyBAREVTQ1JJUFRJT046CiMgVGhlIGZvbnQgc3Jj X2luc3RhbGwgZnVuY3Rpb24uCmZvbnRfc3JjX2luc3RhbGwoKSB7Cglsb2NhbCBzdWZmaXgg Y29tbW9uZG9jCgoJcHVzaGQgIiR7Rk9OVF9TfSIgPiAvZGV2L251bGwKCglpbnNpbnRvICIk e0ZPTlRESVJ9IgoKCWZvciBzdWZmaXggaW4gJHtGT05UX1NVRkZJWH07IGRvCgkJZG9pbnMg Ki4ke3N1ZmZpeH0KCWRvbmUKCglybSAtZiBmb250cy57ZGlyLHNjYWxlfSBlbmNvZGluZ3Mu ZGlyCgoJZm9udF94Zm9udF9jb25maWcKCWZvbnRfeGZ0X2NvbmZpZwoJZm9udF9mb250Y29u ZmlnCgoJcG9wZCA+IC9kZXYvbnVsbAoKCVtbIC1uICR7RE9DU30gXV0gJiYgeyBkb2RvYyAk e0RPQ1N9IHx8IGRpZSAiZG9jcyBpbnN0YWxsYXRpb24gZmFpbGVkIiA7IH0KCgkjIGluc3Rh bGwgY29tbW9uIGRvY3MKCWZvciBjb21tb25kb2MgaW4gQ09QWVJJR0hUIFJFQURNRXssLnR4 dH0gTkVXUyBBVVRIT1JTIEJVR1MgQ2hhbmdlTG9nIEZPTlRMT0cudHh0OyBkbwoJCVtbIC1z ICR7Y29tbW9uZG9jfSBdXSAmJiBkb2RvYyAke2NvbW1vbmRvY30KCWRvbmUKfQoKIyBARlVO Q1RJT046IGZvbnRfcGtnX3NldHVwCiMgQERFU0NSSVBUSU9OOgojIFRoZSBmb250IHBrZ19z ZXR1cCBmdW5jdGlvbi4KIyBDb2xsaXNpb24gcG9ydGVjdGlvbiBhbmQgUHJlZml4IGNvbXBh dCBmb3IgZWFwaSA8IDMuCmZvbnRfcGtnX3NldHVwKCkgewoJIyBtYWtlIHN1cmUgd2UgZ2V0 IG5vIGNvbGxpc2lvbnMKCSMgc2V0dXAgaXMgbm90IHRoZSBuaWNlc3QgcGxhY2UsIGJ1dCBw cmVpbnN0IGRvZXNuJ3QgY3V0IGl0CglbWyAtZSAiJHtGT05URElSfS9mb250cy5jYWNoZS0x IiBdXSAmJiBybSAtZiAiJHtGT05URElSfS9mb250cy5jYWNoZS0xIgoKCSMgUHJlZml4IGNv bXBhdAoJY2FzZSAke0VBUEk6LTB9IGluCgkJMHwxfDIpCgkJCWlmICEgdXNlIHByZWZpeDsg dGhlbgoJCQkJRVBSRUZJWD0KCQkJCUVEPSR7RH0KCQkJCUVST09UPSR7Uk9PVH0KCQkJCVtb ICR7RVJPT1R9ID0gKi8gXV0gfHwgRVJPT1QrPSIvIgoJCQlmaQoJCQk7OwoJZXNhYwp9Cgoj IEBGVU5DVElPTjogZm9udF9wa2dfcG9zdGluc3QKIyBAREVTQ1JJUFRJT046CiMgVGhlIGZv bnQgcGtnX3Bvc3RpbnN0IGZ1bmN0aW9uLgojIFVwZGF0ZSBnbG9iYWwgZm9udCBjYWNoZSBh bmQgZml4IHBlcm1pc3Npb25zLgpmb250X3BrZ19wb3N0aW5zdCgpIHsKCSMgdW5yZWFkYWJs ZSBmb250IGZpbGVzID0gZm9udGNvbmZpZyBzZWdmYXVsdHMKCWZpbmQgIiR7RVJPT1R9InVz ci9zaGFyZS9mb250cy8gLXR5cGUgZiAnIScgLXBlcm0gMDY0NCAtcHJpbnQwIFwKCQl8IHhh cmdzIC0wIGNobW9kIC12IDA2NDQgMj4vZGV2L251bGwKCglpZiBbWyAtbiAke0ZPTlRfQ09O RltAXX0gXV07IHRoZW4KCQlsb2NhbCBjb25mZmlsZQoJCWVjaG8KCQllbG9nICJUaGUgZm9s bG93aW5nIGZvbnRjb25maWcgY29uZmlndXJhdGlvbiBmaWxlcyBoYXZlIGJlZW4gaW5zdGFs bGVkOiIKCQllbG9nCgkJZm9yIGNvbmZmaWxlIGluICIke0ZPTlRfQ09ORltAXX0iOyBkbwoJ CQlpZiBbWyAtZSAke0VST09UfWV0Yy9mb250cy9jb25mLmF2YWlsLyQoYmFzZW5hbWUgJHtj b25mZmlsZX0pIF1dOyB0aGVuCgkJCQllbG9nICIgICQoYmFzZW5hbWUgJHtjb25mZmlsZX0p IgoJCQlmaQoJCWRvbmUKCQllbG9nCgkJZWxvZyAiVXNlIFxgZXNlbGVjdCBmb250Y29uZmln XGAgdG8gZW5hYmxlL2Rpc2FibGUgdGhlbS4iCgkJZWNobwoJZmkKCglpZiBbWyAke1JPT1R9 ID09IC8gXV07IHRoZW4KCQllYmVnaW4gIlVwZGF0aW5nIGdsb2JhbCBmb250Y2FjaGUiCgkJ ZmMtY2FjaGUgLWZzCgkJZWVuZCAkPwoJZmkKfQoKIyBARlVOQ1RJT046IGZvbnRfcGtnX3Bv c3RybQojIEBERVNDUklQVElPTjoKIyBUaGUgZm9udCBwa2dfcG9zdHJtIGZ1bmN0aW9uLgoj IFVwZGF0ZXMgZ2xvYmFsIGZvbnQgY2FjaGUKZm9udF9wa2dfcG9zdHJtKCkgewoJIyB1bnJl YWRhYmxlIGZvbnQgZmlsZXMgPSBmb250Y29uZmlnIHNlZ2ZhdWx0cwoJZmluZCAiJHtFUk9P VH0idXNyL3NoYXJlL2ZvbnRzLyAtdHlwZSBmICchJyAtcGVybSAwNjQ0IC1wcmludDAgXAoJ CXwgeGFyZ3MgLTAgY2htb2QgLXYgMDY0NCAyPi9kZXYvbnVsbAoKCWlmIFtbICR7Uk9PVH0g PT0gLyBdXTsgdGhlbgoJCWViZWdpbiAiVXBkYXRpbmcgZ2xvYmFsIGZvbnRjYWNoZSIKCQlm Yy1jYWNoZSAtZnMKCQllZW5kICQ/CglmaQp9Cg== --------------090006070006090005080807 Content-Type: text/plain; name="font.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="font.diff" LS0tIGdlbnRvby9nZW50b28teDg2L2VjbGFzcy9mb250LmVjbGFzcwkyMDA5LTEwLTExIDIx OjI2OjExLjAwMDAwMDAwMCArMDIwMAorKysgL3Vzci9sb2NhbC9wb3J0YWdlL3gxMS9lY2xh c3MvZm9udC5lY2xhc3MJMjAxMC0wMS0zMSAxODozODoxOS4wMDAwMDAwMDAgKzAxMDAKQEAg LTEsNDIgKzEsMzggQEAKLSMgQ29weXJpZ2h0IDE5OTktMjAwNyBHZW50b28gRm91bmRhdGlv bgorIyBDb3B5cmlnaHQgMTk5OS0yMDEwIEdlbnRvbyBGb3VuZGF0aW9uCiAjIERpc3RyaWJ1 dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug djIKLSMgJEhlYWRlcjogL3Zhci9jdnNyb290L2dlbnRvby14ODYvZWNsYXNzL2ZvbnQuZWNs YXNzLHYgMS40NyAyMDA5LzEwLzExIDExOjQ0OjQyIG1hZWtrZSBFeHAgJAorIyAkSGVhZGVy OiAkCiAKICMgQEVDTEFTUzogZm9udC5lY2xhc3MKICMgQE1BSU5UQUlORVI6CiAjIGZvbnRz QGdlbnRvby5vcmcKLSMKKworIyBBdXRob3I6IFRvbcOhxaEgQ2h2w6F0YWwgPHNjYXJhYmV1 c0BnZW50b28ub3JnPgogIyBBdXRob3I6IGZvc2VyIDxmb3NlckBnZW50b28ub3JnPgogIyBA QkxVUkI6IEVjbGFzcyB0byBtYWtlIGZvbnQgaW5zdGFsbGF0aW9uIHVuaWZvcm0KIAogaW5o ZXJpdCBldXRpbHMKIAotCiBFWFBPUlRfRlVOQ1RJT05TIHBrZ19zZXR1cCBzcmNfaW5zdGFs bCBwa2dfcG9zdGluc3QgcGtnX3Bvc3RybQogCi0jCi0jIFZhcmlhYmxlIGRlY2xhcmF0aW9u cwotIwotCiAjIEBFQ0xBU1MtVkFSSUFCTEU6IEZPTlRfU1VGRklYCiAjIEBERVNDUklQVElP TjoKICMgU3BhY2UgZGVsaW1pdGVkIGxpc3Qgb2YgZm9udCBzdWZmaXhlcyB0byBpbnN0YWxs Ci1GT05UX1NVRkZJWD0ke0ZPTlRfU1VGRklYOi19Cis6ICR7Rk9OVF9TVUZGSVg6PX0KIAog IyBARUNMQVNTLVZBUklBQkxFOiBGT05UX1MKICMgQERFU0NSSVBUSU9OOgogIyBEaXIgY29u dGFpbmluZyB0aGUgZm9udHMKLUZPTlRfUz0ke1N9Cis6ICR7Rk9OVF9TOj0ke1N9fQogCiAj IEBFQ0xBU1MtVkFSSUFCTEU6IEZPTlRfUE4KICMgQERFU0NSSVBUSU9OOgogIyBMYXN0IHBh cnQgb2YgJEZPTlRESVIKLUZPTlRfUE49JHtGT05UX1BOOi0ke1BOfX0KKzogJHtGT05UX1BO Oj0ke1BOfX0KIAogIyBARUNMQVNTLVZBUklBQkxFOiBGT05URElSCiAjIEBERVNDUklQVElP TjoKICMgVGhpcyBpcyB3aGVyZSB0aGUgZm9udHMgYXJlIGluc3RhbGxlZAotRk9OVERJUj0k e0ZPTlRESVI6LS91c3Ivc2hhcmUvZm9udHMvJHtGT05UX1BOfX0KKzogJHtGT05URElSOi0v dXNyL3NoYXJlL2ZvbnRzLyR7Rk9OVF9QTn19CiAKICMgQEVDTEFTUy1WQVJJQUJMRTogRk9O VF9DT05GCiAjIEBERVNDUklQVElPTjoKQEAgLTQ2LDMxICs0MiwzMCBAQAogIyBARUNMQVNT LVZBUklBQkxFOiBET0NTCiAjIEBERVNDUklQVElPTjoKICMgRG9jcyB0byBpbnN0YWxsCi1E T0NTPSR7RE9DUzotfQorOiAke0RPQ1M6LX0KIAogSVVTRT0iWCIKIAotREVQRU5EPSJYPyAo IHgxMS1hcHBzL21rZm9udGRpcgotCQkJbWVkaWEtZm9udHMvZW5jb2RpbmdzICkKLQkJbWVk aWEtbGlicy9mb250Y29uZmlnIgotCi0jCi0jIFB1YmxpYyBmdW5jdGlvbnMKLSMKK0RFUEVO RD0iWD8gKAorCQl4MTEtYXBwcy9ta2ZvbnRkaXIKKwkJbWVkaWEtZm9udHMvZW5jb2Rpbmdz CisJKQorCW1lZGlhLWxpYnMvZm9udGNvbmZpZyIKIAogIyBARlVOQ1RJT046IGZvbnRfeGZv bnRfY29uZmlnCiAjIEBERVNDUklQVElPTjoKICMgQ3JlYXRlcyB0aGUgWGZvbnQgZmlsZXMu CiBmb250X3hmb250X2NvbmZpZygpIHsKIAkjIGNyZWF0ZSBYZm9udCBmaWxlcwotCWlmIHVz ZSBYIDsgdGhlbgotCQllaW5mbyAiQ3JlYXRpbmcgZm9udHMuc2NhbGUgJiBmb250cy5kaXIg Li4uIgotCQlybSAtZiAiJHtEfSR7Rk9OVERJUn0iL2ZvbnRzLntkaXIsc2NhbGV9Ci0JCW1r Zm9udHNjYWxlICIke0R9JHtGT05URElSfSIKKwlpZiBoYXMgWCAke0lVU0UvLyt9ICYmIHVz ZSBYIDsgdGhlbgorCQllYmVnaW4gIkNyZWF0aW5nIGZvbnRzLnNjYWxlICYgZm9udHMuZGly IgorCQlybSAtZiAiJHtFRH0ke0ZPTlRESVJ9Ii9mb250cy57ZGlyLHNjYWxlfQorCQlta2Zv bnRzY2FsZSAiJHtFRH0ke0ZPTlRESVJ9IgogCQlta2ZvbnRkaXIgXAotCQkJLWUgL3Vzci9z aGFyZS9mb250cy9lbmNvZGluZ3MgXAotCQkJLWUgL3Vzci9zaGFyZS9mb250cy9lbmNvZGlu Z3MvbGFyZ2UgXAotCQkJIiR7RH0ke0ZPTlRESVJ9IgorCQkJLWUgJHtFUFJFRklYfS91c3Iv c2hhcmUvZm9udHMvZW5jb2RpbmdzIFwKKwkJCS1lICR7RVBSRUZJWH0vdXNyL3NoYXJlL2Zv bnRzL2VuY29kaW5ncy9sYXJnZSBcCisJCQkiJHtFRH0ke0ZPTlRESVJ9IgorCQllZW5kICQ/ CiAJCWlmIFsgLWUgIiR7Rk9OVF9TfS9mb250cy5hbGlhcyIgXSA7IHRoZW4KIAkJCWRvaW5z ICIke0ZPTlRfU30vZm9udHMuYWxpYXMiCiAJCWZpCkBAIC04MSwxMSArNzYsMTAgQEAKICMg QERFU0NSSVBUSU9OOgogIyBDcmVhdGVzIHRoZSBmb250Y29uZmlnIGNhY2hlIGlmIG5lY2Vz c2FyeS4KIGZvbnRfeGZ0X2NvbmZpZygpIHsKLQlpZiAhIGhhc192ZXJzaW9uICc+PW1lZGlh LWxpYnMvZm9udGNvbmZpZy0yLjQnOyB0aGVuCi0JCSMgY3JlYXRlIGZvbnRjb25maWcgY2Fj aGUKLQkJZWluZm8gIkNyZWF0aW5nIGZvbnRjb25maWcgY2FjaGUgLi4uIgotCQlmYy1jYWNo ZSAtc2YgIiR7RH0ke0ZPTlRESVJ9IgotCWZpCisJIyBjcmVhdGUgZm9udGNvbmZpZyBjYWNo ZQorCWViZWdpbiAiQ3JlYXRpbmcgZm9udGNvbmZpZyBjYWNoZSIKKwlmYy1jYWNoZSAtc2Yg IiR7RUR9JHtGT05URElSfSIKKwllZW5kICQ/CiB9CiAKICMgQEZVTkNUSU9OOiBmb250X2Zv bnRjb25maWcKQEAgLTk0LDI2ICs4OCwyMCBAQAogZm9udF9mb250Y29uZmlnKCkgewogCWxv Y2FsIGNvbmZmaWxlCiAJaWYgW1sgLW4gJHtGT05UX0NPTkZbQF19IF1dOyB0aGVuCi0JCWlm IGhhc192ZXJzaW9uICc+PW1lZGlhLWxpYnMvZm9udGNvbmZpZy0yLjQnOyB0aGVuCi0JCQlp bnNpbnRvIC9ldGMvZm9udHMvY29uZi5hdmFpbC8KLQkJCWZvciBjb25mZmlsZSBpbiAiJHtG T05UX0NPTkZbQF19IjsgZG8KLQkJCQlbWyAtZSAgJHtjb25mZmlsZX0gXV0gJiYgZG9pbnMg JHtjb25mZmlsZX0KLQkJCWRvbmUKLQkJZmkKKwkJaW5zaW50byAvZXRjL2ZvbnRzL2NvbmYu YXZhaWwvCisJCWZvciBjb25mZmlsZSBpbiAiJHtGT05UX0NPTkZbQF19IjsgZG8KKwkJCVtb IC1lICAke2NvbmZmaWxlfSBdXSAmJiBkb2lucyAke2NvbmZmaWxlfQorCQlkb25lCiAJZmkK IH0KIAotIwotIyBQdWJsaWMgaW5oZXJpdGFibGUgZnVuY3Rpb25zCi0jCi0KICMgQEZVTkNU SU9OOiBmb250X3NyY19pbnN0YWxsCiAjIEBERVNDUklQVElPTjoKLSMgVGhlIGZvbnQgc3Jj X2luc3RhbGwgZnVuY3Rpb24sIHdoaWNoIGlzIGV4cG9ydGVkLgorIyBUaGUgZm9udCBzcmNf aW5zdGFsbCBmdW5jdGlvbi4KIGZvbnRfc3JjX2luc3RhbGwoKSB7CiAJbG9jYWwgc3VmZml4 IGNvbW1vbmRvYwogCi0JY2QgIiR7Rk9OVF9TfSIKKwlwdXNoZCAiJHtGT05UX1N9IiA+IC9k ZXYvbnVsbAogCiAJaW5zaW50byAiJHtGT05URElSfSIKIApAQCAtMTI3LDggKzExNSw5IEBA CiAJZm9udF94ZnRfY29uZmlnCiAJZm9udF9mb250Y29uZmlnCiAKLQljZCAiJHtTfSIKLQlk b2RvYyAke0RPQ1N9IDI+IC9kZXYvbnVsbAorCXBvcGQgPiAvZGV2L251bGwKKworCVtbIC1u ICR7RE9DU30gXV0gJiYgeyBkb2RvYyAke0RPQ1N9IHx8IGRpZSAiZG9jcyBpbnN0YWxsYXRp b24gZmFpbGVkIiA7IH0KIAogCSMgaW5zdGFsbCBjb21tb24gZG9jcwogCWZvciBjb21tb25k b2MgaW4gQ09QWVJJR0hUIFJFQURNRXssLnR4dH0gTkVXUyBBVVRIT1JTIEJVR1MgQ2hhbmdl TG9nIEZPTlRMT0cudHh0OyBkbwpAQCAtMTM4LDYwICsxMjcsNjkgQEAKIAogIyBARlVOQ1RJ T046IGZvbnRfcGtnX3NldHVwCiAjIEBERVNDUklQVElPTjoKLSMgVGhlIGZvbnQgcGtnX3Nl dHVwIGZ1bmN0aW9uLCB3aGljaCBpcyBleHBvcnRlZC4KKyMgVGhlIGZvbnQgcGtnX3NldHVw IGZ1bmN0aW9uLgorIyBDb2xsaXNpb24gcG9ydGVjdGlvbiBhbmQgUHJlZml4IGNvbXBhdCBm b3IgZWFwaSA8IDMuCiBmb250X3BrZ19zZXR1cCgpIHsKIAkjIG1ha2Ugc3VyZSB3ZSBnZXQg bm8gY29sbGlzaW9ucwogCSMgc2V0dXAgaXMgbm90IHRoZSBuaWNlc3QgcGxhY2UsIGJ1dCBw cmVpbnN0IGRvZXNuJ3QgY3V0IGl0CiAJW1sgLWUgIiR7Rk9OVERJUn0vZm9udHMuY2FjaGUt MSIgXV0gJiYgcm0gLWYgIiR7Rk9OVERJUn0vZm9udHMuY2FjaGUtMSIKKworCSMgUHJlZml4 IGNvbXBhdAorCWNhc2UgJHtFQVBJOi0wfSBpbgorCQkwfDF8MikKKwkJCWlmICEgdXNlIHBy ZWZpeDsgdGhlbgorCQkJCUVQUkVGSVg9CisJCQkJRUQ9JHtEfQorCQkJCUVST09UPSR7Uk9P VH0KKwkJCQlbWyAke0VST09UfSA9ICovIF1dIHx8IEVST09UKz0iLyIKKwkJCWZpCisJCQk7 OworCWVzYWMKIH0KIAogIyBARlVOQ1RJT046IGZvbnRfcGtnX3Bvc3RpbnN0CiAjIEBERVND UklQVElPTjoKLSMgVGhlIGZvbnQgcGtnX3Bvc3RpbnN0IGZ1bmN0aW9uLCB3aGljaCBpcyBl eHBvcnRlZC4KKyMgVGhlIGZvbnQgcGtnX3Bvc3RpbnN0IGZ1bmN0aW9uLgorIyBVcGRhdGUg Z2xvYmFsIGZvbnQgY2FjaGUgYW5kIGZpeCBwZXJtaXNzaW9ucy4KIGZvbnRfcGtnX3Bvc3Rp bnN0KCkgewogCSMgdW5yZWFkYWJsZSBmb250IGZpbGVzID0gZm9udGNvbmZpZyBzZWdmYXVs dHMKLQlmaW5kICIke1JPT1R9InVzci9zaGFyZS9mb250cy8gLXR5cGUgZiAnIScgLXBlcm0g MDY0NCAtcHJpbnQwIFwKKwlmaW5kICIke0VST09UfSJ1c3Ivc2hhcmUvZm9udHMvIC10eXBl IGYgJyEnIC1wZXJtIDA2NDQgLXByaW50MCBcCiAJCXwgeGFyZ3MgLTAgY2htb2QgLXYgMDY0 NCAyPi9kZXYvbnVsbAogCiAJaWYgW1sgLW4gJHtGT05UX0NPTkZbQF19IF1dOyB0aGVuCi0J CWlmIGhhc192ZXJzaW9uICc+PW1lZGlhLWxpYnMvZm9udGNvbmZpZy0yLjQnOyB0aGVuCi0J CQlsb2NhbCBjb25mZmlsZQotCQkJZWNobwotCQkJZWxvZyAiVGhlIGZvbGxvd2luZyBmb250 Y29uZmlnIGNvbmZpZ3VyYXRpb24gZmlsZXMgaGF2ZSBiZWVuIGluc3RhbGxlZDoiCi0JCQll bG9nCi0JCQlmb3IgY29uZmZpbGUgaW4gIiR7Rk9OVF9DT05GW0BdfSI7IGRvCi0JCQkJaWYg W1sgLWUgJHtST09UfWV0Yy9mb250cy9jb25mLmF2YWlsLyQoYmFzZW5hbWUgJHtjb25mZmls ZX0pIF1dOyB0aGVuCi0JCQkJCWVsb2cgIiAgJChiYXNlbmFtZSAke2NvbmZmaWxlfSkiCi0J CQkJZmkKLQkJCWRvbmUKLQkJCWVsb2cKLQkJCWVsb2cgIlVzZSBcYGVzZWxlY3QgZm9udGNv bmZpZ1xgIHRvIGVuYWJsZS9kaXNhYmxlIHRoZW0uIgotCQkJZWNobwotCQlmaQotCWZpCi0K LQlpZiBoYXNfdmVyc2lvbiAnPj1tZWRpYS1saWJzL2ZvbnRjb25maWctMi40JzsgdGhlbgot CQlpZiBbWyAke1JPT1R9ID09ICIvIiBdXTsgdGhlbgotCQkJZWJlZ2luICJVcGRhdGluZyBn bG9iYWwgZm9udGNhY2hlIgotCQkJZmMtY2FjaGUgLWZzCi0JCQllZW5kICQ/Ci0JCWZpCisJ CWxvY2FsIGNvbmZmaWxlCisJCWVjaG8KKwkJZWxvZyAiVGhlIGZvbGxvd2luZyBmb250Y29u ZmlnIGNvbmZpZ3VyYXRpb24gZmlsZXMgaGF2ZSBiZWVuIGluc3RhbGxlZDoiCisJCWVsb2cK KwkJZm9yIGNvbmZmaWxlIGluICIke0ZPTlRfQ09ORltAXX0iOyBkbworCQkJaWYgW1sgLWUg JHtFUk9PVH1ldGMvZm9udHMvY29uZi5hdmFpbC8kKGJhc2VuYW1lICR7Y29uZmZpbGV9KSBd XTsgdGhlbgorCQkJCWVsb2cgIiAgJChiYXNlbmFtZSAke2NvbmZmaWxlfSkiCisJCQlmaQor CQlkb25lCisJCWVsb2cKKwkJZWxvZyAiVXNlIFxgZXNlbGVjdCBmb250Y29uZmlnXGAgdG8g ZW5hYmxlL2Rpc2FibGUgdGhlbS4iCisJCWVjaG8KKwlmaQorCisJaWYgW1sgJHtST09UfSA9 PSAvIF1dOyB0aGVuCisJCWViZWdpbiAiVXBkYXRpbmcgZ2xvYmFsIGZvbnRjYWNoZSIKKwkJ ZmMtY2FjaGUgLWZzCisJCWVlbmQgJD8KIAlmaQogfQogCiAjIEBGVU5DVElPTjogZm9udF9w a2dfcG9zdHJtCiAjIEBERVNDUklQVElPTjoKLSMgVGhlIGZvbnQgcGtnX3Bvc3RybSBmdW5j dGlvbiwgd2hpY2ggaXMgZXhwb3J0ZWQuCisjIFRoZSBmb250IHBrZ19wb3N0cm0gZnVuY3Rp b24uCisjIFVwZGF0ZXMgZ2xvYmFsIGZvbnQgY2FjaGUKIGZvbnRfcGtnX3Bvc3RybSgpIHsK IAkjIHVucmVhZGFibGUgZm9udCBmaWxlcyA9IGZvbnRjb25maWcgc2VnZmF1bHRzCi0JZmlu ZCAiJHtST09UfSJ1c3Ivc2hhcmUvZm9udHMvIC10eXBlIGYgJyEnIC1wZXJtIDA2NDQgLXBy aW50MCBcCisJZmluZCAiJHtFUk9PVH0idXNyL3NoYXJlL2ZvbnRzLyAtdHlwZSBmICchJyAt cGVybSAwNjQ0IC1wcmludDAgXAogCQl8IHhhcmdzIC0wIGNobW9kIC12IDA2NDQgMj4vZGV2 L251bGwKIAotCWlmIGhhc192ZXJzaW9uICc+PW1lZGlhLWxpYnMvZm9udGNvbmZpZy0yLjQn OyB0aGVuCi0JCWlmIFtbICR7Uk9PVH0gPT0gIi8iIF1dOyB0aGVuCi0JCQllYmVnaW4gIlVw ZGF0aW5nIGdsb2JhbCBmb250Y2FjaGUiCi0JCQlmYy1jYWNoZSAtZnMKLQkJCWVlbmQgJD8K LQkJZmkKKwlpZiBbWyAke1JPT1R9ID09IC8gXV07IHRoZW4KKwkJZWJlZ2luICJVcGRhdGlu ZyBnbG9iYWwgZm9udGNhY2hlIgorCQlmYy1jYWNoZSAtZnMKKwkJZWVuZCAkPwogCWZpCiB9 Cg== --------------090006070006090005080807-- --------------enig2FB1934822F4FAAF6C61E778 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.14 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAktmrooACgkQHB6c3gNBRYeRoQCff6KLw1ZCcqOHkOHt/yIvpgMi iH8AoIKye1j0V7VPKwco787FIS/ST+xt =TXS0 -----END PGP SIGNATURE----- --------------enig2FB1934822F4FAAF6C61E778--