dnl Stolen from VideoLAN Client, http://www.videolan.org/ dnl dnl Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling dnl dnl We give the user the opportunity to specify dnl --with-words=big or --with-words=little ; otherwise, try to guess dnl AC_ARG_WITH(words, AS_HELP_STRING([--with-words=endianness],[set endianness (big or little)])) case "${with_words}" in big) ac_cv_c_bigendian=yes ;; little) ac_cv_c_bigendian=no ;; *) dnl Try to guess endianness by matching patterns on a compiled dnl binary, by looking for an ASCII or EBCDIC string AC_CACHE_CHECK([whether the byte order is big-endian], [ac_cv_c_bigendian], [ac_cv_c_bigendian="unknown" [cat >conftest.c <>config.log 2>&1 \ && test -f conftest.o then if test "`"$STRINGS" conftest.o | grep BIGenDianSyS`" then ac_cv_c_bigendian="yes" fi if test "`"$STRINGS" conftest.o | grep LiTTleEnDian`" then ac_cv_c_bigendian="no" fi fi fi ]) if test "${ac_cv_c_bigendian}" = "unknown" then AC_MSG_ERROR([Could not guess endianness, please use --with-words]) fi ;; esac dnl Now we know what to use for endianness, just put it in the header if test "${ac_cv_c_bigendian}" = "yes" then AC_DEFINE(WORDS_BIGENDIAN, 1, big endian system) fi