X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-6.8 required=5.0	tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD
X-Spam-Check-By: sourceware.org
Message-ID: <4C654584.9090305@redhat.com>
Date: Fri, 13 Aug 2010 07:15:48 -0600
From: Eric Blake <eblake@redhat.com>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.7) Gecko/20100720 Fedora/3.1.1-1.fc13 Lightning/1.0b2pre Mnenhy/0.8.3 Thunderbird/3.1.1
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: diff /usr/include/endian.orig.h /usr/include/endian.h > endian.h.diff
References: <AANLkTimQfeALLK=x_UvJYLjusd6ygCtjUKDrdA91e7Ej@mail.gmail.com>	<20100812225838.GB15724@ednor.casa.cgf.cx>	<4C647D32.1090907@redhat.com>	<AANLkTikCc0gdoVTWfhp=xoNY_m=Up4XQiApLmm9K9da+@mail.gmail.com> <AANLkTin_VGPC-qfVROBhyFqcU0DBD5B8RAxLCF9RsNDC@mail.gmail.com>
In-Reply-To: <AANLkTin_VGPC-qfVROBhyFqcU0DBD5B8RAxLCF9RsNDC@mail.gmail.com>
Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------enigEB10707FFD1EE312EA3D1213"
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

--------------enigEB10707FFD1EE312EA3D1213
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On 08/12/2010 06:35 PM, Pedro Izecksohn wrote:
> --- I wrote:
>> Defines macros for to convert the endianness of 16, 32 and 64 bits
>> integer types.
>>
>> diff -c /usr/include/endian.orig.h /usr/include/endian.h
>=20
> My previous diff is wrong. The right one follows:

OK, that documents _what_ your changes are, but not _why_ you are making
them.  Mentioning that you are adding macros that are present in a Linux
installation's endian.h would have been nice (for example, that you made
your changes by reading 'man htobe16' on Linux).

> + #ifdef _BSD_SOURCE
> +
> + #include <byteswap.h>
> +
> + #if __BYTE_ORDER =3D=3D __LITTLE_ENDIAN

Umm - did you copy straight from glibc's endian.h?  That's a no-no;
cygwin generally doesn't want to borrow LGPL sources to avoid any
licensing questions (borrowing from BSD is okay, on the other hand).
You would have to implement things from scratch from a documentation
page, or copy from a less-questionable source, rather than using glibc's
implementation.

I'm stopping right here, so I don't risk tainting myself.  How about you
instead describe which macros you are missing, so someone can do a
clean-room implementation of those macros.

--=20
Eric Blake   eblake@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org


--------------enigEB10707FFD1EE312EA3D1213
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
Comment: Public key at http://people.redhat.com/eblake/eblake.gpg
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/

iQEcBAEBCAAGBQJMZUWJAAoJEKeha0olJ0NqXVQH/RHcqGGYoU40R1Ba6MEkDf2D
zpLWuab9nWrLc9/cSrOBFQwN0Z9Xv1WFx+0xd7okm+Q2VI15TZfEjsBxItgcrf5T
3ASvit/Ns3YhOku/GEQqXbCMWrISdd7zbqcQUO+lBoDMT01awZpcsOxWbe04ohtu
DVxgnuPM4XAx98pMPpcPZCUwwjEWk+v34oO8R2//9HWccxOcyXxkT7GZiQXCKFtd
sC4c9oOfz2Mmx0El83v4jHsv1XRzwOgCU6YP69rDr85lR+atfopxthG8N+WKqjyv
kOn6mioAUftEFWBTOpWyKTPuRCPVhCSdj4BzJHH11EYNHHAk3+DIIiOLgQdKX7w=
=Id8i
-----END PGP SIGNATURE-----

--------------enigEB10707FFD1EE312EA3D1213--
