From: cateland AT adersa DOT asso DOT fr (Stephane Cateland) Subject: compiling Mesa on egcs Mingw32 1 Sep 1998 11:30:51 -0700 Message-ID: <430F482F096F.cygnus.gnu-win32@panoramix.adersa.asso.fr> Reply-To: cateland AT adersa DOT asso DOT fr Mime-Version: 1.0 Content-Type: Multipart/Mixed; boundary=Message-Boundary-2647 To: gnu-win32 AT cygnus DOT com X-Unparseable-Date: Tue, 1 Sep 1998 09:55:12 100 --Message-Boundary-2647 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Content-description: Mail message body Hi I am trying to get Mesa and GLUT up and running on mingw32 environment. I succeed compiling it (and linking) but the major problem glut steel net working. It compilrt OK but need attention: in glut.h in win32 ifdef case you should have something like this: ----------------------------------------------------------------------------------------------- #if defined(__CYGWIN32__) || defined(__MINGW32__) # define GLUTCALLBACK # define GLUTAPI extern #else # define GLUTCALLBACK __cdecl # if defined(BUILD_GLUT32) # define GLUTAPI __declspec(dllexport) # elif defined(_DLL) # define GLUTAPI __declspec(dllimport) # else # define GLUTAPI extern # endif # pragma warning (disable:4244) /* Disable bogus conversion warnings. */ # pragma warning (disable:4305) /* VC++ 5.0 version of above warning. */ #endif this because gnuwin32 behave as unix for declaring extern function. Now you should remove call to joystick stuff in glut_input.c and glut_joy.c singe gnuwin32 does not have the header files for this. similarly in glut_console.c there is a undefine constant ???FULLSCREEN i ended up doing as for joystick #ifdefining code. the makefile are quike out of date you should use similar make as cygnus one but includeing all c file enumerated in the last part of WIN32/MESAGLUT.DSP so then OK you get it compiling you generate a libglut.a then in demo when you compole every thing goes smooth (execp if in GL sources you let CopyMemory as win32 function, it should be defined as memcpy). Now running it. it does not blow up but as for mesa-2.6 it failed and cant get pixel with necessary capabilities message. on the other hand osmesa demo just work fine. thus gl library are OK . OK I took a look on that and invistigated the problem (although I didnot solved it I found a problem) take a look at thist test.c which does the initialisation stuff glut is doing (all GLUT data structure handling is removed I only keep call to relevant functions). THEN i found that ChoosePixelFormat failed sayin that module can't be loaded (GetLastError) Thus I assumed I got a problem may be my set up may be a more subtle thing If any one can have a look at this test program to see what happen ??? I tried it on visual C (on the same machine and it failed, with the same diagnostic) Please HELP. thank you. Stef. ////////////////////////////////////////////////// // // Stephane Cateland // // Adersa 10 rue de la croix Martre // 91873 Palaiseau cedex FRANCE // // Phone [switchboard] (33) 0 160 135 353 // Fax (33) 0 169 200 563 // ////////////////////////////////////////////////// --Message-Boundary-2647 Content-type: text/plain; charset=US-ASCII Content-disposition: inline Content-description: Attachment information. The following section of this message contains a file attachment prepared for transmission using the Internet MIME message format. If you are using Pegasus Mail, or any another MIME-compliant system, you should be able to save it or view it from within your mailer. If you cannot, please ask your system administrator for assistance. ---- File information ----------- File: test.c Date: 1 Sep 1998, 9:42 Size: 9989 bytes. Type: Program-source --Message-Boundary-2647 Content-type: Application/Octet-stream; name="test.c"; type=Program-source Content-disposition: attachment; filename="test.c" Content-transfer-encoding: BASE64 LyogU3RlZiBURVNUIGZvciBDaG9vc2VQaXhlbEZvcm1hdCBQQg0KICovDQovKiBmcm9tIGds aW5mby5jIGluIGRlbW9zICovDQojaW5jbHVkZSA8c3RkaW8uaD4NCiNpbmNsdWRlIDxzdGRs aWIuaD4NCiNpbmNsdWRlIDxzdGRpby5oPg0KI2luY2x1ZGUgPHN0cmluZy5oPg0KI2luY2x1 ZGUgPGFzc2VydC5oPg0KDQojaW5jbHVkZSAid2luZG93cy5oIg0KDQp0eXBlZGVmIEhXTkQg V2luZG93Ow0KDQovKiBmcm9tIGdsdXRpbml0ICovDQpjaGFyICpfX2dsdXRQcm9ncmFtTmFt ZSA9IE5VTEw7DQppbnQgX19nbHV0QXJnYyA9IDA7DQpjaGFyICoqX19nbHV0QXJndiA9IE5V TEw7DQpjaGFyICpfX2dsdXRHZW9tZXRyeSA9IE5VTEw7DQovKiANCiAqIERpc3BsYXkgKl9f Z2x1dERpc3BsYXkgPSBOVUxMOw0KICovDQppbnQgX19nbHV0U2NyZWVuOw0KV2luZG93IF9f Z2x1dFJvb3Q7DQppbnQgX19nbHV0U2NyZWVuSGVpZ2h0Ow0KaW50IF9fZ2x1dFNjcmVlbldp ZHRoOw0KdW5zaWduZWQgaW50IF9fZ2x1dERpc3BsYXlNb2RlID0gMDsNCmNoYXIgKl9fZ2x1 dERpc3BsYXlTdHJpbmcgPSBOVUxMOw0KaW50IF9fZ2x1dENvbm5lY3Rpb25GRDsNCmludCBf X2dsdXRJbml0V2lkdGggPSAzMDAsIF9fZ2x1dEluaXRIZWlnaHQgPSAzMDA7DQovKiBpbnQg X19nbHV0SW5pdFggPSAtMSwgX19nbHV0SW5pdFkgPSAtMTsgKi8NCmludCBfX2dsdXRJbml0 WCA9IDEwMCwgX19nbHV0SW5pdFkgPSA1MDsNCi8qICpJTkRFTlQtT04qICovDQoNCldpbmRv dyBYSFdORDsNCkhEQyBYSERDOw0KDQpMT05HIFdJTkFQSQ0KZHVtbXlXaW5kb3dQcm9jKEhX TkQgaHduZCwgVUlOVCBtc2csIFdQQVJBTSB3UGFyYW0sIExQQVJBTSBsUGFyYW0pDQp7IA0K ICAgIHJldHVybiBEZWZXaW5kb3dQcm9jKGh3bmQsIG1zZywgd1BhcmFtLCBsUGFyYW0pOyAN Cn0NCg0Kdm9pZCBkdW1teUVycm9yKHZvaWQpDQp7DQogICAgTFBWT0lEIGxwTXNnQnVmOw0K ICAgIA0KICAgIEZvcm1hdE1lc3NhZ2UoIA0KICAgICAgICBGT1JNQVRfTUVTU0FHRV9BTExP Q0FURV9CVUZGRVIgfCBGT1JNQVRfTUVTU0FHRV9GUk9NX1NZU1RFTSwNCiAgICAgICAgTlVM TCwNCiAgICAgICAgR2V0TGFzdEVycm9yKCksDQogICAgICAgIE1BS0VMQU5HSUQoTEFOR19O RVVUUkFMLCBTVUJMQU5HX0RFRkFVTFQpLCAvKiBEZWZhdWx0IGxhbmd1YWdlICovDQogICAg ICAgIChMUFRTVFIpICZscE1zZ0J1ZiwNCiAgICAgICAgMCwNCiAgICAgICAgTlVMTCANCiAg ICAgICAgKTsNCg0KICAgIC8qIERpc3BsYXkgdGhlIHN0cmluZy4gKi8NCiAgICBNZXNzYWdl Qm94KCBOVUxMLCBscE1zZ0J1ZiwgIkdldExhc3RFcnJvciIsIE1CX09LfE1CX0lDT05JTkZP Uk1BVElPTiApOw0KICAgIA0KICAgIC8qIEZyZWUgdGhlIGJ1ZmZlci4gKi8NCiAgICBMb2Nh bEZyZWUoIGxwTXNnQnVmICk7DQp9DQoNCiANClBJWEVMRk9STUFUREVTQ1JJUFRPUiAqIGR1 bW15Q2hvb3NlVmlzdWFsKGludCByZ2IsIGludCBkYmxlKQ0Kew0KICBpbnQgcGY7DQogIFBJ WEVMRk9STUFUREVTQ1JJUFRPUiBwZmQ7DQogIFBJWEVMRk9STUFUREVTQ1JJUFRPUiAqbWF0 Y2ggPSBOVUxMOw0KICBpbnQgc3RlcmVvID0gMDsNCg0KICBtZW1zZXQoJnBmZCwgMCwgc2l6 ZW9mKFBJWEVMRk9STUFUREVTQ1JJUFRPUikpOw0KICBwZmQublNpemUgPSAoc2l6ZW9mKFBJ WEVMRk9STUFUREVTQ1JJUFRPUikpOw0KICBwZmQublZlcnNpb24gPSAxOw0KDQogIC8qIERl ZmF1bHRzLiAqLw0KICBwZmQuZHdGbGFncyA9IFBGRF9TVVBQT1JUX09QRU5HTCB8IFBGRF9E UkFXX1RPX1dJTkRPVzsNCiAgcGZkLmlQaXhlbFR5cGUgPSBQRkRfVFlQRV9DT0xPUklOREVY Ow0KICBwZmQuY0NvbG9yQml0cyA9IDMyOw0KICBwZmQuY0RlcHRoQml0cyA9IDA7DQoNCiAg aWYgKHJnYikgDQogIHsNCiAgICAgIC8qIEdMWF9SR0JBOiAqLw0KICAgICAgcGZkLmlQaXhl bFR5cGUgPSBQRkRfVFlQRV9SR0JBOw0KICAgICAgZnByaW50ZihzdGRlcnIsIiBDaG9vc2VQ aXhlbCBSR0JBICVkXG4iLHBmZC5pUGl4ZWxUeXBlKTsgDQogICAgICANCiAgICAgIC8qIEdM WF9SRURfU0laRSAqLw0KICAgICAgcGZkLmNSZWRCaXRzID0gODsgLyogVHJ5IHRvIGdldCB0 aGUgbWF4aW11bS4gKi8NCiAgICAgIGZwcmludGYoc3RkZXJyLCIgQ2hvb3NlUGl4ZWwgUkVE IHNpemUgJWRcbiIscGZkLmNSZWRCaXRzKTsgDQoNCiAgICAgIC8qIEdMWF9HUkVFTl9TSVpF ICovDQogICAgICBwZmQuY0dyZWVuQml0cyA9IDg7IC8qIFRyeSB0byBnZXQgdGhlIG1heGlt dW0uICovDQogICAgICBmcHJpbnRmKHN0ZGVyciwiIENob29zZVBpeGVsIEdSRUVOIHNpemUg JWRcbiIscGZkLmNHcmVlbkJpdHMpOyANCiAgICAgIA0KICAgICAgLyogR0xYX0JMVUVfU0la RSAqLw0KICAgICAgcGZkLmNCbHVlQml0cyA9IDg7IC8qIFRyeSB0byBnZXQgdGhlIG1heGlt dW0uICovDQogICAgICBmcHJpbnRmKHN0ZGVyciwiIENob29zZVBpeGVsIEJMVUUgc2l6ZSAl ZFxuIixwZmQuY0JsdWVCaXRzKTsgDQogIH0NCiAgZWxzZQ0KICB7DQogICAgICAvKiBHTFhf QlVGRkVSX1NJWkUgKi8NCiAgICAgIHBmZC5jQ29sb3JCaXRzID0gODsgLyogaW50ZXJtZWRp YXJ5IHN0dWZmICovDQogICAgICBmcHJpbnRmKHN0ZGVyciwiIENob29zZVBpeGVsIEJ1ZmZl clNpemUgJWRcbiIscGZkLmNDb2xvckJpdHMpOyANCiAgfQ0KICANCiAgaWYgKGRibGUpIA0K ICB7DQogICAgICAvKiBHTFhfRE9VQkxFQlVGRkVSICovDQogICAgICBwZmQuZHdGbGFncyB8 PSBQRkRfRE9VQkxFQlVGRkVSOw0KICAgICAgZnByaW50ZihzdGRlcnIsIiBDaG9vc2VQaXhl bCBEb3VibGVCdWZmICV4XG4iLHBmZC5kd0ZsYWdzKTsgDQogIH0NCiAgDQogIFNldExhc3RF cnJvcihFUlJPUl9TVUNDRVNTKTsgIA0KICBmcHJpbnRmKHN0ZGVyciwiIENob29zZVBpeGVs IGNhbGwgQ2hvb3NlUGl4ZWxGb3JtYXQoJXggLi4uKVxuIixYSERDKTsgDQogIHBmID0gQ2hv b3NlUGl4ZWxGb3JtYXQoWEhEQywgJnBmZCk7DQogIGlmIChwZiA+IDApIHsNCiAgICBmcHJp bnRmKHN0ZGVyciwiIENob29zZVBpeGVsIGNhbGxlZCA+MCA9PSAleFxuIixwZik7IA0KICAg IG1hdGNoID0gKFBJWEVMRk9STUFUREVTQ1JJUFRPUiAqKSBtYWxsb2Moc2l6ZW9mKFBJWEVM Rk9STUFUREVTQ1JJUFRPUikpOw0KICAgIERlc2NyaWJlUGl4ZWxGb3JtYXQoWEhEQywgcGYs IHNpemVvZihQSVhFTEZPUk1BVERFU0NSSVBUT1IpLCBtYXRjaCk7DQoNCiAgICAvKiBDaG9v c2VQaXhlbEZvcm1hdCBpcyBkdW1iIGluIHRoYXQgaXQgd2lsbCByZXR1cm4gYSBwaXhlbA0K ICAgICAgIGZvcm1hdCB0aGF0IGRvZXNuJ3QgaGF2ZSBzdGVyZW8gZXZlbiBpZiBpdCB3YXMg cmVxdWVzdGVkDQogICAgICAgc28gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCBpZiBzdGVy ZW8gd2FzIHNlbGVjdGVkLCB3ZQ0KICAgICAgIGdvdCBpdC4gKi8NCiAgICBpZiAoc3RlcmVv KSB7DQogICAgICBpZiAoIShtYXRjaC0+ZHdGbGFncyAmIFBGRF9TVEVSRU8pKSB7DQogICAg ICAgIGZwcmludGYoc3RkZXJyLCIgQ2hvb3NlUGl4ZWwgY2FsbGVkIHN0ZXJlYW8gZmFpbGVk XG4iKTsgDQogICAgICAgIGZyZWUobWF0Y2gpOw0KICAgICAgICByZXR1cm4oTlVMTCk7DQog ICAgICB9DQogICAgfQ0KICAgIC8qIFhYWCBCcmFkJ3MgTWF0cml4IE1pbGxlbml1bSBJSSBo YXMgcHJvYmxlbXMgY3JlYXRpbmcNCiAgICAgICBjb2xvciBpbmRleCB3aW5kb3dzIGluIDI0 LWJpdCBtb2RlIChsZWFkIHRvIEdESSBjcmFzaCkNCiAgICAgICBhbmQgMzItYml0IG1vZGUg KGxlYWQgdG8gYmxhY2sgd2luZG93KS4gIFRoZSBjQ29sb3JCaXRzDQogICAgICAgZmlsZWQg b2YgdGhlIFBJWEVMRk9STUFUREVTQ1JJUFRPUiByZXR1cm5lZCBjbGFpbXMgdG8NCiAgICAg ICBoYXZlIDI0IGFuZCAzMiBiaXRzIHJlc3BlY3RpdmVseSBvZiBjb2xvciBpbmRpY2VzLiAy XjI0DQogICAgICAgYW5kIDJeMzIgYXJlIHJpZGljdWxvdXNseSBodWdlIHdyaXRhYmxlIGNv bG9ybWFwcy4NCiAgICAgICBBc3N1bWUgdGhhdCBpZiB3ZSBnZXQgYmFjayBhIGNvbG9yIGlu ZGV4DQogICAgICAgUElYRUxGT1JNQVRERVNDUklQVE9SIHdpdGggMjQgb3IgbW9yZSBiaXRz LCB0aGUNCiAgICAgICBQSVhFTEZPUk1BVERFU0NSSVBUT1IgZG9lc24ndCByZWFsbHkgd29y ayBhbmQgc2tpcCBpdC4NCiAgICAgICAtbWprICovDQogICAgaWYgKG1hdGNoLT5pUGl4ZWxU eXBlID09IFBGRF9UWVBFX0NPTE9SSU5ERVgNCiAgICAgICYmIG1hdGNoLT5jQ29sb3JCaXRz ID49IDI0KSB7DQogICAgICAgIGZwcmludGYoc3RkZXJyLCIgQ2hvb3NlUGl4ZWwgY2FsbGVk IGNDb2xvcnNCaXQgPiAyNCBmYWlsZWRcbiIpOyANCiAgICAgIGZyZWUobWF0Y2gpOw0KICAg ICAgcmV0dXJuKE5VTEwpOw0KICAgIH0NCiAgfQ0KICBlbHNlDQogIHsNCiAgICAgIGZwcmlu dGYoc3RkZXJyLCIgQ2hvb3NlUGl4ZWwgRkFJTEVEICVzICVzICV4XG4iLCANCiAgICAgICAg ICAgICAgKHJnYikgPyAiUkdCIiA6ICJJTkRFWCIgLCAoZGJsZSkgPyAiZG91YmxlIjogICJz aW5nbGUiLCBwZik7DQogICAgICBkdW1teUVycm9yKCk7DQogIH0NCiAgDQogIHJldHVybiBt YXRjaDsNCiAgDQp9DQoNCmludCBtYWluKCBpbnQgYXJnYywgY2hhciAqYXJndltdICkNCnsN CiAgICAvKiBpbml0d2luMzJjb25uZWN0aW9uICovDQogICAgc3RhdGljIGNoYXIgKmNsYXNz bmFtZSA9IE5VTEw7DQogICAgV05EQ0xBU1Mgd2M7DQogICAgSElOU1RBTkNFIGhJbnN0YW5j ZTsNCiAgICAvKiBpbml0dGltZSAqLw0KICAgIC8qIGdsdXRjcmVhdGV3aW5kb3cgKi8NCiAg ICBzdGF0aWMgaW50IGZpcnN0V2luZG93ID0gMTsNCiAgICBXaW5kb3cgd2luX3dpbjMyOyAg ICAvKiBhbHNvIGZvciA9X19nbHV0Y3JlYXRlV2luZG93ICEhISAqLw0KICAgIEhEQyAgICB3 aW5faGRjOw0KICAgIFdpbmRvdyB3aW47DQogICAgLyogX19nbHV0Y3JlYXRlV2luZG93ICAq Lw0KICAgIGludCBpOw0KICAgIFdORENMQVNTIHdjXzE7DQogICAgaW50IHN0eWxlOw0KDQoN CiAgICAvKg0KICAgICAqIGdsdXRJbml0KCAmYXJnYywgYXJndiApOw0KICAgICAqLw0KICAg IC8qIGFyZyBwcm9jZXNzaW5nIHJlbW92ZWQgKi8NCiAgICAvKiBfX2dsdXRPcGVuV2luMzJD b25uZWN0aW9uKGRpc3BsYXkpOyAqLw0KICAgIGhJbnN0YW5jZSA9IEdldE1vZHVsZUhhbmRs ZShOVUxMKTsNCiAgICBmcHJpbnRmKHN0ZGVyciwgIiBHZXRNb2R1bGVIYW5kbGUoTlVMTCk7 ID0+ICV4XG4iLCBoSW5zdGFuY2UpOw0KICAgIGNsYXNzbmFtZSA9ICJHTFVUIjsgICAvKiBj b3JyZWN0ID8/PyBzdHJkdXAoIkNMVVQiKTsgKi8NCiAgICAvKiBDbGVhciAoaW1wb3J0YW50 ISkgYW5kIHRoZW4gZmlsbCBpbiB0aGUgd2luZG93IGNsYXNzIHN0cnVjdHVyZS4gKi8NCiAg ICBtZW1zZXQoJndjLCAwLCBzaXplb2YoV05EQ0xBU1MpKTsNCiAgICB3Yy5zdHlsZSAgICAg ICAgID0gQ1NfT1dOREM7DQogICAgd2MubHBmblduZFByb2MgICA9IChXTkRQUk9DKWR1bW15 V2luZG93UHJvYzsNCiAgICB3Yy5oSW5zdGFuY2UgICAgID0gaEluc3RhbmNlOw0KICAgIHdj LmhJY29uICAgICAgICAgPSBMb2FkSWNvbihoSW5zdGFuY2UsICJHTFVUX0lDT04iKTsNCiAg ICB3Yy5oQ3Vyc29yICAgICAgID0gTG9hZEN1cnNvcihoSW5zdGFuY2UsIElEQ19BUlJPVyk7 DQogICAgd2MuaGJyQmFja2dyb3VuZCA9IE5VTEw7DQogICAgd2MubHBzek1lbnVOYW1lICA9 IE5VTEw7DQogICAgd2MubHBzekNsYXNzTmFtZSA9IGNsYXNzbmFtZTsNCiAgICANCiAgICAv KiBGaWxsIGluIGEgZGVmYXVsdCBpY29uIGlmIG9uZSBpc24ndCBzcGVjaWZpZWQgYXMgYSBy ZXNvdXJjZS4gKi8NCiAgICBpZighd2MuaEljb24pDQogICAgew0KICAgICAgICBmcHJpbnRm KHN0ZGVyciwiRGlkbm90IGdldCByZXNzb3JjZSBJQ09OIGxvYWQgZGVmYXVsdFxuIik7DQog ICAgICAgIA0KICAgICAgICB3Yy5oSWNvbiA9IExvYWRJY29uKE5VTEwsIElESV9XSU5MT0dP KTsNCiAgICAgICAgaWYoIXdjLmhJY29uKSAgZnByaW50ZihzdGRlcnIsIklDT04gZmFpbGVk IHRvIGxvYWQgZGVmYXVsdFxuIik7DQogICAgfQ0KICAgIA0KICAgIGlmKCFSZWdpc3RlckNs YXNzKCZ3YykpIHsNCiAgICAgICAgZnByaW50ZigNCiAgICAgICAgICAgIHN0ZGVyciwNCiAg ICAgICAgICAgICJSZWdpc3RlckNsYXNzKCkgZmFpbGVkOiBDYW5ub3QgcmVnaXN0ZXIgR0xV VCB3aW5kb3cgY2xhc3MuXG4iKTsNCiAgICB9DQogICAgZnByaW50ZihzdGRlcnIsICJSZWdp c3RlckNsYXNzKCkgc3VjY2VlZFxuIik7DQogICAgDQogICAgX19nbHV0U2NyZWVuV2lkdGgg ICAgID0gR2V0U3lzdGVtTWV0cmljcyhTTV9DWFNDUkVFTik7DQogICAgX19nbHV0U2NyZWVu SGVpZ2h0ICAgID0gR2V0U3lzdGVtTWV0cmljcyhTTV9DWVNDUkVFTik7DQogICAgZnByaW50 ZihzdGRlcnIsICIgU3lzdGVtIE1ldHJpYyBXZHRoICVkIEhnaHQgJWRcbiIsIA0KICAgICAg ICAgICAgX19nbHV0U2NyZWVuV2lkdGgsIF9fZ2x1dFNjcmVlbkhlaWdodCk7DQogICAgDQog ICAgLyogU2V0IHRoZSByb290IHdpbmRvdyB0byBOVUxMIGJlY2F1c2Ugd2luZG93cyBjcmVh dGVzIGEgdG9wLWxldmVsDQogICAgICAgd2luZG93IHdoZW4gdGhlIHBhcmVudCBpcyBOVUxM LiAgWCBjcmVhdGVzIGEgdG9wLWxldmVsIHdpbmRvdw0KICAgICAgIHdoZW4gdGhlIHBhcmVu dCBpcyB0aGUgcm9vdCB3aW5kb3cuICovDQogICAgX19nbHV0Um9vdCAgICAgICAgICAgID0g TlVMTDsNCg0KICAgIC8qIFNldCB0aGUgZGlzcGxheSB0byAxIC0tIHdlIHNob3VsZG4ndCBi ZSB1c2luZyB0aGlzIGFueXdoZXJlDQogICAgICAgKGV4Y2VwdCBhcyBhbiBhcmd1bWVudCB0 byBYIGNhbGxzKS4gKi8NCiAgICAvKiBfX2dsdXREaXNwbGF5ICAgICAgICAgPSAoRGlzcGxh eSopMTsgKi8NCg0KICAgIC8qIFRoZXJlIGlzbid0IGFueSBjb25jZXB0IG9mIG11bHRpcGxl IHNjcmVlbnMgaW4gV2luMzIsIHRoZXJlZm9yZSwNCiAgICAgICB3ZSBkb24ndCBuZWVkIHRv IGtlZXAgdHJhY2sgb2YgdGhlIHNjcmVlbiB3ZSdyZSBvbi4uLiBpdCdzIGFsd2F5cw0KICAg ICAgIHRoZSBzYW1lIG9uZS4gKi8NCiAgICBfX2dsdXRTY3JlZW4gICAgICAgICAgPSAwOw0K DQogICAgLyogZ2x1dEluaXRXaW5kb3dTaXplKF9fZ2x1dEluaXRXaWR0aCwgX19nbHV0SW5p dEhlaWdodCk7IA0KICAgICAqIE5vdCByZWxldmVudCBza2lwcGVkIA0KICAgICAqLw0KICAg IC8qIGdsdXRJbml0V2luZG93UG9zaXRpb24oX19nbHV0SW5pdFgsIF9fZ2x1dEluaXRZKTsN CiAgICAgKiBOb3QgUmVsZXZlbnQgc2tpcHBlZCANCiAgICAgKi8NCg0KICAgIC8qIF9fZ2x1 dEluaXRUaW1lKCZ1bnVzZWQpOyAqLw0KI2lmIDANCiAgICBpZiAoIWJlZW5oZXJlKSB7DQog ICAgICAgIGZwcmludGYoc3RkZXJyLCIgaW5pdHRpbWUgbm90IGJlZW4gaGVyZSB5ZXQgXG4i KTsNCiAgICAgICAgR0VUVElNRU9GREFZKCZnZW5lc2lzKTsNCiAgICAgICAgZnByaW50Zihz dGRlcnIsIiBpbml0dGltZSBnZXQgdGltZSBvZiBkYXkgb2sgXG4iKTsNCiAgICAgICAgYmVl bmhlcmUgPSAxOw0KICAgIH0NCiAgICAqYmVnaW5uaW5nID0gZ2VuZXNpczsNCiNlbmRpZg0K ICAgIA0KICAgIC8qIEVORCBHTFVUX0lOSVQgKi8NCiAgICAvKg0KICAgICAqIGdsdXRJbml0 RGlzcGxheU1vZGUoIEdMVVRfUkdCICk7DQogICAgICovDQojaWYgMA0KICAgIF9fZ2x1dERp c3BsYXlNb2RlID0gR0xVVF9SR0I7DQojZW5kaWYNCg0KICAgIGZwcmludGYoc3RkZXJyLCAi IEdMVVQgSU5JVElBTElTRUQgXG4iKTsNCiAgICANCiAgICAvKg0KICAgICAqIGdsdXRDcmVh dGVXaW5kb3coYXJndlswXSk7DQogICAgICovDQogICAgLyogICB3aW5kb3cgPSBfX2dsdXRD cmVhdGVXaW5kb3coTlVMTCg9PXBhcmVudCksIA0KICAgICAqICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIF9fZ2x1dFNpemVIaW50cy54LCBfX2dsdXRTaXplSGludHMueSwNCiAg ICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBfX2dsdXRJbml0V2lkdGgsIF9f Z2x1dEluaXRIZWlnaHQsDQogICAgICovDQogICAgaWYgKCFHZXRDbGFzc0luZm8oR2V0TW9k dWxlSGFuZGxlKE5VTEwpLCAiR0xVVCIsICZ3Y18xKSkgew0KICAgICAgICBmcHJpbnRmKHN0 ZGVyciwiIEdPVCBQUk9CTEVNIGluIGdsdXRJbml0IHNob3VsZG5vdCBmYWlsZWRcbiIpOw0K ICAgIH0NCiAgICBlbHNlIGZwcmludGYoc3RkZXJyLCJDcmVhdGVXaW46IEdvdCBHTFVUIENs YXNzSW5mbyBPS1xuIik7DQogICAgLyogZ2V0VW51c2VkV2luZG93U2xvdCgpOyANCiAgICAg KiBTS0lQUEVEIA0KICAgICAqLw0KICAgIC8qIGluaXQgc2tpcHBlZCAqLw0KICAgIC8qIF9f Z2x1dEFkanVzdENvb3JkcyhwYXJlbnQgPyBwYXJlbnQtPndpbiA6IE5VTEwsDQogICAgICog ICAgICAgICAgICAgICAgICAgICAmeCwgJnksICZ3aWR0aCwgJmhlaWdodCk7IA0KICAgICAq ICBTa2lwcGVkIA0KICAgICAqLw0KICAgIA0KICAgIC8qIEEgc3RhbmRhcmQgdG9wbGV2ZWwg d2luZG93IHdpdGggYm9yZGVycyBhbmQgc3VjaC4gKi8NCiAgICBzdHlsZSA9IFdTX09WRVJM QVBQRURXSU5ET1c7DQogICAgZnByaW50ZihzdGRlcnIsDQogICAgICAgICAgICAiY2FsbCBD cmVhdGVXaW5kb3coXCJHTFVUXCIsXCJHTFVUXCIsICV4LCAlZCwlZCwgJWQsJWQsJXggJWMu LlxuIiwNCiAgICAgICAgICBXU19DTElQU0lCTElOR1MgfCBXU19DTElQQ0hJTERSRU4gfCBz dHlsZSwNCiAgICAgICAgICBfX2dsdXRJbml0WCwgX19nbHV0SW5pdFksDQogICAgICAgICAg X19nbHV0SW5pdFdpZHRoLCBfX2dsdXRJbml0SGVpZ2h0LA0KICAgICAgICAgIF9fZ2x1dFJv b3QsDQogICAgICAgICAgICdSJyk7DQogICAgd2luX3dpbjMyID0gQ3JlYXRlV2luZG93KCJH TFVUIiwgIkdMVVQiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBXU19DTElQU0lC TElOR1MgfCBXU19DTElQQ0hJTERSRU4gfCBzdHlsZSwNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgX19nbHV0SW5pdFgsIF9fZ2x1dEluaXRZLA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBfX2dsdXRJbml0V2lkdGgsIF9fZ2x1dEluaXRIZWlnaHQsDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgIF9fZ2x1dFJvb3QsDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIEdldE1vZHVsZUhhbmRsZShOVUxMKSwgMCk7DQogICAgZnByaW50 ZihzdGRlcnIsIiBDUkVBVEVEIFdJTkRPVyAleCBcbiIsIHdpbl93aW4zMik7DQogICAgd2lu X2hkYyA9IEdldERDKHdpbl93aW4zMik7DQogICAgZnByaW50ZihzdGRlcnIsIiBDUkVBVEVE IEhEQyAleCBcbiIsIHdpbl9oZGMpOw0KICAgIA0KICAgIC8qIE11c3Qgc2V0IHRoZSBYSERD IGZvciBmYWtlIGdsWENob29zZVZpc3VhbCAmIGZha2UNCiAgICAgICBnbFhDcmVhdGVDb250 ZXh0ICYgZmFrZSBYQWxsb2NDb2xvckNlbGxzLiAqLw0KICAgIFhIREMgPSB3aW5faGRjOw0K ICAgIFhIV05EID0gd2luX3dpbjMyOw0KDQogICAgaWYgKCFkdW1teUNob29zZVZpc3VhbCgx LDApKQ0KICAgIHsNCiAgICAgICAgZnByaW50ZihzdGRlcnIsIiBGYWlsZWQgVG8gQ2hvb3Nl IFZpc3VhbCBSR0IgXG4iKTsNCiAgICB9DQogICAgaWYgKCFkdW1teUNob29zZVZpc3VhbCgx LDEpKQ0KICAgIHsNCiAgICAgICAgZnByaW50ZihzdGRlcnIsIiBGYWlsZWQgVG8gQ2hvb3Nl IFZpc3VhbCBSR0IgRGJsZVxuIik7DQogICAgfQ0KICAgIGlmICghZHVtbXlDaG9vc2VWaXN1 YWwoMCwwKSkNCiAgICB7DQogICAgICAgIGZwcmludGYoc3RkZXJyLCIgRmFpbGVkIFRvIENo b29zZSBWaXN1YWwgQ01BUCBcbiIpOw0KICAgIH0NCiAgICBpZiAoIWR1bW15Q2hvb3NlVmlz dWFsKDAsMSkpDQogICAgew0KICAgICAgICBmcHJpbnRmKHN0ZGVyciwiIEZhaWxlZCBUbyBD aG9vc2UgVmlzdWFsIENNQVAgRGJsZVxuIik7DQogICAgfQ0KICAgIA0KDQp9DQoNCg0KDQo= --Message-Boundary-2647-- - 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".