You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.3 KiB
CMake
51 lines
1.3 KiB
CMake
# Examples
|
|
|
|
# Common libraries to link for examples.
|
|
set(EXAMPLE_LIBS webcc)
|
|
|
|
if(UNIX)
|
|
# Add `-ldl` for Linux to avoid "undefined reference to `dlopen'".
|
|
set(EXAMPLE_LIBS ${EXAMPLE_LIBS} ${CMAKE_DL_LIBS})
|
|
endif()
|
|
|
|
set(SIMPLE_EXAMPLES
|
|
concurrency_test
|
|
client_basics
|
|
hello_world_server
|
|
static_file_server
|
|
file_downloader
|
|
server_states
|
|
form_client
|
|
form_server
|
|
form_urlencoded_client
|
|
)
|
|
|
|
foreach(example ${SIMPLE_EXAMPLES})
|
|
add_executable(${example} ${example}.cc)
|
|
target_link_libraries(${example} ${EXAMPLE_LIBS})
|
|
set_target_properties(${example} PROPERTIES FOLDER "Examples")
|
|
endforeach()
|
|
|
|
if(WEBCC_ENABLE_SSL)
|
|
add_executable(github_client github_client.cc)
|
|
target_link_libraries(github_client ${EXAMPLE_LIBS} jsoncpp)
|
|
set_target_properties(github_client PROPERTIES FOLDER "Examples")
|
|
|
|
add_executable(google_client google_client.cc)
|
|
target_link_libraries(google_client ${EXAMPLE_LIBS})
|
|
set_target_properties(google_client PROPERTIES FOLDER "Examples")
|
|
endif()
|
|
|
|
if(WIN32)
|
|
add_executable(url_unicode url_unicode.cc encoding.cc encoding.h)
|
|
target_link_libraries(url_unicode ${EXAMPLE_LIBS})
|
|
set_target_properties(url_unicode PROPERTIES FOLDER "Examples")
|
|
endif()
|
|
|
|
add_subdirectory(book_server)
|
|
add_subdirectory(book_client)
|
|
|
|
if(BUILD_QT_EXAMPLES)
|
|
add_subdirectory(qt_app_server)
|
|
endif()
|