Package: libboost1.74-dev
Version: 1.74.0-6
Severity: important
Dear Maintainer,
The Boost library is failing to detect the endianness of an s390x
system, at least when it is done throught the macros
BOOST_ENDIAN_LITTLE_BYTE and BOOST_ENDIAN_BIG_BYTE.
The s390x architecture is big-endian. However the following program
test.c:
///////// test.c ////////////////////////////////////////
#include <boost/predef/other/endian.h>
#if defined(BOOST_ENDIAN_LITTLE_BYTE)
According to Boost, this system is little-endian.
#elif defined(BOOST_ENDIAN_BIG_BYTE)
According to Boost, this system is big-endian.
#else
Boost cannot determine the endianness of this system.
#endif
////////////////////////////////////////////////////////
when fed into the C preprocessor on an s390x system, yields the
following:
$ cpp -E test.c | tail -n1
According to Boost, this system is little-endian.
This problem causes the release-critical Bug#977357 against the libgdf
package (FTBFS on s390x).
Best regards,
Rafael Laboissière