cmake_minimum_required(VERSION 3.14) project(rktwebview LANGUAGES CXX) set(QT_DEBUG_FIND_PACKAGE ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) find_package(QT NAMES Qt6 REQUIRED COMPONENTS Widgets WebEngineWidgets) find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS Widgets WebEngineWidgets) add_library(rktwebview SHARED rktwebview_global.h rktwebview.h rktwebview.cpp shm.h shm.cpp shmqueue.h shmqueue.cpp rkt_protocol.h rktwebview_types.h json.cpp json.h utils.h utils.cpp ) add_executable(rktwebview_prg main.cpp rktwebview_qt.cpp rktwebview_qt.h webviewqt.h webviewqt.cpp webviewwindow.h webviewwindow.cpp rktutils.h rktutils.cpp command.h command.cpp shm.h shm.cpp shmqueue.h shmqueue.cpp rkt_protocol.h rktwebview_types.h utils.cpp utils.h ) add_executable(rktwebview_test rktwebview_test.cpp ) target_link_libraries(rktwebview_prg PRIVATE Qt${QT_VERSION_MAJOR}::Widgets) target_link_libraries(rktwebview_prg PRIVATE Qt${QT_VERSION_MAJOR}::WebEngineWidgets) target_compile_definitions(rktwebview PRIVATE RKTWEBVIEW_LIBRARY) target_link_Libraries(rktwebview_test PRIVATE rktwebview)