Files
lunarwm/CMakeLists.txt
Slendi c93ab29a90 Initial commit
Signed-off-by: Slendi <slendi@socopon.com>
2025-06-29 15:57:38 +03:00

55 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.12)
project(lunarwm VERSION 0.0.1 LANGUAGES C CXX)
set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
add_compile_options(-Wall -Wextra -Wno-missing-field-initializers)
add_compile_definitions(
XR_USE_PLATFORM_XLIB
XR_USE_GRAPHICS_API_OPENGL
WLR_USE_UNSTABLE
)
list(INSERT CMAKE_MODULE_PATH 0
${CMAKE_CURRENT_SOURCE_DIR}/cmake
)
find_package(OpenGL REQUIRED)
find_package(OpenXR REQUIRED)
find_package(glm REQUIRED)
find_package(PkgConfig REQUIRED)
pkg_check_modules(Wlroots REQUIRED wlroots-0.19)
pkg_check_modules(X11 REQUIRED x11)
pkg_check_modules(wayland REQUIRED wayland-server wayland-protocols)
include_directories(
${wayland_INCLUDE_DIRS}
${X11_INCLUDE_DIRS}
${GLM_INCLUDE_DIRS}
${Wlroots_INCLUDE_DIRS}
)
set(SOURCES
src/wlr/backend.cpp
src/wlr/output.cpp
src/compositor.cpp
src/main.cpp
)
add_executable(${PROJECT_NAME} ${SOURCES})
target_link_libraries(${PROJECT_NAME}
OpenGL::GL
openxr_loader
${wayland_LIBRARIES}
${X11_LIBRARIES}
${GLM_LIBRARIES}
${Wlroots_LIBRARIES}
)