Subject: Re: [boost] License of endian and limits in Boost detail
From: Rene Rivera (grafikrobot_at_[hidden])
Date: 2013-03-20 19:00:11
On Tue, Mar 19, 2013 at 1:04 PM, John Maddock <boost.regex_at_[hidden]>wrote:
>>> * Issue 6013. Patch for BSD based systems:
>>> #if defined(__NetBSD__) || defined(__FreeBSD__) || \
>>> defined(__OpenBSD__) || (__DragonFly__)
>>> # if defined(__OpenBSD__)
>>> # include <machine/endian.h>
>>> # else
>>> # include <sys/endian.h>
>>> # endif
>> OK.. I'll adjust the gnu libc include to add those.
And on Win32 use:
>>> (defined(_WIN32) && defined(__ARM__) && defined(_MSC_VER)) // ARM Windows
>>> CE don't define anything reasonably unique, but there are no big-endian
>>> Windows versions
>> Not sure what that means.. Especially in light that current ARM cpus are
> CPU's yes, but I believe Win32 on Arm is always LE:
* Issue 2762, check for:
>>> defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__) -> BE
>>> defined(__LITTLE_ENDIAN__) && !defined(__BIG_ENDIAN__) -> LE
>> Those are some weird looking checks :-\
> Indeed, I think you may have added them though https://svn.boost.org/trac/
> **boost/changeset/62252 <https://svn.boost.org/trac/boost/changeset/62252>?
* Issue 1922: Checking for defined(_BIG_ENDIAN) should be
>> defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN), similarly for
>> Not sure why that check is that way. Someone will have to explain further.
> The original issue has the explanation: https://svn.boost.org/trac/**
> boost/ticket/1922 <https://svn.boost.org/trac/boost/ticket/1922>
After thinking about that I realized that this is not a problem with the
new code as it relies on the _BYTE_ORDER comparison only.
I've also added a compatibility header
<boost/predef/detail/endian_compat.h> which defines the current set of
<boost/detail/endian.hpp> macros. For use in the eventual transition to
include from the old header, with some form of warning about it being
I would appreciate if more people test out that the endian, and other
detections, are working for them by running "b2 --verbose-test -a" in the
test directory. (After appropriate b2 & boost source tree setup).
-- -- -- Grafik - Don't Assume Anything -- Redshift Software, Inc. - http://redshift-software.com -- rrivera/acm.org - grafik/redshift-software.com -- 102708583/icq - grafikrobot/aim - grafikrobot/yahoo
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk