From: earnie_boyd AT yahoo DOT com (Earnie Boyd) Subject: [ANNOUNCE] pexcheck 1.0 - pexports consistency check 14 Nov 1998 05:31:04 -0800 Message-ID: <19981113182926.17819.rocketmail.cygnus.gnu-win32@send1e.yahoomail.com> Reply-To: earnie_boyd AT yahoo DOT com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="-2131474914-1637994029-910981766=:9619" To: cygwin users Cc: Anders Norlander , Mumit Khan , Colin Peters ---2131474914-1637994029-910981766=:9619 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline I have attached a tcl script named pexcheck. pexcheck compares the function names returned from pexports for a given dll and reports when there is no prototype or no import function. pexcheck is self documenting so just execute the script with no parameters to get a USAGE summary. From the few tests I've done. There's a lot of work left to be done. == - \\||// -------------------o0O0--Earnie--0O0o------------------- -- earnie_boyd AT yahoo DOT com -- -- http://www.freeyellow.com/members5/gw32/index.html -- ----------------------ooo0O--O0ooo---------------------- PS: Newbie's, you should visit my page. _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com ---2131474914-1637994029-910981766=:9619 Content-Type: application/octet-stream; name=pexcheck Content-Transfer-Encoding: base64 Content-Description: pexcheck Content-Disposition: attachment; filename=pexcheck IyEvYmluL3NoDQojXA0KZXhlYyB0Y2xzaCAiJDAiICIkQCINCg0KI3BleGNo ZWNrLTEuMDsgQ29weXJpZ2h0IChDKSAxOTk4LCBFYXJuaWUgQm95ZA0KIw0K IyBMaWNlbnNlIGFuZCB3YXJyZW50eSBpbmZvcm1hdGlvbiBiZWxvdyBvciB0 eXBlIHBleGNoZWNrIC13DQojDQoNCnNldCBQRVhWRVJTSU9OIDEuMA0KDQpw cm9jIE9wdGlvblZhbHVlIHthcmd0b3BhcnNlfSB7DQogIHNldCBUbXAgW3Nw bGl0ICRhcmd0b3BhcnNlID1dDQogIGlmIHtbbGxlbmd0aCAkVG1wXSA8IDJ9 IHsNCiAgICBpZiB7W2xsZW5ndGggJGFyZ3RvcGFyc2VdIDwgMn0gew0KICAg ICAgcmV0dXJuICIiDQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiBbbHJh bmdlICRhcmd0b3BhcnNlIDEgZW5kXQ0KICAgIH0NCiAgfSBlbHNlIHsNCiAg ICByZXR1cm4gW2xyYW5nZSAkVG1wIDEgZW5kXQ0KICB9DQogIHB1dHMgc3Rk ZXJyICJPcHRpb25WYWx1ZTogSW52YWxpZCBBcmd1bWVudCINCiAgZXhpdCA0 DQp9DQoNCnByb2MgQW55S2V5IHt9IHsNCiAgcHV0cyAtbm9uZXdsaW5lICJc blx0UHJlc3MgRU5URVIgdG8gY29udGludWUgIg0KICBnZXRzIHN0ZGluIFRN UA0KfQ0KDQpmb3JlYWNoIGFyZyAkYXJndiB7DQogIHN3aXRjaCAtLSBbc3Ry aW5nIHJhbmdlICRhcmcgMCAwXSB7DQogIHstfSB7DQogICAgc3dpdGNoIC0t IFtzdHJpbmcgcmFuZ2UgJGFyZyAxIGVuZF0gew0KICAgIHthfSB7c2V0IFBF WENIS0FMTCAxfQ0KICAgIHtBfSB7c2V0IFBFWFNIT1dBTEwgMX0NCiAgICB7 SX0ge3NldCBJTkNMVURFX0RJUiBbT3B0aW9uVmFsdWUgJGFyZ119DQogICAg e2l9IHtzZXQgSU5DTFVERV9GSUxFIFtPcHRpb25WYWx1ZSAkYXJnXX0NCiAg ICB7TH0ge3NldCBMSUJSQVJZX0RJUiBbT3B0aW9uVmFsdWUgJGFyZ119DQog ICAge2x9IHtzZXQgTElCUkFSWV9GSUxFIFtPcHRpb25WYWx1ZSAkYXJnXX0N CiAgICB7RH0ge3NldCBETExfRElSIFtPcHRpb25WYWx1ZSAkYXJnXX0NCiAg ICB7ZH0ge3NldCBETExfRklMRSBbT3Rpb25WYWx1ZSAkYXJnXX0NCiAgICB7 U30ge3NldCBTRUFSQ0hfSU5DTFVERV9ESVIgW09wdGlvblZhbHVlICRhcmdd fQ0KICAgIHtzfSB7c2V0IFNFQVJDSF9JTkNMVURFX0ZJTEUgW09wdGlvblZh bHVlICRhcmddfQ0KICAgIHtofSB7c2V0IFNIT1dfSEVMUCAxfQ0KICAgIHt1 fSB7c2V0IFNIT1dfVVNBR0UgMX0NCiAgICB7dn0ge3NldCBTSE9XX1ZFUlNJ T04gMX0NCiAgICB7d30ge3NldCBTSE9XX1dBUlJFTlRZIDF9DQogICAgZGVm YXVsdCB7c2V0IFNIT1dfVVNBR0UgMX0NCiAgICB9DQogIH0NCiAgZGVmYXVs dCB7DQogICAgc2V0IERMTF9GSUxFICRhcmcNCiAgfQ0KICB9DQp9DQoNCmlm IHshW2luZm8gZXhpc3RzIFBFWENIS0FMTF19IHtzZXQgUEVYQ0hLQUxMIDB9 DQppZiB7IVtpbmZvIGV4aXN0cyBQRVhTSE9XQUxMXX0ge3NldCBQRVhTSE9X QUxMIDB9DQppZiB7IVtpbmZvIGV4aXN0cyBTSE9XX0hFTFBdfSB7c2V0IFNI T1dfSEVMUCAwfQ0KaWYgeyFbaW5mbyBleGlzdHMgRExMX0RJUl19IHtzZXQg RExMX0RJUiAvL2Mvd2luZG93cy9zeXN0ZW0zMn0NCmlmIHshW2luZm8gZXhp c3RzIExJQlJBUllfRElSXX0ge3NldCBMSUJSQVJZX0RJUiAvdXNyL2xpYn0N CmlmIHshW2luZm8gZXhpc3RzIElOQ0xVREVfRElSXX0ge3NldCBJTkNMVURF X0RJUiAvdXNyL2luY2x1ZGV9DQppZiB7IVtpbmZvIGV4aXN0cyBJTkNMVURF X0ZJTEVdfSB7c2V0IElOQ0xVREVfRklMRSB3aW5kb3dzLmh9DQppZiB7IVtp bmZvIGV4aXN0cyBXSU4zMl9JTkNMVURFX0RJUl19IHtzZXQgV0lOMzJfSU5D TFVERV9ESVIgJElOQ0xVREVfRElSL1dpbmRvd3MzMn0NCmlmIHshW2luZm8g ZXhpc3RzIFNFQVJDSF9JTkNMVURFX0RJUl19IHtzZXQgU0VBUkNIX0lOQ0xV REVfRElSICRXSU4zMl9JTkNMVURFX0RJUn0NCmlmIHshW2luZm8gZXhpc3Rz IFNFQVJDSF9JTkNMVURFX0ZJTEVdfSB7c2V0IFNFQVJDSF9JTkNMVURFX0ZJ TEUgKn0NCmlmIHshW2luZm8gZXhpc3RzIFNIT1dfVVNBR0VdfSB7c2V0IFNI T1dfVVNBR0UgJFNIT1dfSEVMUH0NCmlmIHshW2luZm8gZXhpc3RzIFNIT1df VkVSU0lPTl19IHtzZXQgU0hPV19WRVJTSU9OIDB9DQppZiB7IVtpbmZvIGV4 aXN0cyBTSE9XX1dBUlJFTlRZXX0ge3NldCBTSE9XX1dBUlJFTlRZIDB9DQpp ZiB7IVtpbmZvIGV4aXN0cyBETExfRklMRV19IHtpZiB7ISRTSE9XX1dBUlJF TlRZICYmICEkU0hPV19WRVJTSU9OfSB7c2V0IFNIT1dfVVNBR0UgMX07IHNl dCBETExfRklMRSAiIn0NCmlmIHskU0hPV19XQVJSRU5UWSB8fCAkU0hPV19V U0FHRX0ge3NldCBTSE9XX1ZFUlNJT04gMX0NCmlmIHshW2luZm8gZXhpc3Rz IExJQlJBUllfRklMRV19IHtzZXQgTElCUkFSWV9GSUxFIGxpYltmaWxlIHJv b3RuYW1lICRETExfRklMRV0uYX0NCg0KaWYgeyRTSE9XX1ZFUlNJT059IHsg cHV0cyAiDQogICAgcGV4Y2hlY2stJFBFWFZFUlNJT04gLSBwZXhwb3J0cyBj b25zaXN0ZW5jeSByZXBvcnQNCg0KICAgIENvcHlyaWdodCAoQykgMTk5OCBF YXJuaWUgQm95ZCA8ZWFybmllX2JveWRAeWFob28uY29tPg0KDQogICAgcGV4 Y2hlY2sgd2lsbCBnaXZlIGEgcmVwb3J0IG9mIHRoZSBmdW5jdGlvbnMgZm91 bmQgaW4gYSBkbGwgYnkgcGV4cG9ydHMNCiAgICBvZiBtaXNzaW5nIHByb3Rv dHlwZXMgYW5kIG1pc3NpbmcgaW1wb3J0IGZ1bmN0aW9ucy4NCg0KICAgIFRo ZSBleGNlbGxlbnQgcGV4cG9ydHMgaXMgYnkgQW5kZXJzIE5vcmxhbmRlciA8 YW5vcmxhbmRlckBoZW0yLnBhc3NhZ2VuLnNlPg0KICAgIGFuZCBjYW4gYmUg b2J0YWluZWQgYXQgaHR0cDovL2hlbTIucGFzc2FnZW4uc2UvYW5vcmxhbmQv ZG93bmxvYWQvDQoiOyBpZiB7ISRTSE9XX1dBUlJFTlRZICYmICEkU0hPV19V U0FHRX0ge2V4aXR9IGVsc2Uge0FueUtleX19DQoNCmlmIHskU0hPV19VU0FH RX0geyBwdXRzICINCiAgICBVU0FHRTogcGV4Y2hlY2sgXFtvcHRpb25zXF0g ZmlsZS5kbGwNCg0KICBPUFRJT05TOiAtYSAoQ2hlY2sgYWxsIGZ1bmN0aW9u cykNCiAgICAgICAgICAgLUEgKERpc3BsYXkgYWxsIGZ1bmN0aW9ucykNCiAg ICAgICAgICAgLUk9L3BhdGgvdG8vaW5jbHVkZSAgKGRlZmF1bHQ6IC91c3Iv aW5jbHVkZSkNCiAgICAgICAgICAgLWk9aGVhZGVyX2ZpbGUuaCAgICAgKGRl ZmF1bHQ6IHdpbmRvd3MuaCkNCiAgICAgICAgICAgLUw9L3BhdGgvdG8vbGli ICAgICAgKGRlZmF1bHQ6IC91c3IvbGliKQ0KICAgICAgICAgICAtbD1saWJz b21lbGliLmEgICAgICAoZGVmYXVsdDogbGliXFtiYXNlbmFtZSBmaWxlLmRs bFxdLmEpDQogICAgICAgICAgIC1EPS9wYXRoL3RvL2RsbCAgICAgIChkZWZh dWx0OiAvL2Mvd2luZG93cy9zeXN0ZW0zMikNCiAgICAgICAgICAgLWQ9Zmls ZS5kbGwgICAgICAgICAgKGRlZmF1bHQ6IG5vbi1zd2l0Y2hlZCBwYXJhbWV0 ZXIpDQogICAgICAgICAgIC1TPS9wYXRoL3RvL2hlYWRlcnMgIChkZWZhdWx0 OiAvcGF0aC90by9pbmNsdWRlL1dpbmRvd3MzMikNCiAgICAgICAgICAgLXM9 aGVhZGVyZmlsZS5oICAgICAgKGRlZmF1bHQ6ICopDQogICAgICAgICAgIC1o IChEaXNwbGF5IGEgdmVyYm9zZSBoZWxwKQ0KICAgICAgICAgICAtdSAoRGlz cGxheSB1c2FnZSkNCiAgICAgICAgICAgLXYgKERpc3BsYXkgdmVyc2lvbi9h Ym91dCBpbmZvcm1hdGlvbikNCiAgICAgICAgICAgLXcgKERpc3BsYXkgbGlj ZW5zZSBhbmQgd2FycmVudHkgaW5mb3JtYXRpb24pDQoiOyBpZiB7ISRTSE9X X1dBUlJFTlRZICYmICEkU0hPV19IRUxQfSB7ZXhpdH0gZWxzZSB7QW55S2V5 fX0NCg0KaWYgeyRTSE9XX1dBUlJFTlRZfSB7IHB1dHMgIg0KICBMSUNFTlNF Og0KICAgIFlvdSBhcmUgZnJlZSB0byB1c2UsIGNvcHksIGRpc3RyaWJ1dGUg YW5kIG1vZGlmeSB0aGlzIHNvZnR3YXJlIGFzIGxvbmcgYXMgDQogICAgdGhp cyBsaWNlbnNlIGFuZCB0aGUgd2FycmVudHkgdmVyYmFnZSByZW1haW5zIGlu dGFjdC4gIFlvdSBtYXkgbW9kaWZ5IHRoaXMNCiAgICBzb2Z0d2FyZSBhcyBs b25nIGFzIHlvdSBsZWF2ZSB0aGUgY29weXJpZ2h0IG5vdGljZSBpbiBwbGFj ZSBhbmQgcHJvdmlkZSBhDQogICAgY2hhbmdlbG9nIHRvIGlkZW50aWZ5IHdo YXQgeW91IG1vZGlmaWVkIGFuZCB3aHkgeW91IG1vZGlmaWVkIGl0Lg0KDQog IFdBUlJFTlRZOg0KICAgIE5vIHdhcnJlbnR5IGlzIGdpdmVuLCBpbXBsaWVk IG9yIHdyaXR0ZW4uICBTaG91bGQgeW91ciBsb2NhbGl0eSBub3QNCiAgICBw ZXJtaXQgdGhpcyB0eXBlIG9mIHdhcnJlbnR5IHRoZW4geW91IGRvIG5vdCBo YXZlIHBlcm1pc3Npb24gdG8gdXNlIHRoaXMNCiAgICBzb2Z0d2FyZSBhbmQg dGhlIGxpY2Vuc2UgaXMgbnVsbCBhbmQgdm9pZC4NCiI7IGlmICEkU0hPV19I RUxQIHtleGl0fSBlbHNlIHtBbnlLZXl9fQ0KDQppZiB7JFNIT1dfSEVMUH0g eyBwdXRzICINCiAgSEVMUDoNCiAgICBUaGUgaW50ZW50IG9mIHRoaXMgcHJv Z3JhbSBpcyB0byBwcm92aWRlIGEgbWVhbnMgdG8gY2hlY2sgZm9yIHRoZQ0K ICAgIGV4aXN0YW5jZSBvZiBwcm90b3R5cGVzIGFuZCBpbXBvcnQgZnVuY3Rp b25zIHRvIGEgZ2l2ZW4gZGxsLiAgVGhlIHNjcmlwdA0KICAgIHVzZXMgcGV4 cG9ydHMgdG8gZ2V0IHRoZSBmdW5jdGlvbiBuYW1lcyB3aGljaCB3aWxsIHVz dWFsbHkgY29udGFpbiBhbg0KICAgIEAgaWYgaXQgd2FzIGRlZmluZWQgaW4g dGhlIGhlYWRlci4gIFNpbmNlIGl0IGlzIHVubGlrZWx5IHRoYXQgYSBmdW5j dGlvbg0KICAgIGZvdW5kIHByb3RvdHlwZWQgaW4gYSBoZWFkZXIgd291bGQg bm90IGFsc28gYmUgaW4gdGhlIGltcG9ydCBsaWJyYXJ5IHRoZQ0KICAgIGRl ZmF1bHQgbW9kZSBvZiBvcGVyYXRpb24gaXMgdG8gY2hlY2sgb25seSB0aG9z ZSBmdW5jdGlvbnMgcmV0dXJuaW5nIGZyb20NCiAgICBwZXhwb3J0cyB3aXRo b3V0IGFuIEAuICBZb3UgY2FuIG92ZXJyaWRlIHRoaXMgd2l0aCB0aGUgLWEg c3dpdGNoIHdoaWNoDQogICAgd2lsbCBncmVwIGZvciBhbGwgZnVuY3Rpb25z IGluIHRoZSBoZWFkZXJzIGFuZCBpbiB0aGUgaW1wb3J0IGxpYnJhcnkuDQoN CiAgICBUaGUgcHJvZ3JhbSB3aWxsIG5vcm1hbGx5IGRpc3BsYXkgb25seSB0 aG9zZSBmdW5jdGlvbnMgZm91bmQgdG8gaGF2ZQ0KICAgIG5vIHByb3RvdHlw ZSBvciBubyBpbXBvcnQgZnVuY3Rpb24uICBZb3UgY2FuIG92ZXJyaWRlIHRo aXMgd2l0aCB0aGUgLUENCiAgICBzd2l0Y2guICBUaGUgLUEgc3dpdGNoIHdp bGwgbm90IGNhdXNlIGFsbCBmdW5jdGlvbnMgdG8gYmUgY2hlY2tlZC4NCg0K ICAgIFRoZSAtSSBzd2l0Y2ggYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHdoZXJl IHRoZSBmaWxlIGlzIHRoYXQgaXMgdG8gYmUgdXNlZA0KICAgIGJ5IHBleHBv cnRzLiAgVGhlIC1pIHN3aXRjaCBhbGxvd3MgeW91IHNwZWNpZnkgdGhlIGhl YWRlciBmaWxlIGZvciBwZXhwb3J0cw0KICAgIHRvIHVzZS4NCg0KICAgIFRo ZSAtTCBzd2l0Y2ggYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHdoZXJlIHRoZSBp bXBvcnQgbGlicmFyeSBmaWxlIGV4aXN0cw0KICAgIGFuZCB0aGUgLWwgc3dp dGNoIGFsbG93cyB5b3UgdG8gc3BlY2lmeSBhbiBpbXBvcnQgbGlicmFyeSBm aWxlIG5hbWUgdGhhdA0KICAgIGRvZXNuJ3QgbWF0Y2ggdGhlIGRsbCBiYXNl bmFtZS4gIEUuRy46IFlvdSBoYXZlIGFuIGltcG9ydCBsaWJyYXJ5IGZpbGUN CiAgICBuYW1lZCBsaWJtaW5lLmEgYW5kIHlvdSB3YW50IHRvIGNvbXBhcmUg aXQgdG8gdXNlcjMyLmRsbC4NCiAgICANCiAgICBUaGUgLUQgc3dpdGNoIGFs bG93cyB5b3UgdG8gc3BlY2lmeSB3aGVyZSB0aGUgZGxsIGlzIGFuZCB0aGUg b3B0aW9uYWwgLWQNCiAgICBzd2l0Y2ggYWxsb3dzIHlvdSB0byBzcGVjaWZ5 IHdoYXQgZGxsIHRvIHVzZS4NCg0KICAgIFRoZSAtUyBzd2l0Y2ggYWxsb3dz IHlvdSB0byBzcGVjaWZ5IHdoZXJlIHRoZSBoZWFkZXIgZmlsZShzKSBpcyhh cmUpIHRvDQogICAgY2hlY2sgZm9yIHRoZSBwcm90b3R5cGUgYW5kIHRoZSAt cyBzd2l0Y2ggYWxsb3dzIHlvdSB0byBzcGVjaWZ5IGEgZmlsZS4NCg0KICAg IFN3aXRjaGVzIC1oLCAtdSwgLXYgYW5kIC13IGFyZSByYXRoZXIgb2J2aW91 cywgZG9uJ3QgeW91IHRoaW5rPw0KIjsgZXhpdH0NCg0Kc2V0IFBFWERMTCAi JERMTF9ESVIvJERMTF9GSUxFIg0Kc2V0IFBFWEhFQUQgIiRJTkNMVURFX0RJ Ui8kSU5DTFVERV9GSUxFIg0Kc2V0IFBFWExJQiAiJExJQlJBUllfRElSLyRM SUJSQVJZX0ZJTEUiDQpzZXQgUEVYU0VBUkNISEVBRCAiJFNFQVJDSF9JTkNM VURFX0RJUi8kU0VBUkNIX0lOQ0xVREVfRklMRSINCg0KDQpwdXRzICJwZXhw b3J0cyAtbyAkUEVYRExMIC1oICRQRVhIRUFEIg0KDQpzZXQgUEVYIFtleGVj IC1rZWVwbmV3bGluZSAtLSBwZXhwb3J0cyAtbyAkUEVYRExMIC1oICRQRVhI RUFEXQ0KZm9yZWFjaCBsSU4gW3NwbGl0ICRQRVggXG5dIHsNCiAgc2V0IEhF QUQgMA0KICBzZXQgTElCIDANCiAgc2V0IFBFWFBPUlQgW2xpbmRleCAkbElO IDBdDQogIHNldCBGVU5DVElPTiBbbGluZGV4IFtzcGxpdCAkUEVYUE9SVCBA XSAwXQ0KDQogIGlmIHskRlVOQ1RJT04gPT0gIkxJQlJBUlkiIHx8ICRGVU5D VElPTiA9PSAiRVhQT1JUUyIgfHwgJEZVTkNUSU9OID09ICIifSB7Y29udGlu dWV9DQogIHNldCBQRVhDSEsgW2V4cHIgJFBFWENIS0FMTCB8ICEoW3N0cmlu ZyBjb21wYXJlICRQRVhQT1JUICRGVU5DVElPTl0pXQ0KDQogIGlmIHskUEVY Q0hLfSB7DQogICAgc2V0IEhFQUQgW2NhdGNoIHtleGVjIGdyZXAgLWwgJEZV TkNUSU9OICRQRVhTRUFSQ0hIRUFEfV0NCiAgICBzZXQgTElCICBbY2F0Y2gg e2V4ZWMgZ3JlcCAtbCAkUEVYUE9SVCAkUEVYTElCfV0NCiAgfQ0KDQogIGlm IHshJEhFQUQgJiYgISRMSUIgJiYgISRQRVhTSE9XQUxMfSB7Y29udGludWV9 DQogIA0KICBwdXRzIC1ub25ld2xpbmUgW2Zvcm1hdCAiJTQ1cyIgJFBFWFBP UlRdDQogIGlmIHskSEVBRH0gew0KICAgIHB1dHMgLW5vbmV3bGluZSBcdG5v cHJvdG8NCiAgfSBlbHNlIHsNCiAgICBwdXRzIC1ub25ld2xpbmUgXHQNCiAg fQ0KDQogIGlmIHskTElCfSB7DQogICAgcHV0cyBcdFwgXCBub2ltcG9ydA0K ICB9IGVsc2Ugew0KICAgIHB1dHMgXHRcIFwgDQogIH0NCn0NCmV4aXQNCg== ---2131474914-1637994029-910981766=:9619-- - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".