delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/1998/09/01/11:30:51

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
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 <cateland AT adersa DOT asso DOT fr>
//
//   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".

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019