31 lines
785 B
CMake
31 lines
785 B
CMake
cmake_minimum_required(VERSION 3.24)
|
|
project(MyProject LANGUAGES CXX)
|
|
|
|
# Set C++23 and Clang as the compiler
|
|
set(CMAKE_CXX_STANDARD 23)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
# Use Clang explicitly if needed
|
|
if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
|
message(WARNING "This project is intended for Clang.")
|
|
endif()
|
|
|
|
# Fetch submodules
|
|
include(${CMAKE_SOURCE_DIR}/cmake/FetchSubmodules.cmake)
|
|
|
|
# Add submodule libraries (example)
|
|
#add_subdirectory(external/SomeLibrary)
|
|
add_subdirectory(external/ftxui)
|
|
|
|
# Main executable
|
|
add_executable(portfolio-tui
|
|
src/main.cpp
|
|
src/utils.cpp
|
|
src/portfolioapp.cpp
|
|
)
|
|
#target_link_libraries(MyProject PRIVATE SomeLibrary)
|
|
|
|
target_link_libraries(portfolio-tui PRIVATE ftxui::screen ftxui::dom ftxui::component)
|
|
|