44 lines
885 B
CMake
44 lines
885 B
CMake
|
cmake_minimum_required(VERSION 3.21)
|
||
|
project(katja
|
||
|
VERSION 1.0
|
||
|
)
|
||
|
|
||
|
include(FindBoost)
|
||
|
include(FetchContent)
|
||
|
|
||
|
set(CMAKE_CXX_STANDARD 17)
|
||
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||
|
|
||
|
add_executable(katja
|
||
|
src/component.h
|
||
|
src/command.h
|
||
|
src/package.h
|
||
|
src/sbo.h
|
||
|
src/component.cpp
|
||
|
src/command.cpp
|
||
|
src/package.cpp
|
||
|
src/sbo.cpp
|
||
|
src/main.cpp
|
||
|
)
|
||
|
target_include_directories(katja PRIVATE src)
|
||
|
|
||
|
find_package(Boost 1.78.0 REQUIRED COMPONENTS filesystem)
|
||
|
include_directories(${Boost_INCLUDE_DIRS})
|
||
|
|
||
|
FetchContent_Declare(ftxui
|
||
|
GIT_REPOSITORY https://github.com/ArthurSonzogni/ftxui
|
||
|
GIT_TAG v4.0.0
|
||
|
)
|
||
|
FetchContent_GetProperties(ftxui)
|
||
|
if(NOT ftxui_POPULATED)
|
||
|
FetchContent_Populate(ftxui)
|
||
|
add_subdirectory(${ftxui_SOURCE_DIR} ${ftxui_BINARY_DIR} EXCLUDE_FROM_ALL)
|
||
|
endif()
|
||
|
|
||
|
target_link_libraries(katja
|
||
|
PRIVATE Boost::filesystem
|
||
|
PRIVATE ftxui::screen
|
||
|
PRIVATE ftxui::dom
|
||
|
PRIVATE ftxui::component
|
||
|
)
|