summaryrefslogtreecommitdiff
path: root/src/mongo/db/exec/sbe/SConscript
blob: 0bc3157699e0ae89cb5707564fcc2a592c740228 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# -*- mode: python -*-

Import("env")

env.Library(
    target='query_sbe_plan_stats',
    source=[
        'stages/plan_stats.cpp',
        ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        ]
    )

env.Library(
    target='query_sbe_values',
    source=[
        'values/bson.cpp',
        'values/value.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/fts/base_fts',
        '$BUILD_DIR/mongo/db/query/collation/collator_interface',
        '$BUILD_DIR/mongo/db/query/datetime/date_time_support',
        '$BUILD_DIR/mongo/db/storage/key_string',
        '$BUILD_DIR/mongo/util/regex_util',
    ]
)

sbeEnv = env.Clone()
sbeEnv.InjectThirdParty(libraries=['snappy'])
sbeEnv.Library(
    target='query_sbe',
    source=[
        'expressions/expression.cpp',
        'stages/branch.cpp',
        'stages/bson_scan.cpp',
        'stages/check_bounds.cpp',
        'stages/co_scan.cpp',
        'stages/exchange.cpp',
        'stages/hash_agg.cpp',
        'stages/hash_join.cpp',
        'stages/limit_skip.cpp',
        'stages/loop_join.cpp',
        'stages/makeobj.cpp',
        'stages/merge_join.cpp',
        'stages/project.cpp',
        'stages/sort.cpp',
        'stages/sorted_merge.cpp',
        'stages/spool.cpp',
        'stages/traverse.cpp',
        'stages/union.cpp',
        'stages/unique.cpp',
        'stages/unwind.cpp',
        'util/debug_print.cpp',
        'values/slot.cpp',
        'vm/arith.cpp',
        'vm/datetime.cpp',
        'vm/vm.cpp',
        ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/base',
        '$BUILD_DIR/mongo/db/exec/js_function',
        '$BUILD_DIR/mongo/db/exec/scoped_timer',
        '$BUILD_DIR/mongo/db/query/plan_yield_policy',
        '$BUILD_DIR/mongo/db/query/query_planner',
        '$BUILD_DIR/mongo/db/service_context',
        '$BUILD_DIR/mongo/db/storage/encryption_hooks',
        '$BUILD_DIR/mongo/db/storage/index_entry_comparison',
        '$BUILD_DIR/mongo/util/concurrency/thread_pool',
        '$BUILD_DIR/third_party/shim_snappy',
        'query_sbe_plan_stats',
        'query_sbe_values',
        ],
    LIBDEPS_PRIVATE=[
        '$BUILD_DIR/mongo/db/sorter/sorter_idl',
         ]
    )

env.Library(
    target='query_sbe_storage',
    source=[
        'stages/collection_helpers.cpp',
        'stages/ix_scan.cpp',
        'stages/scan.cpp',
        ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/db/db_raii',
        'query_sbe'
        ]
    )

env.Library(
    target='query_sbe_parser',
    source=[
        'parser/parser.cpp',
        ],
    LIBDEPS=[
        'query_sbe',
        'query_sbe_storage'
        ]
    )

env.Library(
    target='sbe_plan_stage_test',
    source=[
        'sbe_plan_stage_test.cpp',
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/db/query/sbe_stage_builder_helpers',
        '$BUILD_DIR/mongo/unittest/unittest',
        'query_sbe',
    ],
    LIBDEPS_TYPEINFO=[
        '$BUILD_DIR/mongo/db/service_context_test_fixture'
    ],
)

env.CppUnitTest(
    target='db_sbe_test',
    source=[
        'expressions/sbe_bson_size_test.cpp',
        'expressions/sbe_coerce_to_string_test.cpp',
        'expressions/sbe_concat_test.cpp',
        'expressions/sbe_date_add_test.cpp',
        'expressions/sbe_date_diff_test.cpp',
        'expressions/sbe_date_to_parts_test.cpp',
        'expressions/sbe_day_of_expressions_test.cpp',
        'expressions/sbe_extract_sub_array_builtin_test.cpp',
        'expressions/sbe_get_element_builtin_test.cpp',
        'expressions/sbe_index_of_test.cpp',
        'expressions/sbe_is_array_empty_builtin_test.cpp',
        'expressions/sbe_is_member_builtin_test.cpp',
        'expressions/sbe_iso_date_to_parts_test.cpp',
        'expressions/sbe_mod_expression_test.cpp',
        'expressions/sbe_regex_test.cpp',
        'expressions/sbe_replace_one_expression_test.cpp',
        'expressions/sbe_reverse_array_builtin_test.cpp',
        'expressions/sbe_set_expressions_test.cpp',
        'expressions/sbe_shard_filter_builtin_test.cpp',
        'expressions/sbe_to_upper_to_lower_test.cpp',
        'expressions/sbe_trigonometric_expressions_test.cpp',
        'expressions/sbe_trunc_builtin_test.cpp',
        'parser/sbe_parser_test.cpp',
        'sbe_filter_test.cpp',
        'sbe_hash_agg_test.cpp',
        'sbe_hash_join_test.cpp',
        'sbe_key_string_test.cpp',
        'sbe_limit_skip_test.cpp',
        'sbe_math_builtins_test.cpp',
        'sbe_mkobj_test.cpp',
        'sbe_merge_join_test.cpp',
        'sbe_numeric_convert_test.cpp',
        'sbe_sort_test.cpp',
        'sbe_sorted_merge_test.cpp',
        'sbe_test.cpp',
        'sbe_unique_test.cpp',
        'values/value_serialize_for_sorter_test.cpp',
        'values/write_value_to_stream_test.cpp'
    ],
    LIBDEPS=[
        '$BUILD_DIR/mongo/db/concurrency/lock_manager',
        '$BUILD_DIR/mongo/db/query/collation/collator_interface_mock',
        '$BUILD_DIR/mongo/db/service_context_test_fixture',
        'query_sbe_parser',
        'sbe_plan_stage_test',
    ],
)