File: FindGoogleHash.cmake

package info (click to toggle)
eigen3 3.4.0-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 20,492 kB
  • sloc: cpp: 151,572; ansic: 75,396; fortran: 24,137; sh: 971; python: 244; javascript: 205; makefile: 42
file content (23 lines) | stat: -rw-r--r-- 846 bytes parent folder | download | duplicates (14)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

if (GOOGLEHASH_INCLUDES AND GOOGLEHASH_LIBRARIES)
  set(GOOGLEHASH_FIND_QUIETLY TRUE)
endif ()

find_path(GOOGLEHASH_INCLUDES
  NAMES
  google/dense_hash_map
  PATHS
  ${INCLUDE_INSTALL_DIR}
)

if(GOOGLEHASH_INCLUDES)
  # let's make sure it compiles with the current compiler
  file(WRITE ${CMAKE_BINARY_DIR}/googlehash_test.cpp
  "#include <google/sparse_hash_map>\n#include <google/dense_hash_map>\nint main(int argc, char** argv) { google::dense_hash_map<int,float> a; google::sparse_hash_map<int,float> b; return 0;}\n")
  try_compile(GOOGLEHASH_COMPILE ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/googlehash_test.cpp OUTPUT_VARIABLE GOOGLEHASH_COMPILE_RESULT)
endif()

include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(GoogleHash DEFAULT_MSG GOOGLEHASH_INCLUDES GOOGLEHASH_COMPILE)

mark_as_advanced(GOOGLEHASH_INCLUDES)