project('pywiq', 'cpp', version: '0.0.0', default_options: [ 'prefix=/usr', 'warning_level=3', 'cpp_std=c++17', ]) pwq_lib = static_library('pywiq', sources: [ # Terminal # -------- 'src/Term.cpp', # Control # ------- 'src/KeyMod.cpp', 'src/Mode.cpp', 'src/Action.cpp', 'src/Binding.cpp', 'src/Executor.cpp', 'src/Pywiq.cpp', 'src/Controller.cpp', # View # ---- 'src/UI_Node.cpp', 'src/VBoxUI.cpp', 'src/View.cpp', # Command # ------- # Scripting # --------- # Actions # ------- 'src/actions/Quit.cpp', ], dependencies: [ dependency('ncursesw') ]) pwq_dep = declare_dependency( link_with: pwq_lib, include_directories: ['src'] ) executable('pwq', sources: [ 'src/main.cpp', ], dependencies: [ pwq_dep ], install: true) executable('pwq-tests', sources: [ 'tests/main.cpp', 'tests/KeyMod.cpp', 'tests/Executor.cpp', ], dependencies: [ pwq_dep, dependency('catch2') ])