48 lines
1.1 KiB
CMake
48 lines
1.1 KiB
CMake
cmake_minimum_required(VERSION 3.10)
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
|
enable_language(CXX)
|
|
|
|
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
|
find_package(Threads REQUIRED)
|
|
|
|
project(Mario)
|
|
|
|
list(APPEND CommonFiles
|
|
global_vars.cpp
|
|
sprites.cpp
|
|
maploader.cpp
|
|
mapobject.cpp
|
|
blocks/simpleblocks.cpp
|
|
mario.cpp
|
|
blocks.cpp
|
|
)
|
|
|
|
add_subdirectory(../sdlpp sdlpp)
|
|
|
|
add_executable(mario
|
|
${CommonFiles}
|
|
main.cpp
|
|
visitors/mario_visitor.cpp
|
|
visitors/bounce_visitor.cpp
|
|
visitors/visitor_generator.cpp
|
|
blocks/coinblock.cpp
|
|
)
|
|
|
|
add_executable(editor
|
|
${CommonFiles}
|
|
blocks/coineditorblock.cpp
|
|
editor.cpp
|
|
edit_box.cpp
|
|
tool_box.cpp
|
|
editor_visitor.cpp
|
|
)
|
|
|
|
target_compile_definitions(editor PUBLIC EDITOR)
|
|
|
|
target_link_libraries(mario PRIVATE sdlpp SDL2 SDL2_image SDL2_gfx SDL2_ttf Threads::Threads)
|
|
target_link_libraries(editor PRIVATE sdlpp SDL2 SDL2_image SDL2_gfx SDL2_ttf Threads::Threads)
|
|
|
|
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/testfont.ttf ${CMAKE_CURRENT_SOURCE_DIR}/sprites DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
|