Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <20021013011938.9273.qmail@web11501.mail.yahoo.com> Date: Sat, 12 Oct 2002 18:19:38 -0700 (PDT) From: Andrew Lynch Subject: pthreads in YahooPOPs To: cygwin AT cygwin DOT com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="0-1399895724-1034471978=:9095" Note-from-DJ: This may be spam --0-1399895724-1034471978=:9095 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, I am trying to build YahooPOPs for Linux http://sourceforge.net/projects/yahoopops on Cygwin but have run into a problem with pthreads. The lines below do not compile even though Cygwin supports pthreads and pthread.h is included in the header file. lock.__m_reserved = 0; lock.__m_count = 0; lock.__m_owner = 0; lock.__m_kind = PTHREAD_MUTEX_TIMED_NP; lock.__m_lock.__status = 0; lock.__m_lock.__spinlock = __LT_SPINLOCK_INIT; Does anyone know why these pthread commands(?) are not supported or won't compile? Thanks in advance for the help! Andrew Lynch PS, I am also helping the author of SaveMyModem debug that software. It now builds under Cygwin and many of the bugs have been found and fixed. Give it a try, (cvs version only). Hopefully, version 0.14 will be out soon and much improved. http://sourceforge.net/projects/savemymodem __________________________________________________ Do you Yahoo!? Faith Hill - Exclusive Performances, Videos & More http://faith.yahoo.com --0-1399895724-1034471978=:9095 Content-Type: application/octet-stream; name="LogFile.cpp" Content-Transfer-Encoding: base64 Content-Description: LogFile.cpp Content-Disposition: attachment; filename="LogFile.cpp" LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioNCioNCiogWWFob29QT1Bz IQ0KKg0KKiBZYWhvb1BPUHMhIGlzIGFuIGFwcGxpY2F0aW9uIHRoYXQgcHJv dmlkZXMgUE9QMyBhY2Nlc3MgdG8gWWFob28hIE1haWwuDQoqIFlvdSBkbyBu b3QgbmVlZCB0byBlbmFibGUgUE9QMyBhY2Nlc3Mgd2l0aCBZYWhvbyEgdG8g dXNlIHRoaXMgcHJvZ3JhbS4NCiogVGhpcyBwcm9ncmFtIHdvcmtzIHdpdGhp biB0aGUgbGljZW5zZSBhZ3JlZW1lbnQgb2YgWWFob28hIHRvIHByb3ZpZGUN CiogeW91IHdpdGggUE9QMyBhY2Nlc3MuDQoqDQoqIFlhaG9vUE9QcyEgZW11 bGF0ZXMgYSBQT1AzIG1haWwgc2VydmVyIGFuZCBzaG91bGQgd29yayB3aXRo IG1vc3Qgb2YgdGhlDQoqIGVtYWlsIGNsaWVudHMuIFNpbmNlIFlhaG9vUE9Q cyEgaXMgbm90IGEgZnVsbC1mbGVkZ2VkIFBPUDMgbWFpbCBzZXJ2ZXINCiog eW91IG1pZ2h0IGZpbmQgaXQgbm90IHdvcmtpbmcgd2l0aCBhbGwgbWFpbCBj bGllbnRzLiBEbyBrZWVwIHVzIGluZm9ybWVkDQoqIGFib3V0IHN1Y2ggbWFp bCBjbGllbnRzIHNvIHRoYXQgd2UgY2FuIGVuaGFuY2UgWWFob29QT1BzIQ0K Kg0KKiBPZmZpY2lhbCBXZWJzaXRlOiBodHRwOi8veWFob29wb3BzLnNvdXJj ZWZvcmdlLm5ldA0KKg0KKiBDcmVkaXRzOg0KKiAtIFlhaG9vUE9QcyEgaGFz IGJlZW4gaW5zcGlyZWQgYnkgRmV0Y2hZYWhvbywgYSBQZXJsIGJhc2VkIGFw cGxpY2F0aW9uDQoqICAgdGhhdCB3b3JrcyB3aXRoIG1haWwgY2xpZW50cyBz dXBwb3J0aW5nIG1ib3gnZXMgKE5ldHNjYXBlLCBQaW5lLCBldGMuKS4NCiog ICBGZXRjaFlhaG9vIGlzIGF1dGhvcmVkIGJ5IFJhdmkgUmFta2lzc29vbiA8 cmF2aV9yYW1raXNzb29uQHlhaG9vLmNvbT4NCiotLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQoqDQoqIE5hbWUgICAgOglMb2dGaWxlLmNwcA0KKg0K KiBQdXJwb3NlIDogVG8gbWFpbnRhaW4gYW4gYWN0aXZpdHkgbG9nIGZpbGUN CioNCiogQXV0aG9yICA6IEFudWogU2V0aCA8eWFob29wb3BzQGFudWpzZXRo LmNvbT4NCiogCQkJSy5TaHlhbSAgIDxzaHlhbWtAbWFpbGNpdHkuY29tPg0K Kg0KKiBMaWNlbnNlIDogR05VIFB1YmxpYyBMaWNlbnNlIChWZXJzaW9uIDIg b3IgbGF0ZXIpDQoqDQoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K Kg0KKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIGBgQVMgSVMnJyBCWSBU SEUgQVVUSE9SUyBBTkQgSU5ERVBFTkRFTlQNCiogQ09OVFJJQlVUT1JTIEFO RCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO RywgQlVUIE5PVCANCiogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFO VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgDQoq IFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF TlQgU0hBTEwgVEhFIEFVVEhPUiBPUiANCiogQ09OVFJJQlVUT1JTIEJFIExJ QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQ RUNJQUwsIA0KKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF UyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIA0KKiBQUk9DVVJF TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G IFVTRSwgREFUQSwgT1IgDQoqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg DQoqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIA0KKiBORUdMSUdFTkNFIE9S IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF IE9GIFRISVMgDQoqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLg0KKg0KKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKi8NCg0KI2luY2x1ZGUgIkRhdGFIb2xkZXIuaCIN CiNpbmNsdWRlICJMb2dGaWxlLmgiDQojaW5jbHVkZSA8dGltZS5oPg0KI2lu Y2x1ZGUgPHN0ZGFyZy5oPg0KDQoNCg0KI2lmZGVmIFdJTjMyDQojaW5jbHVk ZSAic3RkYWZ4LmgiDQojaW5jbHVkZSAieWFob29wb3BzLmgiDQojZWxzZQ0K I2luY2x1ZGUgPHN0cmluZy5oPg0KI2luY2x1ZGUgPHVuaXN0ZC5oPg0KI2Vu ZGlmDQoNCg0KZXh0ZXJuIENEYXRhSG9sZGVyIHNldHRpbmdzOw0KDQpMb2dG aWxlOjpMb2dGaWxlKGNvbnN0IENTdGRTdHJpbmcgJmZpbGVuYW1lKQ0Kew0K CW1fc3RyTG9nRmlsZSA9IGZpbGVuYW1lOw0KDQojaWZkZWYgV0lOMzINCglm cCA9IGZvcGVuKG1fc3RyTG9nRmlsZSwgImF0Iik7DQojZWxzZQ0KCWNoYXIg c3RyWzEwMjRdOw0KCW1fc3RyTG9nRmlsZS5Ub0NoYXIoMCxzdHIsMTAyNCk7 DQoJZnAgPSBmb3BlbihzdHIsICJhdCIpOw0KI2VuZGlmDQoJDQoJZnNlZWso ZnAsIDAsIFNFRUtfRU5EKTsNCg0KCW1fbkZpbGVTaXplID0gZnRlbGwoZnAp Ow0KI2lmbmRlZiBXSU4zMg0KCS8qIGkgaGF2ZSB0byBkbyBhbGwgdGhlc2Ug c2hpdCB0aGluZ3MgaGVyZSBiZWN1YXNlIG9mIHRoYXQNCgkgKiBibGFzdGVk IGcrKyBzY3Jld3MgbXkgaGFwcGluZXNzIGlmIGkgZGVjbGFyZSBsb2NrIGFz IGENCgkgKiBnbG9iYWwgdmFyaWFibGUgaW4gdGhpcyBmaWxlIGl0c2VsZi5p dCBjb25mbGljdHMgd2l0aA0KCSAqIGlvc3RyZWFtIGxvY2sgISA6LSggKi8N Ci8qDQoJbG9jay5fX21fcmVzZXJ2ZWQgPSAwOw0KCWxvY2suX19tX2NvdW50 ID0gMDsNCglsb2NrLl9fbV9vd25lciA9IDA7DQoJbG9jay5fX21fa2luZCA9 IFBUSFJFQURfTVVURVhfVElNRURfTlA7DQoJbG9jay5fX21fbG9jay5fX3N0 YXR1cyA9IDA7DQoJbG9jay5fX21fbG9jay5fX3NwaW5sb2NrID0gX19MVF9T UElOTE9DS19JTklUOw0KKi8NCiNlbmRpZg0KfQ0KDQpMb2dGaWxlOjp+TG9n RmlsZSgpDQp7DQoJZmNsb3NlKGZwKTsNCn0NCg0Kdm9pZCBMb2dGaWxlOjpX cml0ZShjb25zdCBMT0dUWVBFIHR5cGUsIGNvbnN0IGNoYXIgKmZvcm1hdCwg Li4uKQ0Kew0KI2lmbmRlZiBXSU4zMg0KCXRpbWVfdCB0aW1lVmFsPTA7DQoj ZW5kaWYNCg0KCWlmKHNldHRpbmdzLm1fYkNyZWF0ZUxvZyA9PSBGQUxTRSkN Cgl7DQoJCS8qIExvZyBmaWxlIGhhcyBiZWVuIGRpc2FibGVkICovDQoJCXJl dHVybjsNCgl9DQoNCiNpZmRlZiBXSU4zMg0KCWxvY2suTG9jaygpOw0KI2Vs c2UNCglwdGhyZWFkX211dGV4X2xvY2soJmxvY2spOw0KI2VuZGlmDQoNCgl2 YV9saXN0IGxpc3Q7DQoJdmFfc3RhcnQobGlzdCwgZm9ybWF0KTsNCg0KCWNo YXIgc3RyVGltZVs4MF07DQojaWZkZWYgV0lOMzINCglDU3RkU3RyaW5nIGZv cm1hdFN0cjsNCglmb3JtYXRTdHIuRm9ybWF0KCJbJXNdICIsIF9zdHJ0aW1l KHN0clRpbWUpKTsNCglmb3JtYXRTdHIgKz0gZm9ybWF0Ow0KCWNoYXIgc3Ry WzEwMjRdOw0KCXZzcHJpbnRmKHN0ciwgTFBDVFNUUihmb3JtYXRTdHIpLCBs aXN0KTsNCiNlbHNlDQoJY2hhciBzdHJbMTAyNF0sZm9ybWF0U3RyWzEyN107 DQoJdGltZSgmdGltZVZhbCk7DQoJY3RpbWVfcigmdGltZVZhbCxzdHJUaW1l KTsvKiByZWVudHJhbnQgY2FsbHMgYXJlIHRoZSBvcmRlciBvZiB0aGUgZGF5 ISAqLw0KCXN0clRpbWVbc3RybGVuKHN0clRpbWUpIC0xIF0gPSAnXDAnOw0K CXNwcmludGYoZm9ybWF0U3RyLCJbJXNdICAiLHN0clRpbWUpOw0KCXZzcHJp bnRmKHN0cixmb3JtYXRTdHIsIGxpc3QpOw0KI2VuZGlmDQoJDQoJaWYoc3Ry W3N0cmxlbihzdHIpIC0gMV0gIT0gJ1xuJykNCgl7DQoJCXN0cmNhdChzdHIs ICJcbiIpOw0KCX0NCgllbHNlIGlmKHN0cltzdHJsZW4oc3RyKSAtIDJdID09 ICdccicpDQoJew0KCQlzdHJbc3RybGVuKHN0cikgLSAyXSA9ICdcbic7DQoj aWZkZWYgV0lOMzINCgkJc3RyW3N0cmxlbihzdHIpIC0gMV0gPSBOVUxMOw0K CQkvKiBzdHJhbmdlIGFpbnQgaXQgPyB3aW5kb3dzIGFjY2VwdHMgTlVMTCAh ICovDQojZWxzZQ0KCQlzdHJbc3RybGVuKHN0cikgLSAxXSA9ICdcMCc7DQoJ CS8qIGxldCB1cyBiZSBBTlNJIENPTVBMSUFOVCAhISEgKi8NCiNlbmRpZg0K CX0NCg0KCW1fbkZpbGVTaXplICs9IHN0cmxlbihzdHIpOw0KDQoJaWYodHlw ZSA9PSBMT0dfQkFTSUMpDQoJew0KCQkvKiBJZiB0eXBlIGlzIDAsIHRoZW4g ZXZlcnl0aGluZyBtdXN0IGJlIHdyaXR0ZW4gKi8NCgkJZnByaW50ZihmcCwg c3RyKTsNCgl9DQoJZWxzZSBpZihzZXR0aW5ncy5tX25Mb2dMZXZlbCA9PSBM T0dfQURWQU5DRUQgJiYgdHlwZSA9PSBMT0dfQURWQU5DRUQpDQoJew0KCQlm cHJpbnRmKGZwLCBzdHIpOw0KCX0NCg0KCWZmbHVzaChmcCk7DQoNCglpZiht X25GaWxlU2l6ZSA+IChzZXR0aW5ncy5tX25Mb2dTaXplICogMTAyNCkpDQoJ ew0KCQkvKiBUcmltIHRoZSBmaWxlICovDQoJCVRyaW0oKTsNCgl9DQoNCiNp ZmRlZiBXSU4zMg0KCWxvY2suVW5sb2NrKCk7DQojZWxzZQ0KCXB0aHJlYWRf bXV0ZXhfdW5sb2NrKCZsb2NrKTsNCiNlbmRpZg0KDQp9DQoNCnZvaWQgTG9n RmlsZTo6VHJpbSgpDQp7DQojaWZkZWYgV0lOMzINCglsb2NrLkxvY2soKTsN CiNlbHNlDQoJcHRocmVhZF9tdXRleF9sb2NrKCZsb2NrKTsNCiNlbmRpZg0K DQoJZmNsb3NlKGZwKTsNCiNpZmRlZiBXSU4zMg0KCXVubGluayhtX3N0ckxv Z0ZpbGUpOw0KCWZwID0gZm9wZW4obV9zdHJMb2dGaWxlLCAiYXQiKTsNCiNl bHNlDQoJY2hhciBzdHJbMTAyNF07DQoJbV9zdHJMb2dGaWxlLlRvQ2hhcigw LHN0ciwxMDI0KTsNCgl1bmxpbmsoc3RyKTsNCglmcCA9IGZvcGVuKHN0ciwg ImF0Iik7DQojZW5kaWYNCgkNCgltX25GaWxlU2l6ZSA9IDA7DQoJDQojaWZk ZWYgV0lOMzINCglsb2NrLlVubG9jaygpOw0KI2Vsc2UNCglwdGhyZWFkX211 dGV4X3VubG9jaygmbG9jayk7DQojZW5kaWYNCg0KfQ0KDQo= --0-1399895724-1034471978=:9095 Content-Type: text/plain; name="LogFile.h" Content-Description: LogFile.h Content-Disposition: inline; filename="LogFile.h" /************************************************************************* * * YahooPOPs! * * YahooPOPs! is an application that provides POP3 access to Yahoo! Mail. * You do not need to enable POP3 access with Yahoo! to use this program. * This program works within the license agreement of Yahoo! to provide * you with POP3 access. * * YahooPOPs! emulates a POP3 mail server and should work with most of the * email clients. Since YahooPOPs! is not a full-fledged POP3 mail server * you might find it not working with all mail clients. Do keep us informed * about such mail clients so that we can enhance YahooPOPs! * * Official Website: http://yahoopops.sourceforge.net * * Credits: * - YahooPOPs! has been inspired by FetchYahoo, a Perl based application * that works with mail clients supporting mbox'es (Netscape, Pine, etc.). * FetchYahoo is authored by Ravi Ramkissoon *------------------------------------------------------------------------- * * Name : LogFile.h * * Purpose : To maintain an activity log file * * Author : Anuj Seth * K.Shyam * * License : GNU Public License (Version 2 or later) * *------------------------------------------------------------------------- * * THIS SOFTWARE IS PROVIDED ``AS IS'' BY THE AUTHORS AND INDEPENDENT * CONTRIBUTORS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * *************************************************************************/ #ifndef _LOGFILE_H_ #define _LOGFILE_H_ #ifdef WIN32 #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 /* added by K.Shyam.we shall use Mstring on *ix systems */ #include "StdString.h" #else #include #include #include /* for the locks */ #include "MString.h" #include "Defines.h" typedef MString CStdString; #endif typedef enum { LOG_BASIC, LOG_ADVANCED } LOGTYPE; class LogFile { public: void Write(const LOGTYPE type, const char *format, ...); LogFile(const CStdString &filename = "yahoopops.log"); virtual ~LogFile(); protected: void Trim(); CStdString m_strLogFile; long m_nFileSize; FILE *fp; #ifdef WIN32 CCriticalSection lock; #else pthread_mutex_t lock; #endif }; #endif --0-1399895724-1034471978=:9095 Content-Type: text/plain; name="cygwin-yahoopops.txt" Content-Description: cygwin-yahoopops.txt Content-Disposition: inline; filename="cygwin-yahoopops.txt" cd ../common;make;cd ../unix make[1]: Entering directory `/home/andrew/yahoopops/yahoopops.sav/common' rm -f LogFile.o g++ -g -I. -I../unix -D_REENTRANT -c LogFile.cpp LogFile.cpp: In method `LogFile::LogFile(const MString & = "yahoopops.log")': LogFile.cpp:87: request for member `__m_reserved' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:88: request for member `__m_count' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:89: request for member `__m_owner' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:90: request for member `__m_kind' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:90: `PTHREAD_MUTEX_TIMED_NP' undeclared (first use this function) LogFile.cpp:90: (Each undeclared identifier is reported only once LogFile.cpp:90: for each function it appears in.) LogFile.cpp:91: request for member `__m_lock' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:92: request for member `__m_lock' in `LogFile::lock', which is of non-aggregate type `void *' LogFile.cpp:92: `__LT_SPINLOCK_INIT' undeclared (first use this function) make[1]: *** [LogFile.o] Error 1 make[1]: Leaving directory `/home/andrew/yahoopops/yahoopops.sav/common' cd ../common/HttpClient;make;cd ../../unix make[1]: Entering directory `/home/andrew/yahoopops/yahoopops.sav/common/HttpClient' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/home/andrew/yahoopops/yahoopops.sav/common/HttpClient' cd ../common/lib/re_lib;make;cd ../../../unix make[1]: Entering directory `/home/andrew/yahoopops/yahoopops.sav/common/lib/re_lib' ar q libre_lib.a regexp.o regsub.o regerror.o relib_enhance.o ../../vsscanf.o make[1]: Leaving directory `/home/andrew/yahoopops/yahoopops.sav/common/lib/re_lib' --0-1399895724-1034471978=:9095 Content-Type: text/plain; charset=us-ascii -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ --0-1399895724-1034471978=:9095--