# SPDX-License-Identifier: GPL-2.0-or-later
# SPDX-FileCopyrightText: Copyright (C) 2026 Max A. Vilkki a.k.a. codise
#
# flipsid::recording: an audio input recorded to WAV through miniaudio (DESIGN §7.3, "The
# recording tool"), and the sine check that validates it. Used by tools/sid_record now,
# and later by the app's own recording (#165, #171) and bug-report samples (#433). FLAC
# comes with #171.

add_library(flipsid_recording STATIC
    capture.cpp
    sine_check.cpp
    wav_file.cpp
)
add_library(flipsid::recording ALIAS flipsid_recording)

target_include_directories(flipsid_recording PUBLIC
    "${CMAKE_CURRENT_SOURCE_DIR}/include"
)

# flipsid::output for its device IDs (miniaudio_ids.h), so one device has the same ID for
# playback and capture. miniaudio stays PRIVATE, as in flipsid::output.
target_link_libraries(flipsid_recording
    PUBLIC flipsid::common
    PRIVATE flipsid::output ext::miniaudio
)

flipsid_configure_target(flipsid_recording)
