1d4afb5ceSopenharmony_ciproject(lws-minimal-gtk C) 2d4afb5ceSopenharmony_cicmake_minimum_required(VERSION 2.8.12) 3d4afb5ceSopenharmony_cifind_package(libwebsockets CONFIG REQUIRED) 4d4afb5ceSopenharmony_cilist(APPEND CMAKE_MODULE_PATH ${LWS_CMAKE_DIR}) 5d4afb5ceSopenharmony_ciinclude(CheckCSourceCompiles) 6d4afb5ceSopenharmony_ciinclude(LwsCheckRequirements) 7d4afb5ceSopenharmony_ci 8d4afb5ceSopenharmony_ciset(SAMP lws-minimal-gtk) 9d4afb5ceSopenharmony_ciset(SRCS main.c) 10d4afb5ceSopenharmony_ci 11d4afb5ceSopenharmony_ciset(requirements 1) 12d4afb5ceSopenharmony_cirequire_lws_config(LWS_ROLE_H1 1 requirements) 13d4afb5ceSopenharmony_cirequire_lws_config(LWS_WITH_SERVER 1 requirements) 14d4afb5ceSopenharmony_cirequire_lws_config(LWS_WITH_GLIB 1 requirements) 15d4afb5ceSopenharmony_cirequire_lws_config(LWS_WITH_GTK 1 requirements) 16d4afb5ceSopenharmony_ci 17d4afb5ceSopenharmony_ciif (requirements) 18d4afb5ceSopenharmony_ci 19d4afb5ceSopenharmony_ci# gtk pieces 20d4afb5ceSopenharmony_ci 21d4afb5ceSopenharmony_ci include (FindPkgConfig) 22d4afb5ceSopenharmony_ci 23d4afb5ceSopenharmony_ci set(LWS_GTK_INCLUDE_DIRS CACHE PATH "Path to the gtk include directory") 24d4afb5ceSopenharmony_ci set(LWS_GTK_LIBRARIES CACHE PATH "Path to the gtk library") 25d4afb5ceSopenharmony_ci PKG_SEARCH_MODULE(LWS_GTK2 gtk+-3.0) 26d4afb5ceSopenharmony_ci if (LWS_GTK2_FOUND) 27d4afb5ceSopenharmony_ci list(APPEND LWS_GTK_INCLUDE_DIRS "${LWS_GTK2_INCLUDE_DIRS}") 28d4afb5ceSopenharmony_ci list(APPEND LWS_GTK_LIBRARIES "${LWS_GTK2_LIBRARIES}") 29d4afb5ceSopenharmony_ci endif() 30d4afb5ceSopenharmony_ci message("gtk include dir: ${LWS_GTK_INCLUDE_DIRS}") 31d4afb5ceSopenharmony_ci message("gtk libraries: ${LWS_GTK_LIBRARIES}") 32d4afb5ceSopenharmony_ci include_directories("${LWS_GTK_INCLUDE_DIRS}") 33d4afb5ceSopenharmony_ci set(extralibs ${extralibs} ${LWS_GTK_LIBRARIES}) 34d4afb5ceSopenharmony_ci 35d4afb5ceSopenharmony_ci 36d4afb5ceSopenharmony_ci 37d4afb5ceSopenharmony_ci message("Extra libs: ${extralibs}") 38d4afb5ceSopenharmony_ci 39d4afb5ceSopenharmony_ci add_executable(${SAMP} ${SRCS}) 40d4afb5ceSopenharmony_ci 41d4afb5ceSopenharmony_ci if (websockets_shared) 42d4afb5ceSopenharmony_ci target_link_libraries(${SAMP} websockets_shared ${extralibs} ${LIBWEBSOCKETS_DEP_LIBS}) 43d4afb5ceSopenharmony_ci add_dependencies(${SAMP} websockets_shared) 44d4afb5ceSopenharmony_ci else() 45d4afb5ceSopenharmony_ci target_link_libraries(${SAMP} websockets ${extralibs} ${LIBWEBSOCKETS_DEP_LIBS}) 46d4afb5ceSopenharmony_ci endif() 47d4afb5ceSopenharmony_ciendif() 48