57 lines
1.2 KiB
Meson
57 lines
1.2 KiB
Meson
project('roza',
|
|
'cpp',
|
|
version: '0.0.0',
|
|
default_options: [
|
|
'warning_level=3',
|
|
'cpp_std=c++17'
|
|
])
|
|
|
|
|
|
roza_lib = static_library(
|
|
'roza',
|
|
sources: [
|
|
'lib/SrcLoc.cpp',
|
|
'lib/StatusLog.cpp',
|
|
'lib/Node.cpp',
|
|
'lib/Lexer.cpp',
|
|
'lib/Parser.cpp',
|
|
'lib/Compiler.cpp',
|
|
'lib/StaticPass.cpp',
|
|
'lib/Program.cpp',
|
|
'lib/VM.cpp',
|
|
'lib/Type.cpp',
|
|
'lib/Value.cpp',
|
|
'lib/TypeResolver.cpp',
|
|
'lib/SymTable.cpp',
|
|
'lib/FunTy.cpp',
|
|
'lib/Fun.cpp',
|
|
]
|
|
)
|
|
|
|
roza_dep = declare_dependency(link_with: roza_lib)
|
|
|
|
executable('roza',
|
|
sources: [
|
|
'src/main.cpp',
|
|
'src/Args.cpp',
|
|
'src/Loader.cpp',
|
|
],
|
|
dependencies: [
|
|
roza_dep
|
|
],
|
|
install: true)
|
|
|
|
executable('roza-tests',
|
|
sources: [
|
|
'tests/main.cpp',
|
|
'tests/Lexer.cpp',
|
|
'tests/Parser.cpp',
|
|
'tests/Compiler.cpp',
|
|
'tests/TypeResolver.cpp',
|
|
'tests/StaticPass.cpp',
|
|
],
|
|
dependencies: [
|
|
dependency('catch2'),
|
|
roza_dep
|
|
])
|