Updates for 0.44 release
[awesomized/libmemcached] / m4 / pandora_cstdint.m4
1 # We check two things: where the include file is for cstdint. We
2 # include AC_TRY_COMPILE for all the combinations we've seen in the
3 # wild. We define one of HAVE_CSTDINT or HAVE_TR1_CSTDINT or
4 # HAVE_BOOST_CSTDINT depending
5 # on location.
6
7 AC_DEFUN([PANDORA_CXX_CSTDINT],
8 [AC_MSG_CHECKING(the location of cstdint)
9 AC_LANG_PUSH(C++)
10 save_CXXFLAGS="${CXXFLAGS}"
11 CXXFLAGS="${CXX_STANDARD} ${CXXFLAGS}"
12 ac_cv_cxx_cstdint=""
13 for location in tr1/cstdint boost/cstdint cstdint; do
14 if test -z "$ac_cv_cxx_cstdint"; then
15 AC_TRY_COMPILE([#include <$location>],
16 [uint32_t t],
17 [ac_cv_cxx_cstdint="<$location>";])
18 fi
19 done
20 AC_LANG_POP()
21 CXXFLAGS="${save_CXXFLAGS}"
22 if test -n "$ac_cv_cxx_cstdint"; then
23 AC_MSG_RESULT([$ac_cv_cxx_cstdint])
24 else
25 AC_DEFINE([__STDC_CONSTANT_MACROS],[1],[Use STDC Constant Macros in C++])
26 AC_DEFINE([__STDC_FORMAT_MACROS],[1],[Use STDC Format Macros in C++])
27 ac_cv_cxx_cstdint="<stdint.h>"
28 AC_MSG_RESULT()
29 AC_MSG_WARN([Could not find a cstdint header.])
30 fi
31 AC_DEFINE_UNQUOTED(CSTDINT_H,$ac_cv_cxx_cstdint,
32 [the location of <cstdint>])
33 ])