You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.4 KiB
62 lines
1.4 KiB
project('turings_tarpit', 'cpp',
|
|
default_options: ['cpp_std=c++20'])
|
|
|
|
cmake = import('cmake')
|
|
opts = cmake.subproject_options()
|
|
opts.add_cmake_defines({
|
|
'USE_ICONV': false,
|
|
'USE_SSH': false,
|
|
'USE_NTLMCLIENT': false,
|
|
'BUILD_SHARED_LIBS': true,
|
|
'BUILD_TESTS': false,
|
|
})
|
|
libgit2_proj = cmake.subproject('libgit2', options: opts)
|
|
libgit2package_dep = libgit2_proj.dependency('libgit2package')
|
|
|
|
efsw_dep = dependency('efsw')
|
|
fmt = dependency('fmt')
|
|
catch2 = dependency('catch2-with-main')
|
|
sfml = dependency('sfml')
|
|
json = dependency('nlohmann_json')
|
|
imgui = dependency('imgui-sfml')
|
|
|
|
dependencies = [
|
|
fmt, libgit2package_dep, efsw_dep,
|
|
sfml, imgui, json
|
|
]
|
|
|
|
executable('escape_turings_tarpit',
|
|
['game_engine.cpp',
|
|
'gui.cpp',
|
|
'watcher.cpp',
|
|
'builder.cpp',
|
|
'sfmlgui.cpp',
|
|
'escape_turings_tarpit.cpp'],
|
|
dependencies: dependencies,
|
|
cpp_args: '-fcoroutines')
|
|
|
|
executable('regtest', 'regtest.cpp',
|
|
dependencies: [fmt])
|
|
|
|
executable('audiotest', 'audiotest.cpp',
|
|
dependencies: dependencies)
|
|
|
|
executable('jsontest', 'jsontest.cpp',
|
|
dependencies: dependencies)
|
|
|
|
executable('threadtest', 'threadtest.cpp',
|
|
dependencies: dependencies)
|
|
|
|
executable('corotest', [
|
|
'corotest.cpp'
|
|
],
|
|
dependencies: dependencies,
|
|
cpp_args: '-fcoroutines')
|
|
|
|
runtests = executable('runtests', [
|
|
'game_engine.cpp',
|
|
'tests/game_engine.cpp',
|
|
],
|
|
dependencies: dependencies + [catch2])
|
|
|
|
test('tests', runtests)
|
|
|