Import("env")

env = env.Clone()

sorterEnv = env.Clone()
sorterEnv.InjectThirdParty(libraries=['snappy'])

sorterEnv.CppUnitTest(
    target='db_sorter_test',
    source=[
        'sorter_test.cpp',
        'sorter_stats_test.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/db/exec/document_value/document_value',
        '$BUILD_DIR/mongo/db/query/query_knobs',
        '$BUILD_DIR/mongo/db/query/spill_util',
        '$BUILD_DIR/mongo/db/service_context',
        '$BUILD_DIR/mongo/db/storage/encryption_hooks',
        '$BUILD_DIR/mongo/db/storage/storage_options',
        '$BUILD_DIR/mongo/s/is_mongos',
        '$BUILD_DIR/third_party/shim_snappy',
        'sorter_idl',
        'sorter_stats',
    ],
)

sorterEnv.Library(
    target='sorter_stats', source=[
        'sorter_stats.cpp',
    ], LIBDEPS_PRIVATE=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/commands/server_status_core',
    ])

env.Library(
    target='sorter_idl',
    source=[
        'sorter.idl',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/stats/counters',
        '$BUILD_DIR/mongo/idl/idl_parser',
        'sorter_stats',
    ],
    LIBDEPS_PRIVATE=[
        '$BUILD_DIR/mongo/db/server_base',
    ],
)
