cmake_minimum_required(VERSION 3.31) project(BeyondDepth C) set(CMAKE_C_STANDARD 23) # set the output directory for built objects. # This makes sure that the dynamic library goes into the build directory automatically. set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/$") set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/$") # This assumes the SDL source is available in SDL add_subdirectory(external/SDL EXCLUDE_FROM_ALL) add_subdirectory(external/cglm EXCLUDE_FROM_ALL) #add_subdirectory(glad EXCLUDE_FROM_ALL) # Create your game executable target as usual add_executable(BeyondDepth src/main.c src/engine/core/logger/log.c src/engine/renderer/camera/camera.c src/engine/renderer/camera/camera.h external/glad/src/glad.c src/engine/renderer/shaders/shader.c src/engine/renderer/shaders/shader.h src/engine/renderer/data/engine_data.h src/engine/renderer/mesh/mesh.c src/engine/renderer/mesh/mesh.h) set_target_properties(BeyondDepth PROPERTIES WIN32_EXECUTABLE FALSE) target_include_directories(BeyondDepth PRIVATE external/glad/include) target_link_libraries(BeyondDepth PRIVATE SDL3::SDL3 cglm)