mirror of
https://dev.lirent.ru/Vatrog/vm-control-io.git
synced 2026-06-18 01:36:36 +03:00
9b75494380
QMP client and driver, Linux uinput driver, keymap, open/power helpers, public header, and CMake build.
22 lines
760 B
CMake
22 lines
760 B
CMake
cmake_minimum_required(VERSION 3.16)
|
|
project(vmctl C)
|
|
set(CMAKE_C_STANDARD 17)
|
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
set(CMAKE_C_EXTENSIONS ON) # POSIX sockets + linux/uinput.h need gnu extensions
|
|
option(VMCTL_LTO "Enable LTO" OFF)
|
|
add_library(vmctl STATIC
|
|
src/vmctl/qmp.c
|
|
src/vmctl/open.c
|
|
src/vmctl/keymap.c
|
|
src/vmctl/power.c
|
|
src/vmctl/qmp_driver.c
|
|
src/vmctl/linux/uinput_driver.c)
|
|
target_include_directories(vmctl
|
|
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include
|
|
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src/vmctl/include)
|
|
target_compile_options(vmctl PRIVATE -O2 -Wall -Wextra)
|
|
if(VMCTL_LTO)
|
|
target_compile_options(vmctl PRIVATE -flto)
|
|
target_link_options(vmctl PRIVATE -flto)
|
|
endif()
|