"""
@file
@defgroup rtctk_componentFramework_services_testSupport_pybindings Test Support Python Bindings
@ingroup rtctk_componentFramework_services_testSupport

@internal
@brief Test support helper routines for Python and Python binding tests.

@copyright
  SPDX-FileCopyrightText: 2026 European Southern Observatory (ESO) @n
  SPDX-License-Identifier: LGPL-3.0-only
"""

from wtools.module import declare_cshlib

declare_cshlib(
    target="rtctk/test",
    features="pyext",
    # Hiding symbols to avoid compiler warnings, to generate smaller binaries, and for
    # proper pybind11 operation (according to pybind11 FAQ).
    cxxflags="-fvisibility=hidden",
    use=[
        "pybind11",
        "componentFramework.interfaces.rtctkif-cxx",
        "componentFramework.services.common",
    ],
    ut_attrs=dict(
        use=lambda pkgs, _: pkgs
        + [
            "componentFramework.services.testSupport.common",
        ],
        ldflags="-rdynamic",
        features="pyext pyembed",
    ),
    install_path="${PYTHONDIR}/rtctk",
    valgrind_suppression=["test/valgrind.supp"],
)
