delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT sources DOT redhat DOT com> |
List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT sources DOT redhat DOT com> |
List-Help: | <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs> |
Sender: | cygwin-owner AT sources DOT redhat DOT com |
Delivered-To: | mailing list cygwin AT sources DOT redhat DOT com |
Message-ID: | <057601c0157c$15a2e960$4f6c8ad1@intel9txl52pzr> |
From: | "Tim Prince" <tprince AT computer DOT org> |
To: | "Shell M. Shrader" <shell AT shellware DOT com>, <cygwin AT sources DOT redhat DOT com> |
References: | <001601c01574$d6afd0d0$92d698d1 AT hotrod> |
Subject: | Re: RESOLVED: GCC 2.95.2 make problems under Cygwin 1.1.4 |
Date: | Sun, 3 Sep 2000 00:53:38 -0700 |
MIME-Version: | 1.0 |
X-Priority: | 3 |
X-MSMail-Priority: | Normal |
X-Mailer: | Microsoft Outlook Express 5.00.2919.6700 |
X-MimeOLE: | Produced By Microsoft MimeOLE V5.00.2919.6700 |
This bug stemmed from a change in the Windows headers. Mumit Khan arrived at a fix for this which worked on all the varieties of Windows over a year ago and it has been in the 2.96 snapshots, as well as the cygwin patches to 2.95, ever since. Various versions of treating LARGE_INTEGER as a long long are successful. Another possible variation is to use the W9x version (QueryPerformance calls) under NT and 2K. That is about the only practical solution on those installations where the resolution of the NT timer is not as good as the usual 0.01 second. No way is known to detect such installations other than to test the timer resolution at run time. The stuff which is in the snapshots already stretches usual gcc policy by a wide margin. But, many of us want to make .exe files which will run on either W9x or NT/2K. Even if the C people don't care whether clock() is broken on 9x. ----- Original Message ----- From: "Shell M. Shrader" <shell AT shellware DOT com> To: <cygwin AT sources DOT redhat DOT com> Sent: Sunday, September 03, 2000 12:01 AM Subject: RESOLVED: GCC 2.95.2 make problems under Cygwin 1.1.4 I was able to finally get GCC 2.95.2 make(ed) and installed under the Cygwin Net release on my Win2k machine but it wasn't without dificulties. I had to modify two routines to get the make to succeed: etime_.c and dtime_.c etime_.c & dtime_.c both reference the HighPart and LowPart properties of the LONG_INTEGER datatype. However, they nor any of their included modules #include winnt.h which is the only win32 header I could locate that defines this structure. In both routines the HighPart and LowPart properties were being used to facilitate a hack for non NT win32 systems--- ... LARGE_INTEGER freq; ... /* We need to use this hack on non-NT platforms, where the first call returns 0.0 and subsequent ones return the correct value. */ if (win32_platform != VER_PLATFORM_WIN32_NT) { ... clock_freq = ((unsigned long long) freq.HighPart << 32) + ((unsigned) freq.LowPart); ... count = ((unsigned long long) counter_val.HighPart << 32) + (unsigned) counter_val.LowPart; ... I opted to comment out the references to HighPart and LowPart and simply return a value of 1 in both routines because I'm on an NT system and could care less of the impact to non-NT systems as this is a localized installation. I suspect the proper thing to do would be to #include winnt.h or track down the source of LARGE_INTEGER without including winnt.h but I was fearful that I would cause additional conflicts and I'm tired of messin' with the make. Previously I had tried to use the GCC Cygwin patches to take care of the compiler warnings but gave up as they introduced incoherent FATALs within my Stage 1 build. Guess I'll soon find out the impact of the multple compiler warnings I got. Am I the only W2K gcc-2.95.2 / Cygwin 1.1.4 user out there to have this problem? I find it very hard to believe that I'm the first W2K gcc-2.95.2 / Cygwin 1.1.4 user. Shell -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |