29 lines
727 B
CMake
29 lines
727 B
CMake
# Sets miniumum CMake and C++ Standard version #
|
|
cmake_minimum_required (VERSION 3.16)
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
project(LXC_Project LANGUAGES CXX)
|
|
|
|
# Makes .exes be outputted within the root directory #
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR})
|
|
|
|
# Enables testing #
|
|
enable_testing()
|
|
add_subdirectory(external/googletest)
|
|
|
|
# Adds external projects #
|
|
add_subdirectory(external/util)
|
|
|
|
# Adds the sub-directories of all of the binaries #
|
|
# The order is equivalent to which order they are compiled #
|
|
add_subdirectory(lexer)
|
|
add_subdirectory(ast)
|
|
add_subdirectory(parser)
|
|
|
|
# Executable directories #
|
|
add_subdirectory(LXC)
|
|
add_subdirectory(tests)
|