54
CMakeLists.txt
Normal file
54
CMakeLists.txt
Normal file
@@ -0,0 +1,54 @@
|
||||
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}
|
||||
)
|
||||
Reference in New Issue
Block a user