Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: From: "Mayer, Jim" To: "'cygwin AT sources DOT redhat DOT com'" Subject: Cygwin 1.1.4: DLL development problems, test case included. Date: Tue, 26 Sep 2000 09:44:44 -0400 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2650.21) Content-Type: multipart/mixed; boundary="----_=_NextPart_000_01C027C0.05115460" ------_=_NextPart_000_01C027C0.05115460 Content-Type: text/plain; charset="iso-8859-1" Hello all, I encountered some runtime problems in building DLLs under 1.1.4. After checking out the archives of this list, I managed to get simple cases to build and run, but quickly discovered other problems. The following is the first part of the README me file from a test case I put together. The full README contains some "cygcheck" output as well. I've attached the test case (as a gzipped tar file), but I don't know if it will go through. If it doesn't please contact me for a copy. Thanks. -- Jim Mayer --------------------- Here is a pair of dummy applications that exercise DLL building in the cygwin 1.1.4 environment. If I did this right, they expose a number of bugs in the DLL handling code. I've appended the output of "cygcheck -s -v -r" to the end of this note. I'm running 1.1.4 with libcygwin.a updated by: http://sources.redhat.com/ml/cygwin/2000-08/msg00256/dll_entry.o Thanks. -- Jim Mayer (jmayer AT crt DOT xerox DOT com) --------------------------------------------- I use the following two recipies for building DLLs: gcc -o libfubar.dll -shared \ -Wl,--enable-auto-image-base \ -Wl,--out-implib=libfubar.dll.a \ -Wl,--output-def=libfubar.def \ FUBAR_DLL/fubar.o \ -lstdc++ and gcc -o libfubar.dll -shared \ -Wl,--enable-auto-image-base \ -Wl,--out-implib=libfubar.dll.a \ fixed-libfubar.def \ FUBAR_DLL/fubar.o \ -lstdc++ The first lets the linker build the ".def" file based on "__declspec(dllimport)" and "__declspec(dllexport)" function and variable attributes. The second uses a hand made ".def" file. I use some funky pre-processor stuff to make the DLL imports and exports work right. Check the front of the ".h" files. I've run them through the pre-processor and validated that the "__declspec" stuff is being expanded appropriately. Here are the files: Makefile The entry point for running tests. Makefile.argle A DLL (and test) that also uses libfubar.dll. Makefile.fubar A DLL and test program. README This file. RESULTS A directory containing the results I got from running the tests along with two stackdumps. This is everything produced when I ran "make log." argle-test.cpp A test program for libargle.dll. argle.cpp The implementation of the "argle" class. argle.h The definition of the "argle" class. fixed-libargle.def A hand made ".def" file. fixed-libfubar.def A hand made ".def" file. fubar-test.cpp A test program for libfubar.dll fubar.cpp The implementation of the "fubar" class. fubar.h The definition of the "fubar" class. If you run "make" with no arguments, you will get the following message: Valid targets are: demo handmade bug1 bug2 handmade-bug2 bug3 handmade-bug3 clean -- the usual distclean -- clean up everything log -- run all of the tests create log files for them Running any of the first 7 targets produces a short message and then runs the test. Here is a brief description of what the test does and what results I get: demo This builds the programs "test-fubar-lib.exe" and "test-fubar-dll.exe". The two executables compute the same thing; the first is statically linked and the second uses a DLL. This test actually works. Note, however, that the ".def" files produced by the linker have far to o many symbols in them. This, I think, causes problems in "bug3" (but that is speculation). handmade The same as "demo", except that the hand made ".def" file is used. It still works. bug1 In trying to port a third party package to cygwin I ran into the following problem. This package runs on most *nix systems and on Windows using Visual C++ version 6. It uses __declspec(dllimport) and __declspec(dllexport), and got the same error messages that you see here. bug2 The "fubar" class contains a static instance of itself. If I try to access that element from the test program I get a crash when using the DLL. handmade-bug2 This is the same test as "bug2" but with a hand made ".def" file. The test still fails. bug3 The "argle" class is a wrapper for the "fubar" class. It also contains a static instance of itself. When linked against both DLLs, the test application crashes. handmade-bug3 This is the same test as "bug3" but with two hand made ".def" files. The test succeeds. ------_=_NextPart_000_01C027C0.05115460 Content-Type: application/octet-stream; name="dllbug.tar.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="dllbug.tar.gz" H4sIAFTzyDkAA+w8a1PjxrL5dgtV8QvyZeJlY9jF8hsSE1Lrtb3gBANlG5ac+BRHSGOsgx4uSYbl 3uS/3+4evS0bdmPY80DJgtTT09PTr+kZtdAM42p2XfzmKS9WK+3W6+wbxtjuTg1/l0ulMj37Vwla yjuV8m65Xq5Cc6WyW/qG1Z+UK/+auZ7iMPaNopm6pbueo3i2k4F3bFv8Ofh55ksT+leca4MXPO56 sjqdrngM0PZOrbZY/9XdGum/vFuqVku70FwvV+rfsNKK+ci8/sv1/0q3VGOmcfaTbsPkuWLKk5/X pRCcI8uQJ7l1aV0yFd3a3FqX/m9dYowamDfhl3S3h7Dx7AqEiTC628NOLMKRNVv3Nrf2FgADMPVN 4y4ButzbBIt6FG4I/HNd+tqy/1e44v7/BK5P10P+X6uVAv+vVysVaK7Bfy/+/xzXZ/m/cHn62Whc KS7fC6GNBv3C6MBYI3K4MFzMuatw2D+Rwq2tawFZ4aB+J9Weeeynn3wuGo0cI3fWx2zTm+gu299n 3yMfW4zQYx0QCviE/ifjhssDFGyJxwbgYO2/N0Yk/H/yNGM85P/g9oH/12pl9P/qTvnF/5/legW+ 9J3Gx7rFtc1m/+Coc3m4hT75SgCZD0NQPCwITxFhofjmDTjQG3aoWBrEh/bREdPNqe14LgMI45/o HlGKSGLMgvHen3WP2pdiBOgF474Cc0gM3Lk4PekP2eWlxlXDnXJ1EyxWUER0bsTInQ06X0BMsCqI uXxxL5glss8tTR/jrOON65JqKK4rYpiIXdPZlaGrjTBT8qNNdoZEATCRB4FVerrqJ1l+qP2T2gQH rFiMVPMX9O/7/1j/xLWCoV/5KRkfr8zCHvb/cqni7/+qu9XyDub/O7u7L/7/HJckDHgg0dp4WSf9 b6DBsXdlAfOB7F2FntFMI1j1P36F/M++0v7vZ0DP6//13dD/IfMnQPll//8sV9r/Sf9p/xeLVtL/ fViVYJAWONzkVqyhRg2Q6wcgnb2rvwSLf7Ur8H/U0Nc6/6vtBv5fq1fL4vyvVnrx/+e4Htz/xxP9 matb18xSTO5OFZVDkqrtzZ0LZmW4r1gi6z+obCV294QoThTkMJRsbrF9lsP2Rc3QBLmwsYf0w7T8 5Qjxs664/3+t87+dWlXs/3d263VowPO/nRf/f5ZrJf4vXD7mphG00QiPAfFcEFze8rizWRLRIjr9 85HRD3XLY1bsBBA7QCiwgtNCbPfRY9Eghf92n5XJbx3uzRwrgO9ljJl94igaWVZMEueIcAFeuj3e lttmS3ou6IQRTTwHvD6p/hP+/3XO/8qlciV8/7dT36Hzv+rL/v9ZrsT534ez981+6vzPh63gnE9Q mjuaE+DPPef7fGJLzvkSvdLnfMmJHJS3gsO+RC9yoJB2oklghwiCLgUbjGRRYIofGfpBcy88HIwC 417QMxZA9pYeIorwvOAQMdTv17bEl+trXH787yk3YOLG00S4B+I/pH/B+e/Ozu4uvf8t1V7Of57l Gjb7B53hYF/jps0mEMZNBbI+MIky/qiEoAI9wY9qAlSVBsNm69f2We90sB8dIhTArGT+icsgXPVG m5lTFlUYzTdKkmIYDWntHVcnNsudKwZEMlDLNcelxeGNHLSNbYdST4h7bGPT53trDyIeE93QljY2 ECWHUIuHBOnNsMEVixUKuJFjM3emGLlEuwa6D3HEzWzK+C137r0JpL1JbMO+RjxnZjFgndljIouz cxlEZcXjhIIuBaHfpv2wmZMkIgwzLWxs9pq/drZYYcwC35NFnCaUBRji0F1gSFLIciPs5JiIH4qn 8Xr/tQyMbIVNS9UQIC1TpLTmmJru+OvGUfc9++MP5jkznmzA5CDVIF5XZfQI39nFG8Q8IuuCKZAc ySoybGAkra0J/fTBlG9xoxLvDpLY2BCdC6+3wEAQf36UJBphkSVJIES3IVjIMEJCi7MwsyzkIC/s Me+PF6hUQNnP/g1qiFV+/r4czJ/theOiX0ae8SaXecuGWAxxZzs37jalYmCXLllknpQo9Pkmz6aO fe0opivHO7cmXL1huO+hHvGXAHmyYIDbs+uJLMusi46VR0zduokTwa6oQRdQDY1dcT8dRCmgh0C7 CxvGe/PKNlykBIB4fxonP/8aIs9gZuY9UzyPm1MPfjOFIhCjQEVekS2U3AIresDzyKdDO0R9E2uk 7xid0OZQwDTKBuF9/z0zb4MHVF5B3MdMKYifT6xW6gwDQrDjJMJ8KLY8y8e0i3OMRA7+vip5HjaP 271mu7NPNr1y6Ybr0JyEJVy/HhbvsQ3ZMZUwwvytG+Ua7u+nwKltjSER98BM4+hdDxJqHWzZ5dwE PdikmsA5ViU03GI8kcBQKvPCwoX9YVnFlgSwlcAokwsFrHyKC37O7ibcYrpH9rpCuVSeTi6VxW5a eJyAhs69cE1Ez1MqwO50b0LAMLGK+Z2bbVyazV2MsGRbOC+TbzN7wu44eKa8SjPzxflcXpotZTS/ 6qMioXUNmZSiG8K6usDcPfrg1UyH9ca7s3H5WZm1+fnU4hwM5Fd9OnOsLjfHxwgsZo61zzdHWjw8 HRMdYYrudwtF+6AUHy37tGif0TTnJf61d2bPc6X2/0IFKx7jgf1/rVYtB/v/UqVeF99/vNR/Pssl 9l6Dfms//ARACvdjlyfvfxnsb2yGSI3XiLAfIhRfy/aWFG7sluMDgsCXOhedfdxVSpJ8enhy/FtD JBKSOAdI7VE3NgF9Kw6EBMQHRgWLhiFJEBoaa5l4mRTjnRMJcHZEdfw9XXKAZCiUi1nDP5oejL2E Xsi5JGVB43JDqSfmJyvJFF/BAHzUPf5VVlWIwXa2hArtREmt/xxt8FMDYrxdOigrGK6nqW/fJmYQ ymnxDGKElnGepfDFhGLc6GMLFsJwvZHSphFWxaaE2mCBsQfesvWAnBOUC+5EcbhGgit8NLYLBW4p V8C4MvPsgm7CjqRApVgRAmzToWEKZPZTok7gTAEN2N1P8C6OINL8+lqLq4lIBcLBNxr/tgKZr2v+ Uing+xIpkkNspkHgo6Sm2d+CbZAbt7h5PCk+UtpHIgMNw6J4F70s0xItH46aBymBL6YuRXEeSJs3 eBJXmEaHcbF2DNsNRrE81g7stE56p92jDjZgtEjV88/FC1B3RHPjjWyzjZ+kaPmYZwOAsfZ5NrB9 jg07aowGEeekjQXnoMvWmHRUW2b+SWRlia3NGQVBNT4FQ3ML1B8P/2KPpP/WxcUWKLt1eurrmkDh vTiQBA20DkEQHVbo9VhsORaD/MFccLECZP9ucbT5u1L432bhb6XCj39/M5Lt0VYxMWqksFFxVI4k i0/FPNH7mSXZ/jI2M9aSz2M0qdH4o3gNGnCbZlcKSl2S4K+dmD3Tlc7/KTiseIyH8n/65jvI/yv+ 998v9R/Pcr3CQgjYcTMV9tZXHOsMxKnKdXmbDsa2GeyxcYMsA+a6BKj74lswfYzxD48r16XA0bHs CpcBhIUFFCFiJQOxEkMM6iZwNxIWJAbA2HYkxPK3FyECbS+CDrH9SHaHYD+CAwc7EvqeFfcgyZNN fylIHoJG24hwgcXutAvJxMykmeweJf/rGVuFJNVcCl0uZo36GTRx+7GMZsh0WN03twVJ1pGnko/1 dO6XKZB00pAiuWhLkeIptqlYxNNSfrK0luqeGDq1g1hflOKJlCE2Acwjkxa+NcdXglaYI68/mCSv L8iSE1nu+oJ9Q8Qwocxx6fcMZSAqn/6tpj3/uvGxcw1CVjxZD3qFKd16akMQ2E0GYizKNdZjaXAI TaDEE+EYxqKEPJGAR0T83DiijCn4/OAATaDMD04Ymd0ycvOITmx8kZ2vLyhAWBZ9STGPNboUtrJU 23NaEuAgS/Tr+dalBKCx/sVZerhI+QM9NvsVG8BwCpSmh5wHafp6Ik/3ef8yTlPx8At4Tb01jD1G mfp6MlUPpZ1O1v2Gr51G/dtefv7f7zTbvc4TjbE8/6+VoDn8+181/FtQ5Wplt/qS/z/HdcgdjiU2 CpsqEL7tMdNmJtbbTGHVVMEbbSo5UTwG2bGj6q4o86G3rpg+6ha+UZTU++s7uC3LZbnGuHWrO7aF pckyY90xVg1hQR++U3T064m3jX3uqUII6CnMmplXHAfHt8GuT5PGwVd0Bo6j2hqXJambv+XIG/g+ 1whLJC3IeA6YUKmWqeCywi0rODncyiASoIsaPeDAsj1ByQxzYME2vR6FxUHMBVaH2VRTPBjm6r4h SWsTz5s2ikXXnjkqd2XIRUAqsmqbRdMoij7FCthyofRD0XSvS6VKfacI7nUJYnDuZVuShjCbGxfG LhTYL7rJeso9zHrznyb+fqc6ngwitj8hzS1E+owL5oN1PjTZsW0Y9h3OC9+KO1zVp7pfhRiqDd+V 46SuVZWccGG29aUHsXMHqcszTMCIEhMBt5MHsGAIz8lvVmr4MJOgYqxJc1yPGVi7GpQWcSeoUwBA DqnlxHtr5AlM05JymR8r5KjsK5f5VQRQmFkqOigh3SqOjjOWFM9z9KsZrKfgfMiPy1UbEKgMLF47 F+NDDuzHtU2OdG/u2dThhaljg627YDmuNxuP0Z1M5YaH7pnx+YdEhSvk5jC+qC0kq4SI4AWFsjl5 kvOrDiBAoE/ja32skYUfDtZTSYiWZEHM0tCFU1JMIlqRdHI+m+DlVxzMXAKeFIoUEDIcewoS8rhx D7OlsAcWI1hDRtAbglOwtbUhBQ0sMZna9L0ZjB9EC6rylSNs8c58ba1JItlENhFlS7CoGK4tZJ+w slh3Agbdg95BTR8girV5DZmCiQl1AXBwdjQcrGE/yLu5CqvWPVaueYouuIQZONydGaCeLru2PbBT MGvHjsJeVLKsGDY8i/qQO5sww4JfYUYwMvwflUMjf9pM5Roh+yU5jmKxHBmIYV9jPUnyUBd5jc8t qDyMDtD9HgIZdYAOSt+40EoUmg9h5cSXNWGnyZroQx/r6Mvw598KAWcLHCMjEixDTiTHiyYce9Mc nnMtnS9hxfgXX+stnm8SX4Il+N6ekY+RenJC1Ra9PJ3hcO42YdxhBRrWVyfXERMcECIoush8bb60 RuXz3LTFXVBVI57wIDG8qyQxChGIPiWYa/RB86X7/pgPlOwLrC8q1ZekoIRbse6DPiKw74az910A o6o7gdgXyEk4MbiEFBbskkUwFmVbV47O8bsyV3X0aaC7uyCmkdFgJSCSkggc82XuNURhuCRCAi0t YpygEpjlYhXCYHF4tkmLibQWb/Gr+3P+SoH5AjyqMw9XEhCPbcJyLYKkq5igUpLrXkwaMLzYtIFs 78VapwXzT608EN5kn2Oan6J6M+pF9WVgpmvHkJpts4l9hzrcjoX4yMdCqWNaFl9fJ8otFoThnx6w GS5ToDe/3NxPKE2ZBt/G2kEsX99mqkKsAUWYrol4IB60uxzbvKJ6eEXMENaWmUEuuSVHpXgSuR8K hikgcdRIbhsEqPKpFzGfGSqQKoytgUDCys9ADMJluhZWOFKYthmurCBBYNvRIFF3PFiXIDxTxbLN /ORbxF9YrSjnxeK4wH/9CQaBPOhK1gmWZ9qgjTeW/gkE5nooCGQZkpK1j7ql2XfIKpI519H3WOvt Wwb6cdFod3D99oSGMzMYCM5AKzOBETXtsDKF9sW441DFK7mR2HdIaxiYXA6CBOcR4qkIySfCXLD2 kTeK7x7hwVMslaNr6Z7LjbG/HQE7FsWjioq5hb+/EYGX0RIZOmEQucntgDSVOEtiwRNS8XMhOVUx 7Fu67kazE1YPloLtOYYWRnF4YVJGs6RewkKw/NW3kKovgvjKJiLLnYP7IycIZanFgNSFOYm09kiB fcSpBo59jR08dmV7IATcRGxHooptGYNK8JRQqg8IpRoTCsaitFhwMcacMSaXGWiQazhQasfE5naD bMHOqXV/bc1cBrb+Y714PGQt2xrr1zNHzKStK9cWOIiuulJr5jhoIgNyEzbUTd5gH0EuAz5llRIr /dio7zZqNYb7QEkCikDuHHRRk0v+BqBc/aEM6M4tfnlwCo7IdiTpVPEmjbXizHWKhg2RtHiFkYie 03cwK83Rb3lRK/5TuynL1TRcLX7sHh8Pi8KVq5WMtiSZ42Gt2G7/Ok//4sQ65l4KuTPsNY+bB3KS sFY89f3kAyqo2CfZwURgBTHtTP4GPn/Fj+87vSStCWxC5tm5dj0bgjn8rsv1UrItWPaK3FRUt1Ap ybvzBNxpHfb5ZdEABgMctHWnwVqNEbE0ClhCxSVaYL9w0uuwffaPOL1DYDMvYd3NZe+kTc0zCKJ5 6fRjm3AjfbqOWhQnbXnpbNDpY3PiwCkvSd+1GggOxsxL37UJ0G6MRIAfAeN56X1z0Gl3+34LKG8E ystLraPmYHDaHB5ig7zXbggpwtIPbSe907Nhp3/cFJP4pXlwdtTsU8PgtNOKDzsK7GakmhrmBoA1 ODw5HXZPjgeI+LbLCsd5CQZt97vnHcFHXjoY0Jd98KQ1Rr6qRkJVe3OQ0RhCj5sBn7rUkid5h/Rb DQEIpjfCx8FwbjoIHP52SkC9/sNOXuoet47OhGpgsDALRxsdafwWdouabo9u1ZF/rLy3HEvxjEdi muOI5mv/5nVeikS0pC/o7BHUEes1/ECqJwegnE7/XBjWaHRR+Pi+UCpXfigcDytooq3DuFwKU7Ug TArauheddgttCqVNGlY1AA/anfPIzBLePWrz24HgZUCnLt12B3t0j8HKfFvqwdIIqWNeOj7rve/0 L08+XJ72T1qdweCkT4MAWydH7WxP0dWZf8zmxw/AHVRAdoEBzBur7VZG4GB7iIkYfuJyiX4EVuFP Ppg00ulcEK8y+MCe3Lno7Mnvm8M9udVr78nn7wf4A2C/DPAf3HwcfMAfh9A5mAe9FukOO63hWZ/I f0KTi5pBLMfD7oeu0Ao0sg+KqUO+u8N6tsYNVmUDj0+nmERUt9kBt2a6xbuWx404maPOeecIKSSI 9zvn3QH4JDaUqqUqtfVOaU4bpxsH8Dwo48O3fy/tje7+R/r292rFHM3ejSYMbqvm6O7b30umtMHy 0uCwc0QjYGgsuhOEHJ0TpAz3PXDtk1bz6NK3hyhCDU4vhbgtjx76naMOmJJv4n68pZZhp3fq2xJ+ x0kwMFfqXJXr8PzbAHASLi9A/ZOTYXLUgFZ8TUFYEZv6vbiih53BcDeI3VrajoNVKrxhQ8wpdkWM bp/0ml2S78dWfyhgYcjRTTq8FVCQ/IfuUSdhmTCScFxxuitDQpCXzru90NzpwLJ4q5sE7p+BqfhL TKIV/9WBI6A6J/6LzvFBKFk1kOxFJ6YUeBienIYKKYwVQ0V/uhguAM/pMGy7DJlDK7nVQbp/QxCI uN5pD2vbvRqou1SsbPfKJbmOd7CqHf7a+e2yddbvgy9corBGA3vs3cHsRn7eNbCNGb1m+BxcBICG v6DLyMQ/uOKyW/xrlpuQVSqwrd5K2FMe/w6Uf8/GhnLtQnPpU4muSukvDToqpofVgvUdh02PVqr8 xdGCzHFu0OCVxdUTDgzL0+KBKTV5qoFpLQHUOR1jImnNnnhg15hmDQzg1Q0chLKT6Rc4z28HEEJk +l6fe7PpX+o8uiqDs6+AhC/L1VEawSZszvxQA5imk1JIHeABinMfVwh2G7sQvmGvlwCvkLXyKol9 pgUtJ1ZdJbHaKonVV0lsZ5XEdldJ7IdVEvtxlcSaqyT2/+1d624bNxZe5McCKyDvwO2i6zSI7SHn JgnID12bAE1a1E77owpaWZrIqmVJ0Mhx0hfaR9jH2+UhZzjk3HSjZCUmg1gzHPLwOmfIj+fS1Ems pZNYWyexjk5iXY3EsE5+hnXyM6yTn2Gd/Azr5GdYJz/DOvkZ1snPsE5+hnXyM6yTn2Gd/Azr5Ge4 lJ+9GQ8Ws5De9SLQpBfB3L/wM55e59N8MlsEi96bYHr342JIry6W/cUSwX3v39FCNMzu59S117O7 aXg3h5MfkN74PA++e5BasfRrVo3DHgCfvX7b6V382L38tfFzp2DjumZiZee6WZ7eazifmUxoJVuz 2/lsGojlsgZCPbE1Sy+a4TTD8ogPq+WrfnjNMCe6bQFQw4E/mD0ZT2khk1DK4fL4cDaNslgs4nN/ MFAi/hrP5Xs4yl9EEfhMxC4+z5fZWH72KUWzPwSeDYM/+7T9Munh+MMH+T74NA8GSzkGUBvRjiRy OsxGToJP8v2of38T3dusfqx/2BPRXuizmnsW9x6r5mh4lfQZ5qTmwUKp52gRzNX7mWgIbTDGfTEO o1RvjqeUI0h1Z/1jiyqwCk7gFFTKQ/fm8+lI6Wz444lCJrOR2us2xN7KNJgcUNIdfi1J1pezuiPR E7N5MB1NZLJEjCgrdt5fDq7lQkB6TupyIlKG18FkkhmypZhX/HYwWd6k+34ZLG4H/XkSbfNoMIYj 5f04jlvLhtMXffkX2MdKz0dbVGwZfBpPP8yUagSflBEiosNpDm2v909/f/XkP8GrJ//91+D+iV6y //tjF7IJILdZ7lwQY9vcMoqxGw0FxtBCqmfprJiAHjRR23HY8sEHTdQcrdRcrdQ8rdR8rdSqWqnV tFJraKXW1EqtpZVaWyu1jlZqXZ3UsFb+hrXyN6yVv2Gt/A1r5W9YK3/DWvkb1srfsFb+hrXyN6yV v2Gt/A1r5W94Q/72/dt3dFe/TZ4ek3rhW0WbVCr9Ot29DVES3p43pJ90qAxo+mua/u1l9wIiiOX4 b64QqtW+Ra2fUOsCvXuLfmqgbounH6bSex6pQvqqnZ8+oOkHG9TnQ5S+1eb0Ed26UPrYsr6FO04/ CReXP3c6lxd+pTKUZckQik+HEQjwLpgc/nh6OxsGUkLYzaD4NLckIU0Ul5eTBrbhSD2azU0XTuZK OnafTlfp0glE+1hpTQ+QCWZUMHqqRv7aX4A4f1EmdD0eBiHKJaTmGPSXJQ/n8+KHACIUPx0NBiUP h1fFDyclVCdh8TPYoBc/zenM8q7MdmSUHpxZVe0bJhR7bnnnGKd77fNoTLfitsVV+dAsfAkCs+Pb 0Uu6eQahdLivoEz4Rsn5DfpIN81oGb5kJdGCLETsus08kdruqgrcbFv+zeriHYuUF08bUd2qeJGx qHiecUXrKZX5eL5GDbC1ktAiGG3dFJG3rDWeXVtRiZstK3BTXjiMJP2QxIVXzy0nWzi9xNsUHudL FV49t2lxdZf72eWICVMUjDUwAEyqC5pQ8G3/z9miznTs1fjxFOIdJTKYzwbXNHFNib3qD1E4HoFI 3G0/vIHnFt3+yklmoM0aLG7Hs7COkkf9+TiugKVG8tKJJ2Ijld1hf0m/x7ZCnPKQ6XL8YRzQHFHf iOds9YDoTAHZ6c+Uongy4F//+BFz1FFHOccSIjl0ZjY5h8B5iKVwZ1zMJkqUFr5JkVSrGOWR5c54 4BoBoM5aR5fXd6hxN0LRaNcdD3Xal1yRIE7f+uUCLfujuEtOMf3npLtzPBRddmFXKu/CAJ1eg64L V6Gh39P+Ffj6CPqDa1DQggYY8xmPNgj7H0yd+HwvZdDPn++6xf5fEbJi+x8WsS2w/+EQ52/I3Utt UuGR2/9IjT/oHoI7Iq1lrLT/6BIx/vQzA/YfLc8z9l8OEWAT8Bt+X0cd8EIJqgiJNYEiDabn8G8d 7zmVVU5zGKnVPsfKvZaxg8bNHOmwVpPNWq2Sr9esumqEqk57BPQRr7mC72yR0KzAATC3i0nnu2xH K7J1q9XWVyVt6au4eNnern4bXpWMBa+k438I+h/X6/dtxqpoSqVsyLEoWs317cdVFOtxlXx7MImJ Oyky1Q8ZY3lskMQonQ5UW3kxITFpKuBeRTUrmEmtkswauEz1SJF5y2zNyu0KZuuaqUeR7Z5VpnvW sNyz0tBQ7pCJtrbAIgRMMpptAWLh8DLX0zbsyzo2nmpb2jGtvJ7GLm2Y1uCQK6SrueukXomMgNRJ rY7uY0iGZqL7EfoZA9F1Pps5awZt8D8kT8Syt/aTMyS08hFNcXcLhgmAx+cbnqWP0rZmGdATscEc l+k47QkdlyQm6cSkJLGdoWyV0XayyUlRS8E+S6ql0dh+sS3dgv3KLpa2/kbH7piENybZGZPkmy72 wMQcMImlyfPnz9FvkOA96jADETh5tn5DHnqldZwhu/4np2XDvE0ZK9b/2PVwsv63fYTAEKRl1v+H CB1mrWY8m9bRxWXj8t3F740WqBj//svrH39ogNY/uFwNxvOXHvYdykMaTytB/9NLizhWt9NooeCK 3jQsF3ttCwWD+EmL3gzpjeVYGLerKAjHLBnd4NGbIb2JAiV3NeeZmk2HpotuOl4rBt9eJiArfbV7 7NXu0Ve7xydvLztfn1YGIS0BN9EQfolN6fLfD/BrN9EoZDVAIY9/WrmAGU53B/1BUH9a6S7ANgmE bmxkDzUWo/BpRdQUxR2C0LO4MS9Q2dV3UW5ompqbdxKkpFdetaXkZlmaSe6mhXhCq9pJyqYfnngY +BX09As4GbQIcXCcu4stFEWCp/Vn3SjIJfp+1/fsti2umiK3H+euwj6d19xys/XtNqyoNcSvidxV kduxy3qNON4LVLWw47rVJHcjbjclqZRdtbya7XhOdGVXeRtws9bxRe6W6DXbLSjb73bbXeVK5O4C QsVJihHLHeVmfIVZ7g43PBomk+uhX/hUyOH/B8d/iOsk/N/BDP/xDf8/SNge/1E3ABt4BN4z6FPo JfjBQB/ysKBPungD+hwj6EP0gz5ED+hDdgV9yNcG+mQ7dlfQZ1uwpZ4HQWyCOJQlziAOZfBEDt5Q RtvVA8TEx4e/3fbH0/dpBoVt3/e5Dfng9yDe6YSUq6zc9VDKxHctUkpZfI7qqE3/QrWllR4cdpR9 4BImxwAO2vD36CIYJdZ/mQYeejaYLQKwyj8Pht8dN4JDViE4xCA4Rxay63/7tGwebFPGKvzHc32x /qd7Po7/ELP+P0TYDP8hDvE4/uNYVYu43S7HfwQYlMF/+BOO/3iEtDButgrxH9+S8B9SXRf/yc7X veM/HAfhHbI5/uOqueN+eYHYlWUTObeHLcfxW57IzVAUltCzoOyo818gCcuJgKIIg7GcZg565LtH gR45Vhl6RLB29Ihgpeyq5dvddsuJrlqdR4Ue5fD/A+M/9Nr2Ev4PskDYpbPT8P9DhO3xn0twBRAy m+Qo8v8RWVWPXN3cz5iboX3CPQzkeRBg58EgHQPmHAmYs10/KJOYOy5vvvve3gtmyd3GV9266tp8 /aktnPFsMLnW9Bqf9sKeU/A2U3sTV/AZT/AHndpZdidHqVNbOEiSvCXxqZ24TuoradmdGIRzHjlL ImFqS5GpfohxSpFWDA9DKLMkxESREMq4IpnURcwcnZ4yw5yn9+CvJ3krCt5t1ubkXeZDYZuvwOG+ Avbmr8qG4yNNu63g568DeBY994f64IR5EZrDkguUiM4KDxh0HS1sMerSMOSwtxSfl7hG3pFEii/R Ts2ZIOJZBosXnEvmiAnnUidMwnJ3nDApDp03YRKOXsS0cybe6ikklVwwDOqpRXHPZT7H/0g1bJ1j DXX4GaCfnREVvkKpRz/QsfX6JtKWsHfe6PyDZdis1BxJTDDivdHZSHmG7OlISWJvk2Maf7Njmuqq Yxp1NqVHteCYJrU+w3aNeNsf0zhWrZzy6mOalXvP1DENP8Rwj/s0xi46jTEnLibEIYX/gQ/Dw+v/ YTfC/zzfJzbD/4z812HCTvhfGEt9gZ8+4ev0RHIw+vxEuCQFbUDuDnp2x10+nsiL5RPOFSPFwLMz cBo/m54sua9Omjf2OR3SFJMhugoij9PsK0R5PX0ODqy5y08gAE4wn3OqJ1knvmzxDI7ul+A2Zwmn XLIfRu6Acd/Q5YPLpz3uDayBMfe+ZZQ2HjvIoT16CCC/Gx9K6uzLU3wzKn4PvyWBtWWpgBgkMAJi hw2p9b/iwlqXIuBG+n8+Xf8T23HM+f9Bwg76f66q/+fjaiz/5ab0/1rr6P+5sv6fe8z6f+5O+n9u gf5fi+v/YeJ0nZRElJvo/7mr9P/oMBRLcLk7SXC55fp/WKqvkODqklpN5N5BgstNJLiApKr/h9se nYtOdNVuZSS43DwJLpwuu0iCyz1qCa7dQhn/1wUErcR/HE/i/2D/yfMcg/8cJOyA/4CwF6A4MFVO EFv33Y+X1ywynkfoJMF2QsUe1HAWhADvMHNQsAK9DV6g2TW6DygLP9u3ZahISfBV4237TaPdMSqD ApgxKoNfAjxjVAZ3hW2yiLDRE3y8eoJVe4cDaLtas0spGz1BCQZSIYYyPEhJaYChvYSS9b82RZAV 63/f9RP8h/7n63+j/3eQoGf976y9/menxsyX4piv/cN/MnraFTyOf2m3OYfWvh9KKyDsdT9k1BGM OsI26giH1z1QXwOjiXD0ghxGE2GP+1mjflAkiXLkugZiShgFA6Ng8HUrGJhRPf5R/TIgqUKtiQwk ZX8NkFQB/qNVB2DV+S8GaYBY/h9swWLPMva/DxMOK//P8tCOBJeuTPr+REjcn8hQETsQVr75+zwP PsZT4Me9nzMnv0Yw/4h3xEYa30jjf+nS+GIlu85y92tY6ZpgggkmmGCCCSaYYIIJJphgggkmmGDC 4wv/B5pML9YAGAEA ------_=_NextPart_000_01C027C0.05115460 Content-Type: text/plain; charset=us-ascii -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com ------_=_NextPart_000_01C027C0.05115460--