1project(lws-minimal-secure-streams-alexa C) 2cmake_minimum_required(VERSION 2.8.12) 3find_package(libwebsockets CONFIG REQUIRED) 4list(APPEND CMAKE_MODULE_PATH ${LWS_CMAKE_DIR}) 5include(CheckCSourceCompiles) 6include(LwsCheckRequirements) 7 8set(SAMP lws-minimal-secure-streams-alexa) 9set(SRCS main.c alexa.c audio.c) 10 11set(requirements 1) 12require_lws_config(LWS_ROLE_H1 1 requirements) 13require_lws_config(LWS_WITHOUT_CLIENT 0 requirements) 14require_lws_config(LWS_WITH_SECURE_STREAMS 1 requirements) 15require_lws_config(LWS_WITH_SECURE_STREAMS_STATIC_POLICY_ONLY 0 requirements) 16require_lws_config(LWS_WITH_ALSA 1 requirements) 17require_lws_config(LWS_WITH_SYS_STATE 1 requirements) 18 19if (requirements) 20 add_executable(${SAMP} ${SRCS}) 21 22 if (websockets_shared) 23 target_link_libraries(${SAMP} websockets_shared asound pv_porcupine mpg123 ${LIBWEBSOCKETS_DEP_LIBS}) 24 add_dependencies(${SAMP} websockets_shared) 25 else() 26 target_link_libraries(${SAMP} websockets asound pv_porcupine mpg123 ${LIBWEBSOCKETS_DEP_LIBS}) 27 endif() 28 29 CHECK_C_SOURCE_COMPILES("#include <libwebsockets.h>\nint main(void) {\ni#if defined(LWS_WITH_SECURE_STREAMS_PROXY_API)\n return 0;\n #else\n fail\n #endif\n return 0;\n}\n" HAS_LWS_WITH_SECURE_STREAMS_PROXY_API) 30 31 if (HAS_LWS_WITH_SECURE_STREAMS_PROXY_API OR LWS_WITH_SECURE_STREAMS_PROXY_API) 32 add_compile_options(-DLWS_SS_USE_SSPC) 33 34 add_executable(${SAMP}-client ${SRCS}) 35 if (websockets_shared) 36 target_link_libraries(${SAMP}-client websockets_shared asound pv_porcupine mpg123 ${LIBWEBSOCKETS_DEP_LIBS}) 37 add_dependencies(${SAMP}-client websockets_shared) 38 else() 39 target_link_libraries(${SAMP}-client websockets asound pv_porcupine mpg123 ${LIBWEBSOCKETS_DEP_LIBS}) 40 endif() 41 endif() 42 43endif() 44