diff --git a/include/boost/detail/endian.hpp b/include/boost/detail/endian.hpp index d9ab3a7..447efe0 100644 --- a/include/boost/detail/endian.hpp +++ b/include/boost/detail/endian.hpp @@ -43,6 +43,23 @@ # error Unknown machine endianness detected. # endif # define BOOST_BYTE_ORDER __BYTE_ORDER +#elif defined(__NetBSD__) || defined(__FreeBSD__) || \ + defined(__OpenBSD__) || (__DragonFly__) +# if defined(__OpenBSD__) +# include +# else +# include +# endif +# if (_BYTE_ORDER == _LITTLE_ENDIAN) +# define BOOST_LITTLE_ENDIAN +# elif (_BYTE_ORDER == _BIG_ENDIAN) +# define BOOST_BIG_ENDIAN +# elif (_BYTE_ORDER == _PDP_ENDIAN) +# define BOOST_PDP_ENDIAN +# else +# error Unknown machine endianness detected. +# endif +# define BOOST_BYTE_ORDER _BYTE_ORDER #elif defined(_BIG_ENDIAN) && !defined(_LITTLE_ENDIAN) || \ defined(__BIG_ENDIAN__) && !defined(__LITTLE_ENDIAN__) || \ defined(_STLP_BIG_ENDIAN) && !defined(_STLP_LITTLE_ENDIAN)