project('tiwiq', 'cpp', version: '0.0.0', default_options: [ 'prefix=/usr', 'warning_level=3', 'cpp_std=c++17', ]) py3 = import('python') py3_inst = py3.find_installation('python3') py3_dep = py3_inst.dependency(embed: true) twq_lib = static_library('tiwiq', sources: [ 'src/Global.cpp', 'src/core/Binding.cpp', 'src/core/Command.cpp', 'src/core/Context.cpp', 'src/core/Executor.cpp', 'src/core/KeyMod.cpp', 'src/core/Plugin.cpp', 'src/core/Shortcut.cpp', 'src/core/Tiwiq.cpp', 'src/core/UI.cpp', 'src/core/Observer.cpp', 'src/core/Observable.cpp', 'src/core/Event.cpp', 'src/core/Coord.cpp', 'src/core/Rect.cpp', 'src/core/Color.cpp', 'src/cmd/QuitCmd.cpp', 'src/plugins/CorePlugin.cpp', 'src/term/Controller.cpp', 'src/term/View.cpp', 'src/term/Term.cpp', 'src/script/Scripts.cpp', 'src/script/Loader.cpp', ], dependencies: [ py3_dep, dependency('ncursesw'), ]) twq_dep = declare_dependency( link_with: twq_lib, include_directories: ['src/'] ) executable('twq', sources: [ 'src/main.cpp' ], dependencies: [ twq_dep, py3_dep, ], install: true) executable('twq-tests', sources: [ 'tests/main.cpp', 'tests/Shortcut.cpp', 'tests/Executor.cpp', ], dependencies: [ twq_dep, py3_dep, dependency('catch2') ])