if(BUILD_PYTHON)

# wfm_sink — handle extension: typed `StreamSink` over `wfm_stream_sink` (gh-306).
# The resource logic lives in the backing _core.c; this is pure generated glue.
# Generated by just-makeit from [module.wfm_sink] — edit the manifest, not this.
Python3_add_library(wfm_sink MODULE WITH_SOABI wfm_sink_ext.c)
target_link_libraries(wfm_sink PRIVATE
    wfm_sink_core
    $<TARGET_OBJECTS:stream_core_obj>
    telemetry_core
    nats_vendor_static
    Threads::Threads
    m
    Python3::NumPy)
target_include_directories(wfm_sink PRIVATE ${CMAKE_SOURCE_DIR}/native/inc)
set_target_properties(wfm_sink PROPERTIES
    LIBRARY_OUTPUT_DIRECTORY "${PYTHON_PACKAGE_DIR}/wfm"
    RUNTIME_OUTPUT_DIRECTORY "${PYTHON_PACKAGE_DIR}/wfm")
add_custom_command(TARGET wfm_sink POST_BUILD
    COMMAND ${CMAKE_COMMAND} -E copy_if_different
        "$<TARGET_FILE:wfm_sink>"
        "${PYTHON_PACKAGE_DIR}/wfm/$<TARGET_FILE_NAME:wfm_sink>"
    VERBATIM
    COMMENT "Copy wfm_sink extension module")

endif()
