1 add_executable(client ${OBJ_COMMON} ${OBJ_CL} ${OBJ_MENU} ${OBJ_SND_COMMON} ${OBJ_CD_COMMON} ${OBJ_VIDEO_CAPTURE})
2 target_link_libraries(client common)
3 set_target_properties(client PROPERTIES OUTPUT_NAME "${ENGINE_BUILD_NAME}")
6 target_sources(client PRIVATE ${ENGINE_BUILD_WINRC})
9 option_dependency(SDL2 ENGINE_LINK_TO_SDL2 "shared" "${DP_LINK_OPTIONS_REQUIRED}")
10 option_dependency(PNG ENGINE_LINK_TO_LIBPNG "static" "${DP_LINK_OPTIONS_REQUIRED}")
11 option_dependency(zlib ENGINE_LINK_TO_ZLIB "shared" "${DP_LINK_OPTIONS_REQUIRED}")
12 option_dependency(d0_blind_id ENGINE_LINK_TO_CRYPTO "dlopen" "${DP_LINK_OPTIONS_STANDARD}")
13 option_dependency(d0_blind_id_rijndael ENGINE_LINK_TO_CRYPTO_RIJNDAEL "dlopen" "${DP_LINK_OPTIONS_STANDARD}")
14 option_dependency(ODE ENGINE_LINK_TO_LIBODE "none" "${DP_LINK_OPTIONS_STANDARD}")
15 option_dependency(XMP ENGINE_LINK_TO_XMP "dlopen" "${DP_LINK_OPTIONS_STANDARD}")
16 option_dependency(Vorbis ENGINE_LINK_TO_VORBIS "shared" "${DP_LINK_OPTIONS_STANDARD}")
18 find_package(SDL2 REQUIRED)
19 find_package(ZLIB REQUIRED)
20 find_package(PNG REQUIRED)
21 find_package(CURL REQUIRED)
23 target_link_libraries(client SDL2::Main ZLIB::ZLIB PNG::PNG CURL::libcurl)
25 if(ENGINE_CONFIG_MENU)
26 target_compile_definitions(client PRIVATE -DCONFIG_MENU)
29 if(ENGINE_LINK_TO_CRYPTO OR ENGINE_LINK_TO_CRYPTO_RIJNDAEL)
31 if(CRYPTO_INCLUDE_DIR AND d0_blind_id_LIBRARY AND d0_rijndael_LIBRARY)
32 target_include_directories(client PRIVATE ${CRYPTO_INCLUDE_DIR})
34 if(ENGINE_LINK_TO_CRYPTO)
35 target_compile_definitions(client PRIVATE -DLINK_TO_CRYPTO)
36 target_link_libraries(client ${d0_blind_id_LIBRARY})
39 if(ENGINE_LINK_TO_CRYPTO_RIJNDAEL)
40 target_compile_definitions(client PRIVATE -DLINK_TO_CRYPTO_RIJNDAEL)
41 target_link_libraries(client ${d0_rijndael_LIBRARY})
46 if(ENGINE_LINK_TO_LIBJPEG)
47 find_package(JPEG REQUIRED)
48 add_dependencies(client JPEG::JPEG)
51 if(ENGINE_LINK_TO_LIBVORBIS)
52 find_package(Vorbis REQUIRED)
53 target_include_directories(client PRIVATE ${VORBIS_INCLUDE_DIRS})
54 target_compile_definitions(client PRIVATE -DLINK_TO_LIBVORBIS)
55 target_link_libraries(client ${VORBIS_LIBRARIES})
58 if(ENGINE_LINK_TO_LIBODE)
59 target_compile_definitions(client PRIVATE -DUSEODE)
62 if(ENGINE_CONFIG_VIDEO_CAPTURE)
63 target_compile_definitions(client PRIVATE -DCONFIG_VIDEO_CAPTURE)