30 lines
676 B
CMake
30 lines
676 B
CMake
cmake_minimum_required(VERSION 3.30)
|
|
|
|
project(LunarWM C CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
find_package(PkgConfig)
|
|
|
|
pkg_check_modules(WAYLAND REQUIRED IMPORTED_TARGET GLOBAL wayland-server)
|
|
pkg_check_modules(EGL REQUIRED IMPORTED_TARGET egl)
|
|
pkg_check_modules(GLES2 REQUIRED IMPORTED_TARGET glesv2)
|
|
|
|
add_executable(${PROJECT_NAME})
|
|
target_sources(${PROJECT_NAME} PUBLIC
|
|
src/main.cpp
|
|
)
|
|
target_sources(${PROJECT_NAME} PUBLIC FILE_SET CXX_MODULES FILES
|
|
src/wl/Shm.cppm
|
|
src/wl/Subsurface.cppm
|
|
src/wl/Subcompositor.cppm
|
|
src/LunarWM.cppm
|
|
)
|
|
target_link_libraries(${PROJECT_NAME} PUBLIC
|
|
PkgConfig::WAYLAND
|
|
PkgConfig::EGL
|
|
PkgConfig::GLES2
|
|
)
|
|
|