CMakeLists.txt 1.18 KB
Newer Older
1
include_directories(BEFORE
Chao Liu's avatar
Chao Liu committed
2
3
    ${PROJECT_SOURCE_DIR}/include
    ${PROJECT_SOURCE_DIR}/library/include
4
5
)

Chao Liu's avatar
Chao Liu committed
6
add_custom_target(examples)
7

Anthony Chang's avatar
Anthony Chang committed
8
function(add_example_executable EXAMPLE_NAME FILE_NAME)
Chao Liu's avatar
Chao Liu committed
9
    message("adding example ${EXAMPLE_NAME}")
Anthony Chang's avatar
Anthony Chang committed
10
    add_executable(${EXAMPLE_NAME} ${FILE_NAME})
11
    target_link_libraries(${EXAMPLE_NAME} PRIVATE utility)
Anthony Chang's avatar
Anthony Chang committed
12
13
14
    add_test(NAME ${EXAMPLE_NAME} COMMAND $<TARGET_FILE:${EXAMPLE_NAME}> ${ARGN})
    add_dependencies(examples ${EXAMPLE_NAME})
    add_dependencies(check ${EXAMPLE_NAME})
15
    rocm_install(TARGETS ${EXAMPLE_NAME} COMPONENT examples)
Anthony Chang's avatar
Anthony Chang committed
16
17
18
19
20
endfunction(add_example_executable EXAMPLE_NAME)

function(add_example_executable_no_testing EXAMPLE_NAME FILE_NAME)
    message("adding example ${EXAMPLE_NAME}")
    add_executable(${EXAMPLE_NAME} ${FILE_NAME})
21
    target_link_libraries(${EXAMPLE_NAME} PRIVATE utility)
Chao Liu's avatar
Chao Liu committed
22
    add_dependencies(examples ${EXAMPLE_NAME})
23
    rocm_install(TARGETS ${EXAMPLE_NAME} COMPONENT examples)
rocking5566's avatar
rocking5566 committed
24
endfunction(add_example_executable_no_testing EXAMPLE_NAME)
25

Shaojie WANG's avatar
Shaojie WANG committed
26
27
28
29
30
31
32
# add all example subdir
file(GLOB dir_list LIST_DIRECTORIES true *)
FOREACH(subdir ${dir_list})
    IF(IS_DIRECTORY "${subdir}")
        add_subdirectory(${subdir})
    ENDIF()
ENDFOREACH()