From 430b33ab4111b56a8ef96440d8c352fcbcb5fb1b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christoph=20Gr=C3=BCninger?= <gruenich@dune-project.org>
Date: Fri, 10 Apr 2015 11:42:19 +0200
Subject: [PATCH] [CMake] To check for pthreads we need CheckForPThreads.c,
 too.

---
 cmake/modules/CheckForPthreads.c | 41 ++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 cmake/modules/CheckForPthreads.c

diff --git a/cmake/modules/CheckForPthreads.c b/cmake/modules/CheckForPthreads.c
new file mode 100644
index 000000000..681ef0a77
--- /dev/null
+++ b/cmake/modules/CheckForPthreads.c
@@ -0,0 +1,41 @@
+// file copied from CMake 3.2.1,
+// remove together with FindThreadsCMake31.cmake
+
+#include <stdio.h>
+#include <pthread.h>
+#include <unistd.h>
+
+void* runner(void*);
+
+int res = 0;
+#ifdef __CLASSIC_C__
+int main(){
+  int ac;
+  char*av[];
+#else
+int main(int ac, char*av[]){
+#endif
+  pthread_t tid[2];
+  pthread_create(&tid[0], 0, runner, (void*)1);
+  pthread_create(&tid[1], 0, runner, (void*)2);
+
+#if defined(__BEOS__) && !defined(__ZETA__) // (no usleep on BeOS 5.)
+  usleep(1); // for strange behavior on single-processor sun
+#endif
+
+  pthread_join(tid[0], 0);
+  pthread_join(tid[1], 0);
+  if(ac > 1000){return *av[0];}
+  return res;
+}
+
+void* runner(void* args)
+{
+  int cc;
+  for ( cc = 0; cc < 10; cc ++ )
+    {
+    printf("%d CC: %d\n", (int)args, cc);
+    }
+  res ++;
+  return 0;
+}
-- 
GitLab