Files
wayviewer/CMakeLists.txt
T
2026-06-28 09:57:06 -05:00

47 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.16)
project(wayviewer VERSION 0.1.0 LANGUAGES CXX)
include(GNUInstallDirs)
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type" FORCE)
endif()
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
find_package(PkgConfig REQUIRED)
pkg_check_modules(SDL2 REQUIRED IMPORTED_TARGET sdl2)
pkg_check_modules(LIBVNCCLIENT REQUIRED IMPORTED_TARGET libvncclient)
add_executable(wayviewer
src/input.cpp
src/main.cpp
src/options.cpp
src/sdl_app.cpp
src/viewer_state.cpp
src/vnc_client.cpp
)
target_compile_options(wayviewer PRIVATE
-Wall
-Wextra
-Wpedantic
)
target_link_libraries(wayviewer PRIVATE
PkgConfig::SDL2
PkgConfig::LIBVNCCLIENT
)
configure_file(
packaging/wayviewer.desktop.in
${CMAKE_CURRENT_BINARY_DIR}/wayviewer.desktop
@ONLY
)
install(TARGETS wayviewer RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/wayviewer.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)