Files
LookingGlass/common/CMakeLists.txt
Geoffrey McRae 8fbe3e7454
Some checks failed
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
[repos] lgprotocol: import shared protocol definitions
Add LGProtocol as a pinned submodule and consume its KVMFR protocol
definitions throughout the client, host, IDD, OBS, and profiler.

Keep Looking Glass framebuffer helpers local while removing duplicated
protocol headers and migrating users to KVMFR-scoped types.
2026-09-01 20:58:25 +10:00

67 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 3.10)
project(lg_common LANGUAGES C)
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/")
include_directories(
${PROJECT_SOURCE_DIR}/include
)
add_definitions(-D_GNU_SOURCE)
if (CMAKE_C_COMPILER_ID STREQUAL "Clang")
add_compile_options(
"-Wno-unknown-warning-option"
)
endif()
function(_lg_common_add_protocol)
# Function scope preserves the parent BUILD_TESTING setting while disabling
# LGProtocol's standalone tests in the nested build.
set(BUILD_TESTING OFF)
add_subdirectory(
"${CMAKE_CURRENT_SOURCE_DIR}/../repos/LGProtocol"
"${CMAKE_CURRENT_BINARY_DIR}/LGProtocol"
EXCLUDE_FROM_ALL
)
endfunction()
_lg_common_add_protocol()
add_subdirectory(src/platform)
set(COMMON_SOURCES
src/appstrings.c
src/stringutils.c
src/stringlist.c
src/option.c
src/framebuffer.c
src/KVMFR.c
src/countedbuffer.c
src/rects.c
src/runningavg.c
src/ringbuffer.c
src/vector.c
src/cpuinfo.c
src/debug.c
src/ll.c
)
add_library(lg_common STATIC ${COMMON_SOURCES})
target_link_libraries(lg_common
PUBLIC
lg_common_platform
LGProtocol::LGProtocol
)
if(ENABLE_BACKTRACE)
target_compile_definitions(lg_common PUBLIC -DENABLE_BACKTRACE)
endif()
target_include_directories(lg_common
INTERFACE
include
PRIVATE
src
)