# -*- mode: python -*- Import("env") env = env.Clone() env.SConscript( dirs=[ 'biggie', 'devnull', 'ephemeral_for_test', 'kv', 'mobile', 'wiredtiger', ], exports=[ 'env' ], ) env.Library( target='journal_listener', source=[ 'journal_listener.cpp', ], LIBDEPS=[ ], ) env.Library( target='index_entry_comparison', source=[ 'index_entry_comparison.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/namespace_string', 'duplicate_key_error_info', 'key_string', ], ) env.Library( target='duplicate_key_error_info', source=[ 'duplicate_key_error_info.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', ], ) env.Library( target='recovery_unit_base', source=[ 'recovery_unit.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', ], ) env.Library( target='key_string', source=[ 'key_string.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', ], ) env.Library( target='bson_collection_catalog_entry', source=[ 'bson_collection_catalog_entry.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/catalog/collection_options', '$BUILD_DIR/mongo/db/common', '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/db/storage/kv/kv_prefix', ], ) env.Library( target='oplog_hack', source=[ 'oplog_hack.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', ] ) env.Library( target='oplog_cap_maintainer_thread', source=[ 'oplog_cap_maintainer_thread.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/util/background_job', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/catalog/collection', '$BUILD_DIR/mongo/db/catalog/collection_catalog', '$BUILD_DIR/mongo/db/catalog/database_holder', '$BUILD_DIR/mongo/db/concurrency/lock_manager', '$BUILD_DIR/mongo/db/namespace_string', '$BUILD_DIR/mongo/db/service_context', ], ) env.Library( target='storage_options', source=[ 'storage_options.cpp', env.Idlc('storage_parameters.idl')[0], ], LIBDEPS=[ '$BUILD_DIR/mongo/base', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/idl/server_parameter', ], ) env.Library( target='encryption_hooks', source= [ 'encryption_hooks.cpp', ], LIBDEPS= ['$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/service_context'], PROGDEPS_DEPENDENTS=[ '$BUILD_DIR/mongo/mongod', '$BUILD_DIR/mongo/mongos', ], ) env.Library( target='backup_cursor_hooks', source=[ 'backup_cursor_hooks.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/service_context', ], PROGDEPS_DEPENDENTS=[ '$BUILD_DIR/mongo/mongod', ], ) env.Library( target='sorted_data_interface_test_harness', source=[ 'sorted_data_interface_test_bulkbuilder.cpp', 'sorted_data_interface_test_cursor.cpp', 'sorted_data_interface_test_cursor_advanceto.cpp', 'sorted_data_interface_test_cursor_end_position.cpp', 'sorted_data_interface_test_cursor_locate.cpp', 'sorted_data_interface_test_cursor_saverestore.cpp', 'sorted_data_interface_test_cursor_seek_exact.cpp', 'sorted_data_interface_test_dupkeycheck.cpp', 'sorted_data_interface_test_fullvalidate.cpp', 'sorted_data_interface_test_harness.cpp', 'sorted_data_interface_test_insert.cpp', 'sorted_data_interface_test_isempty.cpp', 'sorted_data_interface_test_rollback.cpp', 'sorted_data_interface_test_spaceused.cpp', 'sorted_data_interface_test_unindex.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/storage/storage_options', '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/unittest/unittest', 'index_entry_comparison', 'key_string', ], ) env.Library( target='record_store_test_harness', source=[ 'record_store_test_capped_delete.cpp', 'record_store_test_capped_visibility.cpp', 'record_store_test_datafor.cpp', 'record_store_test_datasize.cpp', 'record_store_test_deleterecord.cpp', 'record_store_test_harness.cpp', 'record_store_test_insertrecord.cpp', 'record_store_test_oplog.cpp', 'record_store_test_randomiter.cpp', 'record_store_test_recorditer.cpp', 'record_store_test_recordstore.cpp', 'record_store_test_storagesize.cpp', 'record_store_test_truncate.cpp', 'record_store_test_updaterecord.cpp', 'record_store_test_updatewithdamages.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/db/storage/storage_options', '$BUILD_DIR/mongo/unittest/unittest', ], ) env.Library( target='recovery_unit_test_harness', source=[ 'recovery_unit_test_harness.cpp' ], LIBDEPS=[ '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/unittest/unittest', ], ) env.Library( target='storage_engine_lock_file', source=[ 'storage_engine_lock_file.cpp', 'storage_engine_lock_file_${TARGET_OS_FAMILY}.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/service_context', ], ) env.Library( target='storage_engine_common', source=[ 'storage_engine_init.cpp' ], LIBDEPS=[ ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/db/concurrency/lock_manager', 'storage_engine_lock_file', 'storage_repair_observer', 'storage_engine_metadata', 'storage_options', ], ) env.Library( target="storage_init_d", source=[ "storage_init.cpp", ], LIBDEPS=[ "storage_options", ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/commands/server_status', 'backup_cursor_hooks' ] ) env.Library( target="write_unit_of_work", source=[ "write_unit_of_work.cpp", ], LIBDEPS_PRIVATE=[ "$BUILD_DIR/mongo/base", "$BUILD_DIR/mongo/db/storage/storage_options", '$BUILD_DIR/mongo/util/fail_point', 'recovery_unit_base', ], ) env.Library( target='storage_engine_metadata', source=[ 'storage_engine_metadata.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/server_options_core', '$BUILD_DIR/mongo/db/bson/dotted_path_support', ], ) env.Library( target='storage_file_util', source=[ 'storage_file_util.cpp', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/base', ], ) env.Library( target='storage_repair_observer', source=[ 'storage_repair_observer.cpp', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/dbhelpers', '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/db/repl/replica_set_messages', 'storage_file_util', ], ) env.Benchmark( target='storage_key_string_bm', source='key_string_bm.cpp', LIBDEPS=[ 'key_string', '$BUILD_DIR/mongo/base', ], ) env.Library( target='remove_saver', source=[ 'remove_saver.cpp', ], LIBDEPS=[ 'encryption_hooks', 'storage_options', '$BUILD_DIR/mongo/base', ] ) env.Library( target='flow_control_parameters', source=[ env.Idlc('flow_control_parameters.idl')[0], ], LIBDEPS=[ '$BUILD_DIR/mongo/idl/server_parameter', ], ) env.Library( target='flow_control', source=[ 'flow_control.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/db/commands/server_status', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/concurrency/flow_control_ticketholder', '$BUILD_DIR/mongo/db/concurrency/lock_manager', '$BUILD_DIR/mongo/db/server_options_core', '$BUILD_DIR/mongo/db/service_context', '$BUILD_DIR/mongo/util/background_job', '$BUILD_DIR/mongo/util/fail_point', 'flow_control_parameters', ], ) env.CppUnitTest( target='db_storage_test', source=[ 'flow_control_test.cpp', 'index_entry_comparison_test.cpp', 'key_string_test.cpp', 'kv/durable_catalog_test.cpp', 'kv/kv_drop_pending_ident_reaper_test.cpp', 'kv/storage_engine_test.cpp', 'storage_engine_lock_file_test.cpp', 'storage_engine_metadata_test.cpp', 'storage_repair_observer_test.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/auth/authmocks', '$BUILD_DIR/mongo/db/catalog/collection_options', '$BUILD_DIR/mongo/db/catalog_raii', '$BUILD_DIR/mongo/db/concurrency/flow_control_ticketholder', '$BUILD_DIR/mongo/db/dbhelpers', '$BUILD_DIR/mongo/db/namespace_string', '$BUILD_DIR/mongo/db/repl/replmocks', '$BUILD_DIR/mongo/db/repl/topology_coordinator', '$BUILD_DIR/mongo/db/service_context_d_test_fixture', '$BUILD_DIR/mongo/db/service_context_test_fixture', '$BUILD_DIR/mongo/db/storage/devnull/storage_devnull_core', '$BUILD_DIR/mongo/db/storage/durable_catalog_impl', '$BUILD_DIR/mongo/db/storage/ephemeral_for_test/ephemeral_for_test_record_store', '$BUILD_DIR/mongo/db/storage/ephemeral_for_test/storage_ephemeral_for_test_core', '$BUILD_DIR/mongo/db/storage/storage_engine_impl', '$BUILD_DIR/mongo/db/storage/storage_repair_observer', '$BUILD_DIR/mongo/db/storage/ephemeral_for_test/storage_ephemeral_for_test_core', '$BUILD_DIR/mongo/executor/network_interface_factory', '$BUILD_DIR/mongo/executor/network_interface_mock', 'flow_control', 'flow_control_parameters', 'key_string', 'kv/kv_drop_pending_ident_reaper', 'storage_engine_lock_file', 'storage_engine_metadata', 'storage_repair_observer', ], ) env.Library( target='durable_catalog_impl', source=[ 'durable_catalog_impl.cpp', ], LIBDEPS=[ '$BUILD_DIR/mongo/bson/util/bson_extract', '$BUILD_DIR/mongo/db/concurrency/lock_manager', '$BUILD_DIR/mongo/db/index/index_descriptor', '$BUILD_DIR/mongo/db/index_names', '$BUILD_DIR/mongo/db/namespace_string', '$BUILD_DIR/mongo/db/storage/bson_collection_catalog_entry', '$BUILD_DIR/mongo/db/storage/kv/kv_drop_pending_ident_reaper', '$BUILD_DIR/mongo/db/storage/kv/kv_prefix', '$BUILD_DIR/mongo/db/catalog/collection_catalog', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/catalog/index_timestamp_helper', '$BUILD_DIR/mongo/db/server_options_core', ], ) env.Library( target='storage_engine_impl', source=[ 'storage_engine_impl.cpp', 'kv/temporary_kv_record_store.cpp', # TODO: SERVER-41892 Avoid source under kv sub-directory ], LIBDEPS=[ '$BUILD_DIR/mongo/base', '$BUILD_DIR/mongo/db/catalog/catalog_control', '$BUILD_DIR/mongo/db/server_options_core', '$BUILD_DIR/mongo/db/storage/durable_catalog_impl', '$BUILD_DIR/mongo/db/storage/kv/kv_drop_pending_ident_reaper', '$BUILD_DIR/mongo/db/storage/storage_options', ], LIBDEPS_PRIVATE=[ '$BUILD_DIR/mongo/db/logical_clock', '$BUILD_DIR/mongo/db/storage/storage_repair_observer', '$BUILD_DIR/mongo/db/catalog/collection_catalog_helper', ], ) env.CppLibfuzzerTest( target='key_string_to_bson_fuzzer', source=[ 'key_string_to_bson_fuzzer.cpp', ], LIBDEPS=[ 'key_string', '$BUILD_DIR/mongo/base', ], )