lang/CMakeLists.txt

68 lines
1.4 KiB
Text
Raw Normal View History

2023-07-16 20:55:07 +03:00
cmake_minimum_required(VERSION 3.10)
project(Lang)
set(CMAKE_C_COMPILER clang)
set(CMAKE_CXX_COMPILER clang++)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(CMAKE_CXX_STANDARD 20)
2023-07-16 20:55:07 +03:00
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
2023-08-02 18:19:11 +03:00
include_directories(
include
include/nodes
include/builders
include/printers
deps/tree-sitter-lang/src
deps/tree-sitter/lib/src
)
set(
NODES
src/nodes/type_nodes.cpp
src/nodes/expression_nodes.cpp
src/nodes/statement_nodes.cpp
)
set(
BUILDERS
src/builders/basic_builders.cpp
src/builders/type_builders.cpp
src/builders/doc_builders.cpp
src/builders/expression_builders.cpp
src/builders/statement_builders.cpp
)
set(
PRINTERS
src/printers/basic_printers.cpp
src/printers/type_printers.cpp
src/printers/doc_printers.cpp
src/printers/expression_printers.cpp
src/printers/statement_printers.cpp
)
2023-07-16 20:55:07 +03:00
set(
2024-01-04 19:29:29 +03:00
TYPECHECKERS
src/basic_type_check.cpp
src/expression_type_check.cpp
src/type_check_utils.cpp
)
2023-07-16 20:55:07 +03:00
add_executable(lang src/main.cpp
src/name_tree.cpp
2023-08-02 18:19:11 +03:00
${NODES}
${BUILDERS}
${PRINTERS}
2024-01-04 19:29:29 +03:00
# ${TYPECHECKERS}
2023-07-25 21:33:57 +03:00
2023-07-16 21:03:16 +03:00
include/tree_sitter_wrapper.hpp
2023-07-16 20:55:07 +03:00
deps/tree-sitter-lang/src/tree_sitter/parser.h
deps/tree-sitter-lang/src/parser.c
deps/tree-sitter/lib/src/lib.c)