summaryrefslogtreecommitdiff
path: root/src/caffe/test/CMakeLists.txt
blob: f64d5da0c8d71016d92a265ca0698e148f3ff88f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
#
#
#    All test files' names must begin with a "test_" prefix
#
#
cmake_minimum_required(VERSION 2.8)
project( Test )

#    Set CUDA Device number and CMAKE_SOURCE_DIR
add_definitions(-DCMAKE_BUILD)

#    Generate config files
set(IN_EXT .in)
set(GEN_EXT .gen.cmake)
set(TEST_DEFINES_FILE ${CMAKE_CURRENT_SOURCE_DIR}/cmake_test_defines.hpp)
set(TEST_DATA_FILE ${CMAKE_CURRENT_SOURCE_DIR}/test_data/sample_data_list.txt)

set(IN_FILES 
    ${TEST_DEFINES_FILE}
    ${TEST_DATA_FILE}
)

foreach(in_file ${IN_FILES})
    
    configure_file(
        ${in_file}${IN_EXT}
        ${in_file}${GEN_EXT}
    )
    
endforeach()       


#configure_file(
#    ${CMAKE_CURRENT_SOURCE_DIR}/cmake_test_defines.hpp.in
#    ${CMAKE_CURRENT_SOURCE_DIR}/cmake_test_defines.hpp.gen.cmake
#)
#
#configure_file(
#    ${CMAKE_CURRENT_SOURCE_DIR}/test_data/sample_data_list.txt.in
#    ${CMAKE_CURRENT_SOURCE_DIR}/test_data/sample_data_list.txt.gen.cmake
#)

include_directories(
        ${Caffe_SOURCE_DIR}
        ${CMAKE_CURRENT_SOURCE_DIR}
)

set(TEST_MAIN test_caffe_main.cpp)
list(REMOVE_ITEM TEST_SOURCES ${TEST_MAIN})


foreach(source ${TEST_SOURCES})

    get_filename_component(name ${source} NAME_WE)
    add_executable(${name}.test ${TEST_MAIN} ${source} ../blob.cpp)
    target_link_libraries(${name}.test gtest caffe)
    add_test(${name} ${name}.test)

    #    output dir
    set_target_properties(${name}.test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/test)

endforeach()

add_executable(test_all.test ${TEST_SOURCES} ${TEST_MAIN})
target_link_libraries(test_all.test gtest caffe)

#    output dir
set_target_properties(test_all.test PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/test)