summaryrefslogtreecommitdiff
path: root/subprojects/boost-sqlite/example/CMakeLists.txt
blob: 480ed7e7519f86b088b314f4d8c1076d828bb160 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
file(GLOB_RECURSE ALL_EXAMPLES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)
file(GLOB_RECURSE ALL_EXAMPLES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp)

foreach(SRC ${ALL_EXAMPLES})
    get_filename_component(NAME ${SRC} NAME_WLE )

    if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${NAME}.sql)
        add_library(boost_sqlite_example_${NAME} SHARED ${SRC})
        target_link_libraries(boost_sqlite_example_${NAME} PUBLIC Boost::sqlite_ext Boost::url)
        target_compile_definitions(boost_sqlite_example_${NAME} PUBLIC BOOST_SQLITE_SEPARATE_COMPILATION=1)
        set_property(TARGET boost_sqlite_example_${NAME} PROPERTY PREFIX "")
        set_target_properties(boost_sqlite_example_${NAME} PROPERTIES OUTPUT_NAME ${NAME} POSITION_INDEPENDENT_CODE ON)
     else()
        add_executable(boost_sqlite_example_${NAME} ${SRC} )
        target_link_libraries(boost_sqlite_example_${NAME} PUBLIC Boost::sqlite)
        target_compile_definitions(boost_sqlite_example_${NAME} PUBLIC BOOST_SQLITE_SEPARATE_COMPILATION=1)
    endif()
endforeach()