cmake_minimum_required(VERSION 3.20)

if (NOT DEFINED ENV{ESP_IDF_VERSION})

    file(GLOB_RECURSE SOURCES "Source/*.c*")
    file(GLOB_RECURSE HEADERS "Source/*.h*")

    add_library(simulator OBJECT)

    target_sources(simulator
        PRIVATE ${SOURCES}
        PUBLIC ${HEADERS}
    )

    target_link_libraries(simulator
        PRIVATE TactilityKernel
        PRIVATE TactilityFreeRtos
        PRIVATE lvgl
        PRIVATE SDL2-static
    )

    target_link_libraries(simulator PRIVATE ${SDL2_LIBRARIES})

    if (APPLE)
        target_sources(simulator PRIVATE Source/drivers/sdl_audio_permission.mm)
        target_link_libraries(simulator PRIVATE "-framework AVFoundation" "-framework Foundation")
        # The developer executable can also request recording outside an .app bundle.
        target_link_options(simulator INTERFACE
            "LINKER:-sectcreate,__TEXT,__info_plist,${CMAKE_CURRENT_SOURCE_DIR}/macos-info.plist")
        set_property(TARGET Tactility APPEND PROPERTY LINK_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/macos-info.plist")
    endif ()

endif()
