Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'python_ptask' into 'master'
[simgrid.git] / examples / sthread / CMakeLists.txt
1 set(THREADS_PREFER_PTHREAD_FLAG ON)
2 find_package(Threads REQUIRED)
3
4 # Regular pthread examples: test the interceptor of the pthread interface
5 #########################################################################
6
7 foreach(x
8         mutex-simple)
9
10   if("${CMAKE_SYSTEM}" MATCHES "Linux")
11     add_executable       (pthread-${x} EXCLUDE_FROM_ALL pthread-${x}.c)
12     set_target_properties(pthread-${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
13     target_link_libraries(pthread-${x} PRIVATE Threads::Threads)
14
15     add_dependencies(tests pthread-${x})
16     ADD_TESH_FACTORIES(pthread-${x} "^thread" --setenv LD_PRELOAD=${CMAKE_BINARY_DIR}/lib/libsthread.so --cd ${CMAKE_BINARY_DIR}/examples/sthread ${CMAKE_CURRENT_SOURCE_DIR}/pthread-${x}.tesh)
17   endif()
18
19   set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/pthread-${x}.tesh)
20   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/pthread-${x}.c)
21
22 endforeach()
23
24 # Regular sthread examples: test the internal interface for debugging purpose
25 #############################################################################
26
27 foreach(x
28         mutex-simple)
29   if("${CMAKE_SYSTEM}" MATCHES "Linux")
30     add_executable       (sthread-${x} EXCLUDE_FROM_ALL sthread-${x}.c)
31     set_target_properties(sthread-${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
32     target_link_libraries(sthread-${x} sthread)
33     set_property(TARGET sthread-${x} APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}")
34     add_dependencies(tests sthread-${x})
35   endif()
36
37 #  set(tesh_files    ${tesh_files}    ${CMAKE_CURRENT_SOURCE_DIR}/sthread-${x}.tesh)
38   set(examples_src  ${examples_src}  ${CMAKE_CURRENT_SOURCE_DIR}/sthread-${x}.c)
39 endforeach()
40
41
42 # Add all extra files to the archive
43 ####################################
44
45 set(tesh_files    ${tesh_files}     PARENT_SCOPE)
46 set(bin_files     ${bin_files}      PARENT_SCOPE)
47 set(examples_src  ${examples_src}   PARENT_SCOPE)
48 set(xml_files     ${xml_files}      PARENT_SCOPE)
49
50