project('skemla', 'cpp', version: '0.0.0', default_options: [ 'warning_level=3', 'cpp_std=c++17' ]) skemla_lib = static_library('skemla', sources: [ 'lib/Node.cpp', 'lib/Lexer.cpp', 'lib/Parser.cpp', 'lib/Loc.cpp', 'lib/Logger.cpp', 'lib/Factory.cpp', 'lib/Type.cpp', 'lib/Value.cpp', 'lib/Compiler.cpp', 'lib/Program.cpp', 'lib/VM.cpp', ]) skemla_dep = declare_dependency(link_with: skemla_lib) executable('skemla', sources: [ 'src/main.cpp' ], dependencies: [ skemla_dep ], install: true) executable('skemla-tests', sources: [ 'tests/main.cpp', 'tests/Lexer.cpp', 'tests/Parser.cpp', ], dependencies: [ skemla_dep, dependency('catch2') ])