mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
54 lines
1.2 KiB
CMake
54 lines
1.2 KiB
CMake
|
# - Check if for hash_map.
|
||
|
# CHECK_HASHMAP ()
|
||
|
#
|
||
|
|
||
|
include(CheckCXXSourceCompiles)
|
||
|
|
||
|
macro(CHECK_HASHMAP)
|
||
|
message(STATUS "Checking for C++ hash_map implementation...")
|
||
|
check_cxx_source_compiles("
|
||
|
#include <ext/hash_map>
|
||
|
int main() {
|
||
|
__gnu_cxx::hash_map<int, int> t;
|
||
|
}
|
||
|
"
|
||
|
HAVE_GNU_EXT_HASH_MAP
|
||
|
)
|
||
|
if(HAVE_GNU_EXT_HASH_MAP)
|
||
|
message(STATUS "C++ hash_map found in 'ext' dir in namespace __gnu_cxx::")
|
||
|
endif(HAVE_GNU_EXT_HASH_MAP)
|
||
|
|
||
|
check_cxx_source_compiles("
|
||
|
#include <ext/hash_map>
|
||
|
int main() {
|
||
|
std::hash_map<int, int> t;
|
||
|
}
|
||
|
"
|
||
|
HAVE_STD_EXT_HASH_MAP
|
||
|
)
|
||
|
if(HAVE_STD_EXT_HASH_MAP)
|
||
|
message(STATUS "C++ hash_map found in 'ext' dir in namespace std::")
|
||
|
endif(HAVE_STD_EXT_HASH_MAP)
|
||
|
|
||
|
check_cxx_source_compiles("
|
||
|
#include <hash_map>
|
||
|
int main() {
|
||
|
hash_map<int, int> t;
|
||
|
}
|
||
|
"
|
||
|
HAVE_GLOBAL_HASH_MAP
|
||
|
)
|
||
|
if(HAVE_GLOBAL_HASH_MAP)
|
||
|
message(STATUS "C++ hash_map found in global namespace")
|
||
|
endif(HAVE_GLOBAL_HASH_MAP)
|
||
|
|
||
|
if(NOT HAVE_GNU_EXT_HASH_MAP)
|
||
|
if(NOT HAVE_STD_EXT_HASH_MAP)
|
||
|
if(NOT HAVE_GLOBAL_HASH_MAP)
|
||
|
message(STATUS "C++ hash_map not found")
|
||
|
endif(NOT HAVE_GLOBAL_HASH_MAP)
|
||
|
endif(NOT HAVE_STD_EXT_HASH_MAP)
|
||
|
endif(NOT HAVE_GNU_EXT_HASH_MAP)
|
||
|
|
||
|
endmacro(CHECK_HASHMAP)
|