summaryrefslogtreecommitdiff
path: root/cmake/modules/CheckCxxHashset.cmake
diff options
context:
space:
mode:
authorOscar Fuentes <ofv@wanadoo.es>2008-09-22 01:08:49 +0000
committerOscar Fuentes <ofv@wanadoo.es>2008-09-22 01:08:49 +0000
commit3d01fc7de86c75926e4e5ac7cc49f0116018893d (patch)
tree2ea49e2f904dd479a4b941454b776dee762921dd /cmake/modules/CheckCxxHashset.cmake
parentcd4c73aa708d9ecf5d7e0a711dbf359d22b6dd3a (diff)
downloadllvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.gz
llvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.bz2
llvm-3d01fc7de86c75926e4e5ac7cc49f0116018893d.tar.xz
Initial support for the CMake build system.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'cmake/modules/CheckCxxHashset.cmake')
-rwxr-xr-xcmake/modules/CheckCxxHashset.cmake52
1 files changed, 52 insertions, 0 deletions
diff --git a/cmake/modules/CheckCxxHashset.cmake b/cmake/modules/CheckCxxHashset.cmake
new file mode 100755
index 0000000000..940c388127
--- /dev/null
+++ b/cmake/modules/CheckCxxHashset.cmake
@@ -0,0 +1,52 @@
+# - Check if for hash_set.
+# CHECK_HASHSET ()
+#
+
+include(CheckCXXSourceCompiles)
+
+macro(CHECK_HASHSET)
+ message(STATUS "Checking for C++ hash_set implementation...")
+ check_cxx_source_compiles("
+ #include <ext/hash_set>
+ int main() {
+ __gnu_cxx::hash_set<int> t;
+ }
+"
+ HAVE_GNU_EXT_HASH_SET
+ )
+ if(HAVE_GNU_EXT_HASH_SET)
+ message(STATUS "C++ hash_set found in 'ext' dir in namespace __gnu_cxx::")
+ endif(HAVE_GNU_EXT_HASH_SET)
+
+ check_cxx_source_compiles("
+ #include <ext/hash_set>
+ int main() {
+ std::hash_set<int> t;
+ }
+"
+ HAVE_STD_EXT_HASH_SET
+ )
+ if(HAVE_STD_EXT_HASH_SET)
+ message(STATUS "C++ hash_set found in 'ext' dir in namespace std::")
+ endif(HAVE_STD_EXT_HASH_SET)
+
+ check_cxx_source_compiles("
+ #include <hash_set>
+ int main() {
+ hash_set<int> t;
+ }
+"
+ HAVE_GLOBAL_HASH_SET
+ )
+ if(HAVE_GLOBAL_HASH_SET)
+ message(STATUS "C++ hash_set found in global namespace")
+ endif(HAVE_GLOBAL_HASH_SET)
+
+ if(NOT HAVE_GNU_EXT_HASH_SET)
+ if(NOT HAVE_STD_EXT_HASH_SET)
+ if(NOT HAVE_GLOBAL_HASH_SET)
+ message(STATUS "C++ hash_set not found")
+ endif(NOT HAVE_GLOBAL_HASH_SET)
+ endif(NOT HAVE_STD_EXT_HASH_SET)
+ endif(NOT HAVE_GNU_EXT_HASH_SET)
+endmacro(CHECK_HASHSET)