-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCMakeLists.txt
48 lines (41 loc) · 1.24 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
cmake_minimum_required(VERSION 3.10)
project(lox)
add_executable(
ilox
interpreter/src/lox.cpp
interpreter/src/main.cpp
interpreter/src/scanner.cpp
interpreter/src/parser.cpp
interpreter/src/environment.cpp
interpreter/src/token_type.cpp
interpreter/src/lox_function.cpp
interpreter/src/lox_class.cpp
interpreter/src/lox_instance.cpp
interpreter/src/object/operators.cpp
interpreter/src/visitor/interpreter.cpp
interpreter/src/visitor/resolver.cpp
interpreter/src/globals/clock.cpp
)
add_executable(
vlox
vm/src/main.cpp
vm/src/chunk.cpp
vm/src/token.cpp
vm/src/value.cpp
vm/src/scanner.cpp
vm/src/compiler.cpp
vm/src/disassembler.cpp
vm/src/vm.cpp
vm/src/gc.cpp
vm/src/object.cpp
vm/src/table.cpp
vm/src/native.cpp
)
target_include_directories(ilox PUBLIC "${PROJECT_BINARY_DIR}")
target_include_directories(vlox PUBLIC "${PROJECT_BINARY_DIR}")
# target_compile_definitions(vlox PUBLIC DEBUG_TRACE_EXECUTION)
# target_compile_definitions(vlox PUBLIC DEBUG_PRINT_CODE)
# target_compile_definitions(vlox PUBLIC DEBUG_LOG_GC)
set(CMAKE_BUILD_TYPE Debug)
set_property(TARGET ilox PROPERTY CXX_STANDARD 20)
set_property(TARGET vlox PROPERTY CXX_STANDARD 20)