Import("env")

env.Library(
    target= 'in_memory_record_store',
    source= [
        'in_memory_record_store.cpp'
        ],
    LIBDEPS= [
        '$BUILD_DIR/mongo/bson',
        '$BUILD_DIR/mongo/db/storage/oplog_hack',
        '$BUILD_DIR/mongo/foundation',
        ]
    )

env.Library(
    target= 'storage_in_memory_core',
    source= [
        'in_memory_btree_impl.cpp',
        'in_memory_engine.cpp',
        'in_memory_recovery_unit.cpp',
        ],
    LIBDEPS= [
        'in_memory_record_store',
        '$BUILD_DIR/mongo/bson',
        '$BUILD_DIR/mongo/db/catalog/collection_options',
        '$BUILD_DIR/mongo/db/index/index_descriptor',
        '$BUILD_DIR/mongo/db/storage/index_entry_comparison',
        '$BUILD_DIR/mongo/foundation',
        ]
    )

env.Library(
    target= 'storage_in_memory',
    source= [
        'in_memory_init.cpp',
        ],
    LIBDEPS= [
        'storage_in_memory_core',
        '$BUILD_DIR/mongo/db/storage/kv/kv_engine'
        ]
    )

env.CppUnitTest(
   target='storage_in_memory_btree_test',
   source=['in_memory_btree_impl_test.cpp'
           ],
   LIBDEPS=[
        'storage_in_memory_core',
        '$BUILD_DIR/mongo/db/storage/sorted_data_interface_test_harness'
        ]
   )

env.CppUnitTest(
   target='storage_in_memory_record_store_test',
   source=['in_memory_record_store_test.cpp'
           ],
   LIBDEPS=[
        'storage_in_memory_core',
        '$BUILD_DIR/mongo/db/storage/record_store_test_harness'
        ]
   )

env.CppUnitTest(
    target='storage_in_memory_engine_test',
    source=['in_memory_engine_test.cpp',
            ],
    LIBDEPS=[
        'storage_in_memory_core',
        '$BUILD_DIR/mongo/db/storage/kv/kv_engine_test_harness',
        ],
    )
