Files
mdemory/CMakeLists.txt

43 lines
1.1 KiB
CMake

cmake_minimum_required(VERSION 3.16)
project(Mdemory LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED True)
set(
CMAKE_EXPORT_COMPILE_COMMANDS
ON CACHE BOOL "Enable generation of compile_commands.json by default"
)
if (WIN32)
set(
WIN32_ADDITIONAL_OPTIONS "-static-libgcc -static-libstdc++ -static"
CACHE STRING "Additional options for Windows builds"
)
endif()
set(
DEFAULT_DEBUG_OPTIONS "-g3 -O0 -ggdb -fno-inline"
CACHE STRING "Default debug options"
)
set(
DEFAULT_RELEASE_OPTIONS "-O3 -DNDEBUG"
CACHE STRING "Default release options"
)
if (WIN32)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${DEFAULT_DEBUG_OPTIONS} ${WIN32_ADDITIONAL_OPTIONS}")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${DEFAULT_RELEASE_OPTIONS} ${WIN32_ADDITIONAL_OPTIONS}")
else()
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${DEFAULT_DEBUG_OPTIONS}")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${DEFAULT_RELEASE_OPTIONS}")
endif()
option(COMPILE_TESTS "Compile tests" ON)
add_subdirectory(src/transpiler)
add_subdirectory(src/qtapp)
if (COMPILE_TESTS)
add_subdirectory(src/test)
endif()