numpy/numpy — pull request #4850 by notsimon (2014-07-07 12:12:01+00:00)
Title: fix endianness detection with clang on osx 10.9

When compiling on OSX 10.9 using Apple's clang:

In file included from numpy/core/src/npymath/npy_math.c.src:56:
numpy/core/src/npymath/npy_math_private.h:78:3: error: typedef redefinition
with different types ('union ieee_double_shape_type' vs 'union
ieee_double_shape_type')

} ieee_double_shape_type;
^

numpy/core/src/npymath/npy_math_private.h:64:3: note: previous definition is
here

} ieee_double_shape_type;
^

1 error generated.

error: Command "clang -fno-strict-aliasing -fno-common -dynamic -arch i386
-arch x86_64 -I/usr/local/include -I/usr/local/opt/sqlite/include -DNDEBUG
-g -fwrapv -O3 -Wall -Wstrict-prototypes -Inumpy/core/include
-Inumpy/core/include/numpy -Inumpy/core/src/private -Inumpy/core/src
-Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray
-Inumpy/core/src/umath -Inumpy/core/src/npysort -Inumpy/core/include
-I/usr/local/Cellar/python/2.7.7_1/Frameworks/Python.framework/Versions/2.7/include/python2.7
-Inumpy/core/src/private -Inumpy/core/src/private -Inumpy/core/src/private
-Inumpy/core/src/private
-I/usr/local/Cellar/python/2.7.7_1/Frameworks/Python.framework/Versions/2.7/include/python2.7
-c numpy/core/src/npymath/npy_math.c -o
build/temp.macosx-10.9-intel-2.7/numpy/core/src/npymath/npy_math.o" failed
with exit status 1

This is because `/usr/include/i386/endian.h` (included by ``) defines BYTE_ORDER, LITTLE_ENDIAN and BIG_ENDIAN without leading underscores. I'm not sure why this wasn't fixed earlier.
The patch is coming from https://dev.lsstcorp.org/trac/ticket/1926.