cmake_minimum_required(VERSION 3.22.1)
project(transui_mp3 LANGUAGES C)

set(SHINE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../../../third_party/shine/src/lib")
set(TRANSUI_MP3_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../../../../third_party/transui_mp3")

add_library(transui_mp3 SHARED
  native_mp3_encoder.c
  "${TRANSUI_MP3_DIR}/transui_mp3.c"
  "${SHINE_DIR}/bitstream.c"
  "${SHINE_DIR}/huffman.c"
  "${SHINE_DIR}/l3bitstream.c"
  "${SHINE_DIR}/l3loop.c"
  "${SHINE_DIR}/l3mdct.c"
  "${SHINE_DIR}/l3subband.c"
  "${SHINE_DIR}/layer3.c"
  "${SHINE_DIR}/reservoir.c"
  "${SHINE_DIR}/tables.c"
)

target_compile_features(transui_mp3 PRIVATE c_std_11)
target_compile_options(transui_mp3 PRIVATE -Wall -Wextra)
target_include_directories(transui_mp3 PRIVATE "${TRANSUI_MP3_DIR}" "${SHINE_DIR}")
target_link_libraries(transui_mp3 PRIVATE m)
