summaryrefslogtreecommitdiff
path: root/test/extension/CMakeLists.txt
blob: a52a92c6d762f43dfaba13975e3441988674a3ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
file(GLOB_RECURSE ALL_SQLITE_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.sql)
file(GLOB_RECURSE ALL_CPP_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)

foreach(module ${ALL_CPP_FILES})
    get_filename_component(stem ${module} NAME_WE)
    add_library(boost_sqlite_test_extension_${stem} SHARED ${module})
    target_link_libraries(boost_sqlite_test_extension_${stem} PUBLIC Boost::sqlite_ext)
    target_include_directories(boost_sqlite_test_extension_${stem} PUBLIC ../../include)
    set_property(TARGET boost_sqlite_test_extension_${stem} PROPERTY PREFIX "")
    set_target_properties(boost_sqlite_test_extension_${stem} PROPERTIES OUTPUT_NAME ${stem})
endforeach()

foreach(script ${ALL_SQLITE_FILES})
    get_filename_component(stem ${script} NAME_WE)
    add_test(NAME boost_sqlite_test_extension_${stem} COMMAND
            sqlite3 :memory: ".read ${CMAKE_CURRENT_SOURCE_DIR}/${script}"
            WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
endforeach()