File: TestRecursiveMutex.cmake

package info (click to toggle)
swi-prolog 9.0.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 82,408 kB
  • sloc: ansic: 387,503; perl: 359,326; cpp: 6,613; lisp: 6,247; java: 5,540; sh: 3,147; javascript: 2,668; python: 1,900; ruby: 1,594; yacc: 845; makefile: 428; xml: 317; sed: 12; sql: 6
file content (24 lines) | stat: -rw-r--r-- 830 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
if(NOT DEFINED RECURSIVE_MUTEXES)

message("-- Checking for recursive mutex support")
check_c_source_compiles(
    "#include <pthread.h>\nint main() { int i = PTHREAD_MUTEX_RECURSIVE; return 0;}"
    HAVE_PTHREAD_MUTEX_RECURSIVE)
if(HAVE_PTHREAD_MUTEX_RECURSIVE)
  set(RECURSIVE_MUTEXES 1 CACHE INTERNAL "Supports recursive mutexes")
else()
  check_c_source_compiles(
      "#include <pthread.h>\nint main() { int i = PTHREAD_MUTEX_RECURSIVE_NP; return 0;}"
      HAVE_PTHREAD_MUTEX_RECURSIVE_NP)
  if(HAVE_PTHREAD_MUTEX_RECURSIVE_NP)
    set(RECURSIVE_MUTEXES 1 CACHE INTERNAL "Supports recursive mutexes")
  endif()
endif()

if(RECURSIVE_MUTEXES)
  message("-- Checking for recursive mutex support -- found")
else()
  message("-- Checking for recursive mutex support -- not found")
endif()

endif(NOT DEFINED RECURSIVE_MUTEXES)