cmake_minimum_required(VERSION 3.21)
project(finish-play-sound-wasm-sdl3-c)

# Задаем название будущего приложения (в Windows это был бы app.exe, а в вебе будет app.js / app.wasm)
add_executable(app)

# Устанавливаем стандарт C
set(CMAKE_C_STANDARD 11)

# Указываем точное местоположение конфигурационных файлов библиотеки SDL3
# Имя переменной должно строго соответствовать: НазваниеБиблиотеки_DIR
set(SDL3_DIR "C:/libs/SDL3-devel-3.4.0-wasm/lib/cmake/SDL3")
set(SDL3_mixer_DIR "C:/libs/SDL3_mixer-devel-3.1.2-wasm/lib/cmake/SDL3_mixer")

# Проверяем наличие библиотек в системе
# Если она не будет найдены, CMake прервет настройку с ошибкой
# REQUIRED - переводится, как «обязательно» или «требуется»
find_package(SDL3 REQUIRED)
find_package(SDL3_mixer REQUIRED)

# Привязываем библиотеки к нашему приложению (настройка линковки и путей include)
target_link_libraries(app PRIVATE SDL3_mixer::SDL3_mixer SDL3::SDL3)

# Добавляем исходный код к проекту
target_sources(app
    PRIVATE
    src/main.c
)

# Встраиваем аудио-файл в файл app.wasm
if (EMSCRIPTEN)
    target_link_options("app" PRIVATE "SHELL:--embed-file \"${CMAKE_CURRENT_SOURCE_DIR}/assets/audio/Picked Coin Echo 2.wav@/assets/audio/Picked Coin Echo 2.wav\"")

    set_property(TARGET "app" APPEND PROPERTY LINK_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/assets/audio/Picked Coin Echo 2.wav")
endif()
