mirror of
https://github.com/yoboujon/ftxui_template.git
synced 2025-06-08 13:00:50 +02:00
47 lines
1 KiB
CMake
47 lines
1 KiB
CMake
cmake_minimum_required(VERSION 3.18)
|
|
project(
|
|
ftxui_template
|
|
DESCRIPTION "FTXUI Template Project"
|
|
HOMEPAGE_URL "https://www.etheryo.fr/"
|
|
LANGUAGES CXX C
|
|
)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_C_STANDARD 99)
|
|
set(CMAKE_C_STANDARD_REQUIRED ON)
|
|
|
|
# Dependencies
|
|
include(dependencies.cmake)
|
|
|
|
set(TARGET ftxui_template)
|
|
set(SRC "${CMAKE_CURRENT_SOURCE_DIR}/src")
|
|
add_executable(${TARGET}
|
|
${SRC}/ui.cpp
|
|
${SRC}/logger.cpp
|
|
${SRC}/event.cpp
|
|
# Pages
|
|
${SRC}/pages/page1.cpp
|
|
${SRC}/pages/page2.cpp
|
|
# Main
|
|
${SRC}/main.cpp
|
|
)
|
|
|
|
# Include folders
|
|
target_include_directories(${TARGET} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/include")
|
|
target_include_directories(${TARGET} PRIVATE "${FTXUI_INCLUDE_DIRS}")
|
|
|
|
# Libraries
|
|
target_link_libraries(
|
|
${TARGET} PRIVATE
|
|
component
|
|
dom
|
|
screen
|
|
)
|
|
|
|
# Output folder
|
|
set_target_properties(${TARGET}
|
|
PROPERTIES
|
|
ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
|
|
LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
|
|
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}"
|
|
)
|