@@ -2,6 +2,26 @@ cmake_minimum_required(VERSION 3.12)
|
||||
|
||||
project(lunarwm VERSION 0.0.1 LANGUAGES C CXX)
|
||||
|
||||
execute_process(COMMAND pkg-config --variable=pkgdatadir wayland-protocols
|
||||
OUTPUT_VARIABLE WAYLAND_PROTOCOLS
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
execute_process(COMMAND pkg-config --variable=wayland_scanner wayland-scanner
|
||||
OUTPUT_VARIABLE WAYLAND_SCANNER
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/xdg-shell-protocol.h
|
||||
COMMAND ${WAYLAND_SCANNER} server-header
|
||||
${WAYLAND_PROTOCOLS}/stable/xdg-shell/xdg-shell.xml
|
||||
${CMAKE_CURRENT_BINARY_DIR}/xdg-shell-protocol.h
|
||||
MAIN_DEPENDENCY ${WAYLAND_PROTOCOLS}/stable/xdg-shell/xdg-shell.xml
|
||||
COMMENT "Generating xdg-shell-protocol.h"
|
||||
)
|
||||
|
||||
add_custom_target(xdg_shell_proto
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/xdg-shell-protocol.h
|
||||
)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 23)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
@@ -28,28 +48,32 @@ 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}
|
||||
${wayland_INCLUDE_DIRS}
|
||||
${X11_INCLUDE_DIRS}
|
||||
${GLM_INCLUDE_DIRS}
|
||||
${Wlroots_INCLUDE_DIRS}
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
|
||||
set(SOURCES
|
||||
src/wlr/backend.cpp
|
||||
src/wlr/output.cpp
|
||||
src/wlr/openxr_gl.cpp
|
||||
src/wlr/backend.cpp
|
||||
src/wlr/output.cpp
|
||||
src/wlr/openxr_gl.cpp
|
||||
|
||||
src/compositor.cpp
|
||||
src/main.cpp
|
||||
src/compositor.cpp
|
||||
src/main.cpp
|
||||
|
||||
${CMAKE_CURRENT_BINARY_DIR}/xdg-shell-protocol.h
|
||||
)
|
||||
|
||||
add_executable(${PROJECT_NAME} ${SOURCES})
|
||||
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
OpenGL::GL
|
||||
openxr_loader
|
||||
${wayland_LIBRARIES}
|
||||
${X11_LIBRARIES}
|
||||
${GLM_LIBRARIES}
|
||||
${Wlroots_LIBRARIES}
|
||||
OpenGL::GL
|
||||
openxr_loader
|
||||
${wayland_LIBRARIES}
|
||||
${X11_LIBRARIES}
|
||||
${GLM_LIBRARIES}
|
||||
${Wlroots_LIBRARIES}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user