cmake_minimum_required(VERSION 3.14) project("UwU Engine" VERSION 0.1.0) set(OUTPUT_DIR ${CMAKE_BINARY_DIR}/bin) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${OUTPUT_DIR}) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${OUTPUT_DIR}) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${OUTPUT_DIR}) # Build mode set(BUILD_MODE "All" CACHE STRING "Build mode: Engine / Tests / TestGame / All") set_property(CACHE BUILD_MODE PROPERTY STRINGS "Engine" "Tests" "TestGame" "All") if(NOT MSVC) set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g") endif() #if(MSVC) # add_compile_options(/GR-) #else() # add_compile_options(-fno-rtti) #endif() if(BUILD_MODE STREQUAL "Engine") add_subdirectory(FastRTTI) add_subdirectory(glfw) add_subdirectory(RenderEngineSDK) add_subdirectory(UwURenderEngine) add_subdirectory(Core) add_subdirectory(ProjectGenerator) elseif(BUILD_MODE STREQUAL "Tests") add_subdirectory(Tests) elseif(BUILD_MODE STREQUAL "TestGame") add_subdirectory(FastRTTI) add_subdirectory(glfw) add_subdirectory(RenderEngineSDK) add_subdirectory(UwURenderEngine) add_subdirectory(Core) add_subdirectory(TestGame) elseif(BUILD_MODE STREQUAL "All") add_subdirectory(FastRTTI) add_subdirectory(glfw) add_subdirectory(RenderEngineSDK) add_subdirectory(UwURenderEngine) add_subdirectory(Core) add_subdirectory(ProjectGenerator) add_subdirectory(TestGame) add_subdirectory(Tests) endif()