From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rob Herring Subject: [PATCH 2/2] pylibfdt: Compile and build libfdt directly into shim library Date: Thu, 3 Feb 2022 12:04:08 -0600 Message-ID: <20220203180408.611645-3-robh@kernel.org> References: <20220203180408.611645-1-robh@kernel.org> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20220203180408.611645-1-robh-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> List-ID: Content-Type: text/plain; charset="macroman" To: Simon Glass Cc: devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Hector Oron , Peter Robinson , =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= , Natanael Copa VGhlIGludGVyYWN0aW9ucyBiZXR3ZWVuIHB5bGliZmR0IHNldHVwLnB5IGFuZCB0aGUgaG9zdCBh bmQgYnVpbGQgc3lzdGVtCmlzIGZyYWdpbGUuIHNldHVwLnB5IGNhbiBiZSBjYWxsZWQgZGlyZWN0 bHkgb3IgdmlhIHBpcCwgdG94LCBweXRlc3QsIGV0Yy4KQnVpbGRpbmcgdGhlIFNXSUcgc2hpbSBs aWJyYXJ5IG5lZWRzIHRoZSBsaWJmZHQgaGVhZGVycyBhbmQgbGlicmFyeSAuc28KZmlsZS4gVGhl c2UgY2FuIGJlIGxvY2F0ZWQgaW4gdGhlIHNvdXJjZSB0cmVlLCB0aGUgT09UIGJ1aWxkIGRpcmVj dG9yeSwKb3Igc2V2ZXJhbCBsb2NhdGlvbnMgaW4gdGhlIGhvc3QgZmlsZXN5c3RlbSBpZiBpbnN0 YWxsZWQuCgpGdXJ0aGVybW9yZSwgdGhlIFNXSUcgc2hpbSBsaWJyYXJ5IGlzIHRpZ2h0bHkgY291 cGxlZCB0byB0aGUgdmVyc2lvbiBvZgpsaWJmZHQgaXQgaXMgYnVpbHQgYWdhaW5zdC4gU3BlY2lm aWNhbGx5LCBhbGwgZnVuY3Rpb25zIGRlZmluZWQgaW4gdGhlCmxpYmZkdC5oIGhlYWRlciB1c2Vk IGZvciB0aGUgYnVpbGQgbXVzdCByZXNvbHZlIGF0IHJ1bnRpbWUgd2hldGhlciB0aGV5CmFyZSB1 c2VkIG9yIG5vdC4gSU9XLCB0aGUgaW5zdGFsbGVkIGxpYmZkdCBtdXN0IGJlIHRoZSBzYW1lIHZl cnNpb24gKG9yCm5ld2VyPykgdGhhbiB3aGF0IHB5bGliZmR0IHdhcyBidWlsdCBhZ2FpbnN0LgoK VGhlIHR5cGljYWwgd2F5IHRvIHNvbHZlIHRoaXMgcHJvYmxlbSB3b3VsZCBiZSB0byBhbGxvdyB1 c2VyIHByb3ZpZGVkCmxpYnJhcnkgYW5kIGluY2x1ZGUgZGlyZWN0b3JpZXMsIGJ1dCB0aGlzIGRv ZXNuJ3Qgc2VlbSB0byB3b3JrIHRvbyB3ZWxsCndpdGggc2V0dXAucHkuIFdoaWxlIHNldHVwLnB5 IHN1Yi1jb21tYW5kcyBjYW4gdGFrZSBzdWNoIG9wdGlvbnMsIGl0CmRvZXNuJ3Qgd29yayB3aXRo IGltcGxpY2l0IGNvbW1hbmRzIChlLmcuIGFuICdpbnN0YWxsJyB0cmlnZ2VycyAnYnVpbGQnKQpv ciBwaXAuCgpUaGUgc2ltcGxlc3Qgc29sdXRpb24gdG8gYWxsIHRoaXMgaXMganVzdCBidWlsZCBs aWJmZHQgaW50byB0aGUgc2hpbQpsaWJyYXJ5LiBUaGlzIGF2b2lkcyBhbnkgcG9zc2liaWxpdHkg b2YgdmVyc2lvbiBtaXNtYXRjaGVzLiBUaGUgcHl0aG9uCnNldHVwdG9vbHMgYWxyZWFkeSBrbm93 cyBob3cgdG8gY29tcGlsZSBDIGZpbGVzIGluIGV4dGVuc2lvbnMsIHdlIGp1c3QgbmVlZAp0byBs aXN0IHRoZSBmaWxlcy4KCkNjOiBTaW1vbiBHbGFzcyA8c2pnLUY3K3Q4RThyamE5ZzloVUNaUHZQ bXdAcHVibGljLmdtYW5lLm9yZz4KQ2M6IEhlY3RvciBPcm9uIDx6dW1iaS04ZmlVdVJyek9QMGRu bSt5Uk9mRTBBQHB1YmxpYy5nbWFuZS5vcmc+CkNjOiBQZXRlciBSb2JpbnNvbiA8cGJyb2JpbnNv bi1SZTVKUUVlUXFlOEF2eHRpdU13eDN3QHB1YmxpYy5nbWFuZS5vcmc+CkNjOiBNYXJjLUFuZHLD qSBMdXJlYXUgPG1hcmNhbmRyZS5sdXJlYXUtSCt3WGFIeGY3YUxRVDBkWlIrQWxmQUBwdWJsaWMu Z21hbmUub3JnPgpDYzogTmF0YW5hZWwgQ29wYSA8bmNvcGEtVHZ1ZWNoYXczNGJDZkRnZ05YSWkz d0BwdWJsaWMuZ21hbmUub3JnPgpTaWduZWQtb2ZmLWJ5OiBSb2IgSGVycmluZyA8cm9iaC1EZ0Vq VCtBaTJ5Z2RubSt5Uk9mRTBBQHB1YmxpYy5nbWFuZS5vcmc+Ci0tLQpSRkMgYmVjYXVzZSB0aGlz IGxlYXZlcyB0aGUgbWVzb24gaW50ZWdyYXRpb24gYnJva2VuIGFuZCBJIHN1c3BlY3QgdGhlCmRp c3RybyBmb2xrcyAoQ2MnZWQgaGVyZSkgd29uJ3QgcmVhbGx5IGxpa2UgZHVwbGljYXRpbmcgbGli ZmR0LiBOb3RlIHRoYXQKdGhlICdzaGltJyBhbG9uZSBpcyBhYm91dCAzeCB0aGUgc2l6ZSBvZiBs aWJmZHQuCgpJTU8sIHRoZSBtZXNvbiB3cmFwcGVyIHNob3VsZCBqdXN0IGJlIHJlbW92ZWQuIFB5 dGhvbiB1c2VycyBrbm93IGhvdyB0bwpydW4gc2V0dXAucHkgb3IgcGlwLiBXaHkgYWRkIGEgbGF5 ZXIgb2YgaW5kaXJlY3Rpb24/Ci0tLQogTUFOSUZFU1QuaW4gfCAgNCArLS0tCiBzZXR1cC5weSAg ICB8IDQzICsrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDIgZmls ZXMgY2hhbmdlZCwgMTggaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvTUFOSUZFU1QuaW4gYi9NQU5JRkVTVC5pbgppbmRleCA2ZTcyNDRkMTk1ZTYuLjQ1MjQzZjdm MDA1NyAxMDA2NDQKLS0tIGEvTUFOSUZFU1QuaW4KKysrIGIvTUFOSUZFU1QuaW4KQEAgLTYsOSAr Niw3IEBAIGluY2x1ZGUgR1BMCiBpbmNsdWRlIEJTRC0yLUNsYXVzZQogaW5jbHVkZSBzZXR1cC5w eQogaW5jbHVkZSBweWxpYmZkdC9saWJmZHQuaQotaW5jbHVkZSBsaWJmZHQvbGliZmR0LmgKLWlu Y2x1ZGUgbGliZmR0L2ZkdC5oCi1pbmNsdWRlIGxpYmZkdC9saWJmZHRfZW52LmgKK2luY2x1ZGUg bGliZmR0LyoKIGluY2x1ZGUgdGVzdHMvdGVzdF9weWxpYmZkdC5weQogaW5jbHVkZSB0ZXN0cy90 ZXN0X3RyZWUxLmR0cwogaW5jbHVkZSB0ZXN0cy90ZXN0X3Byb3BzLmR0cwpkaWZmIC0tZ2l0IGEv c2V0dXAucHkgYi9zZXR1cC5weQppbmRleCBhOGU1NGEzNjE1MTIuLmJhOGZmNTU2YzQ0ZCAxMDA3 NTUKLS0tIGEvc2V0dXAucHkKKysrIGIvc2V0dXAucHkKQEAgLTEzLDMzICsxMywyNiBAQCBXcml0 dGVuIGJ5IFNpbW9uIEdsYXNzIDxzamctRjcrdDhFOHJqYTlnOWhVQ1pQdlBtd0BwdWJsaWMuZ21h bmUub3JnPgogZnJvbSBzZXR1cHRvb2xzIGltcG9ydCBzZXR1cCwgRXh0ZW5zaW9uCiBmcm9tIHNl dHVwdG9vbHMuY29tbWFuZC5idWlsZF9weSBpbXBvcnQgYnVpbGRfcHkgYXMgX2J1aWxkX3B5CiAK LWltcG9ydCBvcwotaW1wb3J0IHJlCi1pbXBvcnQgc3lzCi0KLXNyY2RpciA9IG9zLnBhdGguZGly bmFtZShfX2ZpbGVfXykKLQotd2l0aCBvcGVuKG9zLnBhdGguam9pbihzcmNkaXIsICJSRUFETUUi KSwgInIiKSBhcyBmaDoKK3dpdGggb3BlbigiUkVBRE1FIiwgInIiKSBhcyBmaDoKICAgICBsb25n X2Rlc2NyaXB0aW9uID0gZmgucmVhZCgpCiAKLWRlZiBnZXRfdG9wX2J1aWxkZGlyKCk6Ci0gICAg aWYgJy0tdG9wLWJ1aWxkZGlyJyBpbiBzeXMuYXJndjoKLSAgICAgICAgaW5kZXggPSBzeXMuYXJn di5pbmRleCgnLS10b3AtYnVpbGRkaXInKQotICAgICAgICBzeXMuYXJndi5wb3AoaW5kZXgpCi0g ICAgICAgIHJldHVybiBzeXMuYXJndi5wb3AoaW5kZXgpCi0gICAgZWxzZToKLSAgICAgICAgcmV0 dXJuIHNyY2RpcgotCi10b3BfYnVpbGRkaXIgPSBnZXRfdG9wX2J1aWxkZGlyKCkKLQogbGliZmR0 X21vZHVsZSA9IEV4dGVuc2lvbigKICAgICAnX2xpYmZkdCcsCi0gICAgc291cmNlcz1bb3MucGF0 aC5qb2luKHNyY2RpciwgJ3B5bGliZmR0L2xpYmZkdC5pJyldLAorICAgIHNvdXJjZXM9WydweWxp YmZkdC9saWJmZHQuaScsCisgICAgICAgICAgICAgJ2xpYmZkdC9mZHQuYycsCisgICAgICAgICAg ICAgJ2xpYmZkdC9mZHRfcm8uYycsCisgICAgICAgICAgICAgJ2xpYmZkdC9mZHRfcncuYycsCisg ICAgICAgICAgICAgJ2xpYmZkdC9mZHRfc3cuYycsCisgICAgICAgICAgICAgJ2xpYmZkdC9mZHRf d2lwLmMnLAorICAgICAgICAgICAgICdsaWJmZHQvZmR0X2FkZHJlc3Nlcy5jJywKKyAgICAgICAg ICAgICAnbGliZmR0L2ZkdF9jaGVjay5jJywKKyAgICAgICAgICAgICAnbGliZmR0L2ZkdF9lbXB0 eV90cmVlLmMnLAorICAgICAgICAgICAgICdsaWJmZHQvZmR0X292ZXJsYXkuYycsCisgICAgICAg ICAgICAgJ2xpYmZkdC9mZHRfc3RyZXJyb3IuYycsCisgICAgICAgICAgICAgXSwKICAgICBkZWZp bmVfbWFjcm9zPVsoJ1BZX1NTSVpFX1RfQ0xFQU4nLCBOb25lKV0sCi0gICAgaW5jbHVkZV9kaXJz PVtvcy5wYXRoLmpvaW4oc3JjZGlyLCAnbGliZmR0JyldLAotICAgIGxpYnJhcmllcz1bJ2ZkdCdd LAotICAgIGxpYnJhcnlfZGlycz1bb3MucGF0aC5qb2luKHRvcF9idWlsZGRpciwgJ2xpYmZkdCcp XSwKLSAgICBzd2lnX29wdHM9WyctSScgKyBvcy5wYXRoLmpvaW4oc3JjZGlyLCAnbGliZmR0Jyld LAorICAgIGluY2x1ZGVfZGlycz1bJ2xpYmZkdCddLAorICAgIHN3aWdfb3B0cz1bJy1JbGliZmR0 J10sCiApCiAKIGNsYXNzIGJ1aWxkX3B5KF9idWlsZF9weSk6CkBAIC00OSwxNiArNDIsMTQgQEAg Y2xhc3MgYnVpbGRfcHkoX2J1aWxkX3B5KToKIAogc2V0dXAoCiAgICAgbmFtZT0nbGliZmR0JywK LSAgICB1c2Vfc2NtX3ZlcnNpb249ewotICAgICAgICAicm9vdCI6IHNyY2RpciwKLSAgICB9LAor ICAgIHVzZV9zY21fdmVyc2lvbj1UcnVlLAogICAgIGNtZGNsYXNzID0geydidWlsZF9weScgOiBi dWlsZF9weX0sCiAgICAgc2V0dXBfcmVxdWlyZXMgPSBbJ3NldHVwdG9vbHNfc2NtJ10sCiAgICAg YXV0aG9yPSdTaW1vbiBHbGFzcycsCiAgICAgYXV0aG9yX2VtYWlsPSdzamctRjcrdDhFOHJqYTln OWhVQ1pQdlBtd0BwdWJsaWMuZ21hbmUub3JnJywKICAgICBkZXNjcmlwdGlvbj0nUHl0aG9uIGJp bmRpbmcgZm9yIGxpYmZkdCcsCiAgICAgZXh0X21vZHVsZXM9W2xpYmZkdF9tb2R1bGVdLAotICAg IHBhY2thZ2VfZGlyPXsnJzogb3MucGF0aC5qb2luKHNyY2RpciwgJ3B5bGliZmR0Jyl9LAorICAg IHBhY2thZ2VfZGlyPXsnJzogJ3B5bGliZmR0J30sCiAgICAgcHlfbW9kdWxlcz1bJ2xpYmZkdCdd LAogCiAgICAgbG9uZ19kZXNjcmlwdGlvbj1sb25nX2Rlc2NyaXB0aW9uLAotLSAKMi4zMi4wCgo=