# Vulkan playground. Links the engine (and its third-party libraries), and
# can also include the engine's internal headers from engine/src.
file(GLOB_RECURSE SOURCES CONFIGURE_DEPENDS *.cpp)

add_executable(sandbox ${SOURCES})

target_compile_definitions(sandbox PRIVATE
  SANDBOX_SHADER_DIR="${CMAKE_CURRENT_SOURCE_DIR}/shaders"
)

# engine/include comes in through the engine's public include path.
target_include_directories(sandbox PRIVATE
  "${CMAKE_SOURCE_DIR}/engine/src"
)

# The engine publicly provides vulkan, vma, shaderc, glfw, glm, imgui, entt
# and Tracy, plus the GLM defines. The rest are engine-private.
target_link_libraries(sandbox PRIVATE
  ${PROJECT_NAME}
  imguizmo
  stb_image
)
