# -*- mode: python -*-

Import([
    "env",
    "get_option",
])

env = env.Clone()

env.Library(
    target='query_shape',
    source=[
        'query_shape.cpp',
        'shape_helpers.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/exec/document_value/document_value',
        '$BUILD_DIR/mongo/db/pipeline/field_path',
        '$BUILD_DIR/mongo/db/server_base',
        'query_shape_common',
    ],
)

env.Library(
    target='query_shape_hash',
    source=[
        'query_shape_hash.idl',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/crypto/sha256_block',
    ],
)

env.Library(
    target='query_shape_common',
    source=[
        'query_shape.idl',
        'serialization_options.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/exec/document_value/document_value',
        '$BUILD_DIR/mongo/db/pipeline/field_path',
    ],
)

env.CppUnitTest(
    target="db_query_query_shape_test",
    source=[
        "query_shape_test.cpp",
        "query_shape_test.idl",
    ],
    LIBDEPS=[
        "$BUILD_DIR/mongo/db/auth/authmocks",
        "$BUILD_DIR/mongo/db/query/query_test_service_context",
        "$BUILD_DIR/mongo/db/service_context_d_test_fixture",
        "query_shape",
    ],
)
