comparison configure.ac @ 13727:478efc95cb7a

Test unordered_map header location and namespace. * configure.ac: Add tests for <unordered_map> and <tr1/unordered_map>. Add test to determine whether std::tr1 namespace is required for unordered_map. * rand.cc: Use tests result.
author Michael Goffioul <michael.goffioul@gmail.com>
date Thu, 20 Oct 2011 12:51:31 +0100
parents 571557ddabb9
children 510237e67c2b 3c3b74677fa0
comparison
equal deleted inserted replaced
13726:5a2734f26dbc 13727:478efc95cb7a
1546 1546
1547 ### C++ headers 1547 ### C++ headers
1548 1548
1549 AC_LANG_PUSH(C++) 1549 AC_LANG_PUSH(C++)
1550 AC_CHECK_HEADERS(sstream) 1550 AC_CHECK_HEADERS(sstream)
1551 AC_CHECK_HEADERS([unordered_map], [], [
1552 AC_CHECK_HEADERS([tr1/unordered_map])])
1553 AC_MSG_CHECKING([whether unordered_map requires tr1 namespace])
1554 unordered_map_requires_tr1_namespace=no
1555 if test "$ac_cv_header_unordered_map" = "yes"; then
1556 ### Have <unordered_map>, but still have to check whether
1557 ### tr1 namespace is required (like MSVC, for instance).
1558 AC_COMPILE_IFELSE([
1559 AC_LANG_PROGRAM([
1560 #include <unordered_map>
1561 ], [
1562 std::unordered_map m;
1563 ])], [], [unordered_map_requires_tr1_namespace=yes])
1564 elif test "$ac_cv_header_tr1_unordered_map" = "yes"; then
1565 unordered_map_requires_tr1_namespace=yes
1566 fi
1567 if test "$unordered_map_requires_tr1_namespace" = "yes"; then
1568 AC_DEFINE(USE_UNORDERED_MAP_WITH_TR1, 1, [Defines whether unordered_map requires the use of tr1 namespace.])
1569 fi
1570 AC_MSG_RESULT([$unordered_map_requires_tr1_namespace])
1551 AC_LANG_POP(C++) 1571 AC_LANG_POP(C++)
1552 1572
1553 have_termios_h=no 1573 have_termios_h=no
1554 AC_CHECK_HEADERS(termios.h, have_termios_h=yes) 1574 AC_CHECK_HEADERS(termios.h, have_termios_h=yes)
1555 AC_CHECK_HEADERS(termio.h, have_termio_h=yes, have_termio_h=no) 1575 AC_CHECK_HEADERS(termio.h, have_termio_h=yes, have_termio_h=no)