delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2008/08/05/22:31:41

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
X-Authority-Analysis: v=1.0 c=1 a=Z2H-Mt1hWOEA:10 a=732cARK4H4UA:10 a=xe8BsctaAAAA:8 a=TbBk6Z-J0oOooAIqb20A:9 a=vYzm5el1eCrDvJCZ9ydp0HZfe84A:4 a=eDFNAWYWrCwA:10 a=rPt6xJ-oxjAA:10
Message-ID: <48990CCF.1050201@byu.net>
Date: Tue, 05 Aug 2008 20:30:39 -0600
From: Eric Blake <ebb9 AT byu DOT net>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.16) Gecko/20080708 Thunderbird/2.0.0.16 Mnenhy/0.7.5.666
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: compilation - cygwin -mno-cygwin-flag
References: <1217978691 DOT 14700 DOT ezmlm AT cygwin DOT com> <COL101-W78FF17A5ECE7391818598E67A0 AT phx DOT gbl>
In-Reply-To: <COL101-W78FF17A5ECE7391818598E67A0@phx.gbl>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

According to Jay on 8/5/2008 8:08 PM:
|
| Can the ABIs be unifed?

No more than the Linux and Solaris ABI can be unified.  Think of cygwin
and -mno-cygwin as two entirely different operating systems, and you won't
be too far off.

|   line up struct stat, or make thin wrappers?
|   line up errno.h?
|   lineup lseek/fseek flags? (probably already the case)

Nowhere even near the case.  Microsoft and newlib are VASTLY different
libc implementations, coming from completely independent heritages.  You
simply cannot mix them and expect reasonable results.

|   keep FILE* opaque?

And how is your code supposed to know when it is calling the different
libc versions, which then dereference the opaque structure?  They simply
aren't compatible.

|
| ABI multiplicity bugs me..

This is not ABI multiplicity - it is two entirely different porting
platforms, that happen to run on the same hardware.  Using -mno-cygwin is
in essence a statement that you are cross-compiling; running the compiler
on one platform but generating object code for another.

- --
Don't work too hard, make some time for fun as well!

Eric Blake             ebb9 AT byu DOT net
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkiZDM8ACgkQ84KuGfSFAYAFMACaAxiJ88ZrjvIzCuZSZH+1l4zt
lJ4AoKabxFjxTe5R7QlGWIapTSCWTj04
=rJC5
-----END PGP SIGNATURE-----

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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