1project(lws-minimal-dbus-ws-proxy C) 2cmake_minimum_required(VERSION 2.8.12) 3find_package(libwebsockets CONFIG REQUIRED) 4list(APPEND CMAKE_MODULE_PATH ${LWS_CMAKE_DIR}) 5include(CheckCSourceCompiles) 6include(CheckLibraryExists) 7include(LwsCheckRequirements) 8 9set(SAMP lws-minimal-dbus-ws-proxy) 10set(SRCS main.c) 11 12set(requirements 1) 13require_lws_config(LWS_ROLE_DBUS 1 requirements) 14require_lws_config(LWS_ROLE_WS 1 requirements) 15require_lws_config(LWS_WITH_SERVER 1 requirements) 16require_lws_config(LWS_WITH_CLIENT 1 requirements) 17 18if (NOT MSVC AND NOT WIN32 AND requirements) 19 add_executable(${SAMP} ${SRCS}) 20 21 if (NOT LWS_PLAT_FREERTOS) 22 find_package(PkgConfig QUIET) 23 pkg_check_modules(PC_DBUS1 dbus-1 QUIET) 24 list(APPEND LWS_DBUS_INCLUDE1 ${PC_DBUS1_INCLUDE_DIRS}) 25 list(APPEND LWS_DBUS_LIB "${PC_DBUS1_LIBRARIES};dl") 26 endif() 27 28 if (LWS_DBUS_INCLUDE1) 29 include_directories("${LWS_DBUS_INCLUDE1}") 30 endif() 31 32 if (websockets_shared) 33 target_link_libraries(${SAMP} websockets_shared ${LIBWEBSOCKETS_DEP_LIBS}) 34 add_dependencies(${SAMP} websockets_shared ${LWS_DBUS_LIB}) 35 else() 36 target_link_libraries(${SAMP} websockets ${LWS_DBUS_LIB} ${LIBWEBSOCKETS_DEP_LIBS}) 37 endif() 38endif() 39