delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2001/02/05/20:10:11

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
X-Apparently-From: <earnie?boyd AT yahoo DOT com>
Message-ID: <3A7F4BCF.FF2DA6C0@yahoo.com>
Date: Mon, 05 Feb 2001 19:56:48 -0500
From: Earnie Boyd <earnie_boyd AT yahoo DOT com>
Reply-To: cygwin AT cygwin DOT com
X-Mailer: Mozilla 4.76 [en] (X11; U; Linux 2.2.171 i686)
X-Accept-Language: en
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: specs file for gcc-2.95.2-7 and -mno-cygwin
References: <Pine DOT GSO DOT 4 DOT 31 DOT 0102051847570 DOT 362-100000 AT auk DOT stats> <20010205144807 DOT A12236 AT redhat DOT com>

Christopher Faylor wrote:

> On Mon, Feb 05, 2001 at 06:55:13PM +0000, Prof Brian D Ripley wrote:
> >I believe there are several problems in using gcc-2.95.2-7.tar.gz with
> >mingw-20010130-1.tar.gz (the latest on the mirror I use), and I will append
> >a patch to the specs file which addresses these.
> >
> >1) mingw-20010130-1.tar.gz unpacks into /usr/include/mingw32, but the
> >   specs file has `mingw' in several places.  I've assumed the specs file
> >   is the wrong one here.
>
> The only ming32 that I see in mingw-20010130-1.tar.gz is libmingw32.a.
> Earnie, do you want to change the name of this file?
>

No.  In this case it implies 32bit vs 64bit.  I want the clarafication because the headers have begun to see the 64bit entries.

>
> >2) The mingw(32) files are selected by -idirafter, and so come after
> >   those in /usr/lib/gcc-lib/i686-pc-cygwin/2.95.2-7/include in the
> >   system include path.  This is wrong at least in the case of
> >   float.h, where the mingw version must take precedence.  Maybe
> >   -isystem /usr/local/include/mingw was just a mistake.
>
> Nope.  The isystem was just to get the include order correct.  It is
> a recent addition.
>
> >3) The -mno-cygwin build is now targeted at msvcrt.dll (good).
> >   However, the mingw header files default to target crtdll.dll
> >   unless __MSVCRT__ is set, and it has not been.
>
> I don't know how this happened but Earnie did supply me with patches
> that did this.  My cross-compilation environment somehow screwed up.
>
> If you remove the specs file and do a 'gcc -dumpspecs', you'll see a
> different configuration.
>
> >4) `*mingw_include_path: i686-pc-cygwin'  seems out of date : the
> >   mingw include files are no longer installed there.
>
> I'm not sure how this is even used.  Can someone enlighten me?
>

Mumit?  I wondered about this too.  But, you just don't fix what isn't broken.

>
> >5) I rather suspect from the header files that __MINGW32__ should be
> >   0.3 not 0.2.
>
> That was a fallout of 3) above.

And it should actually be 0.4.

>
> >
> >I usually use the real mingw compilers to compile the GNU R project
> >(http://www.r-project.org) but a user complained that it no longer
> >compiled under cygwin, which led me to investigate this.
> >
> >I have not attempted to sort out the g++ header file paths, as
> >without a mingw version of libstdc++ (AFAICS) there is little
> >mileage in compiling C++ under -mno-cygwin, and I don't have need of it.
>
> Could you possibly break out this diff into separate lines so that I can
> see what's changed?
>

Yes, please.

>
> cgf

See note below.

>
> >diff -u follows:
> >--- specs.orig Tue Jan 30 21:38:32 2001
> >+++ specs      Sat Feb  3 18:22:32 2001
> >@@ -5,7 +5,7 @@
> >
> >
> > *cpp:
> >--remap %(cpp_cpu) %{posix:-D_POSIX_SOURCE}   %{!mno-cygwin:-D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix     -isystem /usr/local/include     -idirafter /usr/include}   %{mno-win32: %{mno-cygwin: %emno-cygwin and mno-win32 are not compatible}}   %{mno-cygwin:-DWIN32 -D__WIN32__ -D__MINGW32__=0.2     %{mthreads:-D_MT}     -isystem /usr/local/include/mingw     -idirafter /usr/include/mingw     -iwithprefixbefore ../../../../mingw/include/g++-3     -iwithprefixbefore ../../../../mingw/include     -iwithprefixbefore ../../../../mingw32/include/g++-3     -iwithprefixbefore ../../../../mingw32/include }    %{mwin32:-DWIN32 -D_WIN32 -D__WIN32 -D__WIN32__ -DWINNT      -idirafter /usr/include/w32api}
> >+-remap %(cpp_cpu) %{posix:-D_POSIX_SOURCE}   %{!mno-cygwin:-D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix     -isystem /usr/local/include     -idirafter /usr/include}   %{mno-win32: %{mno-cygwin: %emno-cygwin and mno-win32 are not compatible}}   %{mno-cygwin:-DWIN32 -D__WIN32__ -D__MINGW32__=0.3  -D__MSVCRT__   %{mthreads:-D_MT}     -isystem /usr/include/mingw32     -idirafter /usr/include/mingw32     -iwithprefixbefore ../../../../mingw32/include/g++-3     -iwithprefixbefore ../../../../mingw32/include     -iwithprefixbefore ../../../../mingw32/include/g++-3     -iwithprefixbefore ../../../../mingw32/include }    %{mwin32:-DWIN32 -D_WIN32 -D__WIN32 -D__WIN32__ -DWINNT      -idirafter /usr/include/w32api}

Chris, the `-dirafter /usr/include/w32api' needs to be moved outside of the '}' so that Cygwin can pick this up too.

Earnie.


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


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