Update CMake environment and add new tool
[umurmur.git] / cmake / Modules / SelectRTBackend.cmake
diff --git a/cmake/Modules/SelectRTBackend.cmake b/cmake/Modules/SelectRTBackend.cmake
new file mode 100644 (file)
index 0000000..0f2b07e
--- /dev/null
@@ -0,0 +1,15 @@
+function(SelectRTBackend)
+  check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME_RT)
+
+  if(NOT HAVE_CLOCK_GETTIME_RT)
+    check_function_exists(clock_gettime HAVE_CLOCK_GETTIME)
+    if(NOT HAVE_CLOCK_GETTIME)
+      check_library_exists(c clock_get_time "mach/time.h" HAVE_CLOCK_GET_TIME)
+      if(NOT HAVE_CLOCK_GET_TIME)
+        message(FATAL_ERROR "Didn't find clock_gettime() or clock_get_time()!")
+      endif()
+    endif()
+  else()
+    set(LIBRT rt PARENT_SCOPE)
+  endif()
+endfunction()