Undo removal of the runtime libraries. While this may have been a bit
[oota-llvm.git] / autoconf / m4 / cxx_hash_set.m4
1 # Check for hash_set extension.  This is modified from
2 # http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_have_ext_hash_set.html
3 AC_DEFUN([AC_CXX_HAVE_STD_EXT_HASH_SET],
4 [AC_CACHE_CHECK([whether the compiler has <ext/hash_set> defining template class std::hash_set],
5  ac_cv_cxx_have_std_ext_hash_set,
6  [AC_REQUIRE([AC_CXX_NAMESPACES])
7   AC_LANG_PUSH([C++])
8   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <ext/hash_set>
9 #ifdef HAVE_NAMESPACES
10 using namespace std;
11 #endif]], [[hash_set<int> t; ]])],[ac_cv_cxx_have_std_ext_hash_set=yes],[ac_cv_cxx_have_std_ext_hash_set=no])
12   AC_LANG_POP([C++])])
13  if test "$ac_cv_cxx_have_std_ext_hash_set" = yes
14  then
15    AC_DEFINE(HAVE_STD_EXT_HASH_SET,1,[Have hash_set in std namespace])
16  else
17    AC_DEFINE(HAVE_STD_EXT_HASH_SET,0,[Does not have hash_set in std namespace])
18  fi
19  ])
20
21 AC_DEFUN([AC_CXX_HAVE_GNU_EXT_HASH_SET],
22 [AC_CACHE_CHECK(
23  [whether the compiler has <ext/hash_set> defining template class __gnu_cxx::hash_set],
24  ac_cv_cxx_have_gnu_ext_hash_set,
25  [AC_REQUIRE([AC_CXX_NAMESPACES])
26   AC_LANG_PUSH([C++])
27   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <ext/hash_set>
28 #ifdef HAVE_NAMESPACES
29 using namespace __gnu_cxx;
30 #endif]], [[hash_set<int> t; ]])],[ac_cv_cxx_have_gnu_ext_hash_set=yes],[ac_cv_cxx_have_gnu_ext_hash_set=no])
31   AC_LANG_POP([C++])])
32  if test "$ac_cv_cxx_have_gnu_ext_hash_set" = yes
33  then
34    AC_DEFINE(HAVE_GNU_EXT_HASH_SET,1,[Have hash_set in gnu namespace])
35  else
36    AC_DEFINE(HAVE_GNU_EXT_HASH_SET,0,[Does not have hash_set in gnu namespace])
37  fi
38  ])
39
40 AC_DEFUN([AC_CXX_HAVE_GLOBAL_HASH_SET],
41 [AC_CACHE_CHECK([whether the compiler has <hash_set> defining template class ::hash_set],
42  ac_cv_cxx_have_global_hash_set,
43  [AC_REQUIRE([AC_CXX_NAMESPACES])
44   AC_LANG_PUSH([C++])
45   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <hash_set>]], [[hash_set<int> t; return 0;]])],[ac_cv_cxx_have_global_hash_set=yes],[ac_cv_cxx_have_global_hash_set=no])
46   AC_LANG_POP([C++])])
47  if test "$ac_cv_cxx_have_global_hash_set" = yes
48  then
49    AC_DEFINE(HAVE_GLOBAL_HASH_SET,1,[Have hash_set in global namespace])
50  else
51    AC_DEFINE(HAVE_GLOBAL_HASH_SET,0,[Does not have hash_set in global namespace])
52  fi
53  ])
54
55 AC_DEFUN([AC_CXX_HAVE_HASH_SET],
56 [AC_CXX_HAVE_STD_EXT_HASH_SET
57  AC_CXX_HAVE_GNU_EXT_HASH_SET
58  AC_CXX_HAVE_GLOBAL_HASH_SET])
59
60