51 lines
2.1 KiB
CMake
51 lines
2.1 KiB
CMake
# Copyright (c) 2019-present, Facebook, Inc.
|
|
#
|
|
# This source code is licensed under the license found in the
|
|
# LICENSE.txt file in the root directory of this source tree.
|
|
|
|
file(GLOB example-sources "*.cpp")
|
|
foreach(file-path ${example-sources})
|
|
string( REPLACE ".cpp" "" file-path-without-ext ${file-path} )
|
|
get_filename_component(file-name ${file-path-without-ext} NAME)
|
|
add_executable( ${file-name} ${file-path})
|
|
target_link_libraries(${file-name} PUBLIC unifex)
|
|
add_test(NAME "example-${file-name}" COMMAND ${file-name})
|
|
endforeach()
|
|
|
|
if(CXX_MEMORY_RESOURCE_HAVE_PMR)
|
|
target_link_libraries(any_unique PUBLIC std::memory_resource)
|
|
target_link_libraries(submit_allocator_customisation PUBLIC std::memory_resource)
|
|
endif()
|
|
|
|
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
|
file(GLOB linux-example-sources "linux/*.cpp")
|
|
foreach(file-path ${linux-example-sources})
|
|
string( REPLACE ".cpp" "" file-path-without-ext ${file-path} )
|
|
get_filename_component(file-name ${file-path-without-ext} NAME)
|
|
add_executable( ${file-name} ${file-path})
|
|
target_link_libraries(${file-name} PUBLIC unifex)
|
|
add_test(NAME "example-${file-name}" COMMAND ${file-name})
|
|
endforeach()
|
|
else()
|
|
if (NOT UNIFEX_NO_EPOLL)
|
|
file(GLOB epoll-example-sources "linux/*epoll_test.cpp")
|
|
foreach(file-path ${epoll-example-sources})
|
|
string( REPLACE ".cpp" "" file-path-without-ext ${file-path} )
|
|
get_filename_component(file-name ${file-path-without-ext} NAME)
|
|
add_executable( ${file-name} ${file-path})
|
|
target_link_libraries(${file-name} PUBLIC unifex)
|
|
add_test(NAME "example-${file-name}" COMMAND ${file-name})
|
|
endforeach()
|
|
endif()
|
|
if (NOT UNIFEX_NO_LIBURING)
|
|
file(GLOB liburing-example-sources "linux/*uring_test.cpp")
|
|
foreach(file-path ${liburing-example-sources})
|
|
string( REPLACE ".cpp" "" file-path-without-ext ${file-path} )
|
|
get_filename_component(file-name ${file-path-without-ext} NAME)
|
|
add_executable( ${file-name} ${file-path})
|
|
target_link_libraries(${file-name} PUBLIC unifex)
|
|
add_test(NAME "example-${file-name}" COMMAND ${file-name})
|
|
endforeach()
|
|
endif()
|
|
endif()
|