-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCMakeLists.txt
81 lines (67 loc) · 1.14 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
cmake_minimum_required(VERSION 3.10)
set(CMAKE_C_STANDARD 11)
set(CMAKE_C_STANDARD_REQUIRED true)
add_compile_options(
# Include debug info
-g
-Werror
-Wall
-Wextra
-Wpedantic
-Wfloat-equal
-Wcast-qual
-Wconversion
-Wsign-conversion
-Wno-gnu-folding-constant
-fshort-enums
)
add_subdirectory(lib/cut)
add_subdirectory(lib/hashmap)
add_subdirectory(lib/path)
project(Lala)
add_library(LalaLib
src/constant.c
src/heap.c
src/lexer.c
src/op_code.c
src/parser.c
src/scope.c
src/stack.c
src/token.c
src/value_type.c
src/vm.c
)
target_link_libraries(LalaLib PUBLIC
HashMap
Path
)
target_include_directories(LalaLib PUBLIC
"lib/ccf"
"lib/debug"
"lib/hashmap"
"lib/path"
"src"
)
add_executable(lala
src/main.c
)
target_link_libraries(lala PUBLIC
LalaLib
)
target_include_directories(lala PUBLIC
"src"
)
add_executable(LalaTest
test/lexer_test.c
test/parser_test.c
test/vm_test.c
)
target_link_libraries(LalaTest PUBLIC
Cut
LalaLib
)
target_include_directories(LalaTest PUBLIC
"lib/cut"
"lib/debug"
"src"
)