cmake_minimum_required(VERSION 3.28) project(oatmeal) set(CMAKE_CXX_STANDARD 20) # Include the libary add_subdirectory(oatmeal) file(GLOB CMAKE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/cmake/*.cmake") foreach(cmake_file ${CMAKE_FILES}) include(${cmake_file}) endforeach() # TODO: Add a check to disable compiling the examples set(ASSET_DIR "assets/") set(SHADERS_DIR "assets/shaders") create_copy_folder_target(copy_assets ${CMAKE_CURRENT_SOURCE_DIR}/assets ${CMAKE_CURRENT_BINARY_DIR}/assets) create_slang_shader_target(slang_shaders "${SHADERS_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/${SHADERS_DIR}" ) create_glslc_shader_target(glsl_shaders "${SHADERS_DIR}" "${CMAKE_CURRENT_BINARY_DIR}/${SHADERS_DIR}" ) add_subdirectory(examples/shared) add_subdirectory(examples/basicGLFWWindow) add_subdirectory(examples/logging) add_subdirectory(examples/createContext)