project('roguish', 'cpp', default_options: [ 'cpp_std=c++20' ]) catch2 = dependency('catch2-with-main') fmt = dependency('fmt') json = dependency('nlohmann_json') ftxui_screen = dependency('ftxui-screen') ftxui_dom = dependency('ftxui-dom') ftxui_component = dependency('ftxui-component') sfml = dependency('sfml') dependencies = [catch2, fmt, ftxui_screen, ftxui_dom, ftxui_component, json, sfml] runtests = executable('runtests', [ 'dbc.cpp', 'map.cpp', 'rand.cpp', 'sound.cpp', 'collider.cpp', 'ansi_parser.cpp', 'config.cpp', 'save.cpp', 'panel.cpp', 'tests/fsm.cpp', 'tests/dbc.cpp', 'tests/map.cpp', 'tests/collider.cpp', 'tests/sound.cpp', 'tests/dinkyecs.cpp', 'tests/ansi_parser.cpp', 'tests/config.cpp', 'tests/save.cpp', ], dependencies: dependencies) roguish = executable('roguish', [ 'dbc.cpp', 'main.cpp', 'map.cpp', 'gui.cpp', 'rand.cpp', 'sound.cpp', 'collider.cpp', 'combat.cpp', 'systems.cpp', 'ansi_parser.cpp', 'render.cpp', 'config.cpp', 'save.cpp', 'panel.cpp', ], dependencies: dependencies) roguish = executable('img2ansi', [ 'dbc.cpp', 'panel.cpp', 'ansi_parser.cpp', 'render.cpp', 'scratchpad/img2ansi.cpp' ], dependencies: dependencies) test('tests', runtests)