added basic SFML

now using App and SFML's loop, but haven't properly set up data vs
logic vs UI yet.
added setuptimers()
sortdata currently member var, should either make vec, or attach it to
a different object
This commit is contained in:
2026-08-03 02:05:08 +02:00
parent bcd9fe91c3
commit 401841f700
4 changed files with 121 additions and 43 deletions
+25 -6
View File
@@ -1,13 +1,29 @@
cmake_minimum_required(VERSION 3.24)
project(cppout)
cmake_minimum_required(VERSION 4.0)
project(cppout LANGUAGES CXX)
file(GLOB SOURCE_FILES "*/*.cpp")
file(GLOB SOURCE_FILES "src/*.cpp")
find_package(Curses REQUIRED)
include_directories(${CURSES_INCLUDE_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
include(FetchContent)
FetchContent_Declare(SFML
GIT_REPOSITORY https://github.com/SFML/SFML.git
GIT_TAG 3.1.0
GIT_SHALLOW ON
EXCLUDE_FROM_ALL
SYSTEM)
FetchContent_MakeAvailable(SFML)
add_executable(${PROJECT_NAME} ${SOURCE_FILES})
add_custom_command(
TARGET ${PROJECT_NAME} POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
"${CMAKE_CURRENT_SOURCE_DIR}/assets"
"$<TARGET_FILE_DIR:${PROJECT_NAME}>/assets"
COMMENT "copying assets to build dir"
)
if(MSVC)
target_compile_option(${PROJECT_NAME} PRIVATE /W4)
else()
@@ -18,4 +34,7 @@ else()
)
endif()
target_link_libraries(${PROJECT_NAME} ${CURSES_LIBRARIES})
target_compile_features(${PROJECT_NAME} PRIVATE cxx_std_20)
target_link_libraries(${PROJECT_NAME} PRIVATE SFML::Graphics)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME})