diff options
author | Daniel Moody <daniel.moody@mongodb.com> | 2022-09-24 00:44:58 -0500 |
---|---|---|
committer | Daniel Moody <daniel.moody@mongodb.com> | 2022-09-24 00:44:58 -0500 |
commit | 8aae61588ba8821372ec4483e508818d025e0aa8 (patch) | |
tree | ab3672ad73c569f9004ed09fe78bf2a32bfb22f7 | |
parent | 55dc619c1e1d5a7555755b55468fd372427b0d6f (diff) | |
download | mongo-8aae61588ba8821372ec4483e508818d025e0aa8.tar.gz |
building working on linux with ninja
-rwxr-xr-x | SConstruct | 9 | ||||
-rw-r--r-- | site_scons/site_tools/protobuf_compiler.py | 111 | ||||
-rw-r--r-- | src/third_party/SConscript | 30 | ||||
-rw-r--r-- | src/third_party/cares/SConscript | 123 | ||||
-rwxr-xr-x | src/third_party/cares/scripts/host_config.sh | 2 | ||||
-rw-r--r-- | src/third_party/grpc/SConscript | 817 | ||||
-rw-r--r-- | src/third_party/protobuf/SConscript | 349 | ||||
-rwxr-xr-x | src/third_party/protobuf/scripts/host_config.sh | 46 | ||||
-rw-r--r-- | src/third_party/re2/SConscript | 52 | ||||
-rwxr-xr-x | src/third_party/re2/scripts/host_config.sh | 45 |
10 files changed, 1206 insertions, 378 deletions
diff --git a/SConstruct b/SConstruct index a2029692872..67e0c2f4498 100755 --- a/SConstruct +++ b/SConstruct @@ -886,6 +886,7 @@ def variable_tools_converter(val): "distsrc", "gziptool", "idl_tool", + "protobuf_compiler", "jsheader", "mongo_test_execution", "mongo_test_list", @@ -1329,6 +1330,12 @@ env_vars.Add( ) env_vars.Add( + 'PROTOC', + default="$DESTDIR/bin/protoc", + help='Path to protobuf compiler.', +) + +env_vars.Add( 'SPLIT_DWARF', help='Set the boolean (auto, on/off true/false 1/0) to enable gsplit-dwarf (non-Windows).', converter=split_dwarf_converter, default="auto") @@ -2008,7 +2015,7 @@ env['BUILDERS']['SharedArchive'] = SCons.Builder.Builder( # Teach builders how to build idl files for builder in ['SharedObject', 'StaticObject']: env['BUILDERS'][builder].add_src_builder("Idlc") - + env['BUILDERS'][builder].add_src_builder("Protoc") if link_model.startswith("dynamic"): if link_model == "dynamic" and visibility_annotations_enabled: diff --git a/site_scons/site_tools/protobuf_compiler.py b/site_scons/site_tools/protobuf_compiler.py new file mode 100644 index 00000000000..46178e4cc23 --- /dev/null +++ b/site_scons/site_tools/protobuf_compiler.py @@ -0,0 +1,111 @@ +# Copyright 2022 MongoDB Inc. +# +# Permission is hereby granted, free of charge, to any person obtaining +# a copy of this software and associated documentation files (the +# "Software"), to deal in the Software without restriction, including +# without limitation the rights to use, copy, modify, merge, publish, +# distribute, sublicense, and/or sell copies of the Software, and to +# permit persons to whom the Software is furnished to do so, subject to +# the following conditions: +# +# The above copyright notice and this permission notice shall be included +# in all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE +# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +# +"""Protobuf Compiler Scons Tool.""" + +import os + +import SCons + +def protoc_emitter(target, source, env): + + first_source = str(source[0]) + + if not first_source.endswith(".proto"): + raise ValueError("Bad protoc file name '%s', it must end with '.proto' " % (first_source)) + + base_file_name, _ = SCons.Util.splitext(str(target[0])) + + message_source = env.File(base_file_name + ".grpc.pb.cc") + message_header = env.File(base_file_name + ".grpc.pb.h") + class_source = env.File(base_file_name + ".pb.cc") + class_header = env.File(base_file_name + ".pb.h") + new_targets = [message_source, message_header, class_source, class_header] + + # So we can put these in generated source alias because ninja must generate all sources before + # it will compile anything because it doesn't know how to parse dependencies from generic + # generation inputs. We could teach it by telling it a script to call during the build that + # will output the dep file similar to how gcc will do for make with -MD. But we would need to + # teach it for all generated source before we could stop gen_all before compile. For now we can + # at least make compile_commands.json dependent on these so it still can be used for IDE work. + #env.Alias("generated-sources", new_targets) + env.Depends(env.File("#compile_commands.json"), new_targets) + + return new_targets, source + +def protocActionGen(source, target, env, for_signature): + working_dir = os.path.dirname(target[0].srcnode().path) + cpp_out = os.path.dirname(target[0].path) + os.makedirs(cpp_out, exist_ok=True) + protoc_path = os.path.abspath(env.subst('$PROTOC')) + env['PROTOC_GENOUT_DIR'] = os.path.abspath(cpp_out) + + # protoc doesn't play nice with scons variant dir. It will build in the --cpp_out dir, + # but it always uses the path of the source inside the cpp_out dir. This means you end + # up with really long paths, where most of its duplicated like: + # $BUILD_DIR_PATH/$SOURCE_DIR_PATH/$GENERATED_SOURCE_FILE + # The other option is to change to the source directory and pass the source directly. + return env.subst(f"cd {working_dir} && {protoc_path} $PROTOCFLAGS ${{SOURCE.file}}", target=target, source=source) + +def protoc_scanner(node, env, path): + + # TODO Make this scanner understand how to parse .proto files to find .proto + # dependencies. + deps = [] + protoc_flags = env.Flatten(env.subst_list("$PROTOCFLAGS")) + for flag in protoc_flags: + if '--plugin' in flag: + # this option should have an '=', so we can always take the last token to + # find the path + #https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.compiler.plugin + deps.append(env.File(flag.split('=')[-1])) + deps.append(env.File("$PROTOC")) + + return deps + +protoc_scanner = SCons.Scanner.Scanner(function=protoc_scanner, skeys=[".proto"]) + +def generate(env): + + ProtocAction = SCons.Action.CommandGeneratorAction( + protocActionGen, + {"cmdstr": "Generating Protocal Buffers from ${SOURCE}"} + if not env.get("VERBOSE", "").lower() in ['true', '1'] else {"cmdstr": ""}, + ) + + ProtocBuilder = SCons.Builder.Builder( + action=ProtocAction, + emitter=protoc_emitter, + src_suffix=".proto", + suffix=".cc", + source_scanner=protoc_scanner, + single_source=1, + ) + + env.Append(SCANNERS=protoc_scanner) + + env["BUILDERS"]["Protoc"] = ProtocBuilder + env["PROTOC"] = env.get('PROTOC', env.WhereIs('protoc')) + env["PROTOC_GENOUT_DIR"] = "." + env['PROTOCFLAGS'] = SCons.Util.CLVar('') + +def exists(env): + return True diff --git a/src/third_party/SConscript b/src/third_party/SConscript index 96154757652..6049af931a6 100644 --- a/src/third_party/SConscript +++ b/src/third_party/SConscript @@ -21,7 +21,10 @@ variantSuffix = '-1.4.0' thirdPartyEnvironmentModifications = { 'abseil-cpp': {'CPPPATH': ['#/src/third_party/abseil-cpp-master/abseil-cpp'], }, + 'cares': {'CPPPATH': ['#src/third_party/cares/dist/include', '#src/third_party/cares/platform/${TARGET_OS}_${TARGET_ARCH}/install/include'], }, 'fmt': {'CPPPATH': ['#src/third_party/fmt/dist/include'], }, + 'protobuf': {'CPPPATH': ['#src/third_party/protobuf/dist/src'], }, + 're2': {'CPPPATH': ['#src/third_party/re2/dist'], }, 's2': {'CPPPATH': ['#src/third_party/s2'], }, 'safeint': { 'CPPPATH': ['#src/third_party/SafeInt'], @@ -602,20 +605,13 @@ if get_option('ssl') == 'on': kmsEnv.ShimLibrary(name="kms_message", ) - -cares_env = env.Clone() -#kmsEnv.InjectThirdParty(libraries=['kms-message']) -cares_env.SConscript('cares/SConscript', exports={'env': cares_env}) - - -re2_env = env.Clone() -#kmsEnv.InjectThirdParty(libraries=['kms-message']) -re2_env.SConscript('re2/SConscript', exports={'env': re2_env}) - -protobuf_env = env.Clone() -#kmsEnv.InjectThirdParty(libraries=['kms-message']) -protobuf_env.SConscript('protobuf/SConscript', exports={'env': protobuf_env}) - -grpc_env = env.Clone() -#kmsEnv.InjectThirdParty(libraries=['kms-message']) -grpc_env.SConscript('grpc/SConscript', exports={'env': grpc_env})
\ No newline at end of file +env.SConscript( + dirs=[ + 'cares', + 're2', + 'protobuf', + 'grpc', + ], + duplicate=False, + exports={'env': env} +)
\ No newline at end of file diff --git a/src/third_party/cares/SConscript b/src/third_party/cares/SConscript index 46e4079578f..0e07b85fa35 100644 --- a/src/third_party/cares/SConscript +++ b/src/third_party/cares/SConscript @@ -11,68 +11,73 @@ cares_env.Append(CPPDEFINES=[ cares_root = cares_env.Dir(".").srcnode() cares_platform = cares_root.Dir("platform/${TARGET_OS}_${TARGET_ARCH}") -cares_env.Append(CPPPATH=[cares_platform.Dir("build/include"), cares_platform.Dir("install/include"),]) +cares_env.Append( + CPPPATH=[ + cares_platform.Dir("build/include"), + cares_platform.Dir("install/include"), + ], +) source_files = [ - "dist/src/lib/ares_android.c", - "dist/src/lib/ares_send.c", - "dist/src/lib/ares_search.c", - "dist/src/lib/ares_writev.c", - "dist/src/lib/ares__close_sockets.c", - "dist/src/lib/ares_cancel.c", - "dist/src/lib/ares__read_line.c", - "dist/src/lib/ares__timeval.c", - "dist/src/lib/ares_free_string.c", - "dist/src/lib/ares_fds.c", - "dist/src/lib/ares_free_hostent.c", - "dist/src/lib/ares_freeaddrinfo.c", - "dist/src/lib/ares_destroy.c", - "dist/src/lib/ares_data.c", - "dist/src/lib/ares__get_hostent.c", - "dist/src/lib/ares__readaddrinfo.c", - "dist/src/lib/ares__parse_into_addrinfo.c", - "dist/src/lib/ares__sortaddrinfo.c", - "dist/src/lib/ares_expand_string.c", - "dist/src/lib/inet_net_pton.c", - "dist/src/lib/ares_expand_name.c", - "dist/src/lib/ares_getenv.c", - "dist/src/lib/ares_getsock.c", - "dist/src/lib/ares_mkquery.c", - "dist/src/lib/ares_library_init.c", - "dist/src/lib/ares_nowarn.c", - "dist/src/lib/bitncmp.c", - "dist/src/lib/ares_create_query.c", - "dist/src/lib/ares_llist.c", - "dist/src/lib/ares_gethostbyaddr.c", - "dist/src/lib/ares_getnameinfo.c", - "dist/src/lib/ares_version.c", - "dist/src/lib/ares_gethostbyname.c", - "dist/src/lib/ares_getaddrinfo.c", - "dist/src/lib/ares_parse_a_reply.c", - "dist/src/lib/ares_parse_aaaa_reply.c", - "dist/src/lib/ares_parse_caa_reply.c", - "dist/src/lib/ares_options.c", - "dist/src/lib/ares_parse_mx_reply.c", - "dist/src/lib/ares_strsplit.c", - "dist/src/lib/ares_timeout.c", - "dist/src/lib/ares_parse_naptr_reply.c", - "dist/src/lib/windows_port.c", - "dist/src/lib/ares_platform.c", - "dist/src/lib/ares_strcasecmp.c", - "dist/src/lib/ares_parse_ptr_reply.c", - "dist/src/lib/ares_parse_soa_reply.c", - "dist/src/lib/ares_parse_srv_reply.c", - "dist/src/lib/ares_parse_ns_reply.c", - "dist/src/lib/ares_init.c", - "dist/src/lib/ares_parse_txt_reply.c", - "dist/src/lib/ares_query.c", - "dist/src/lib/ares_strdup.c", - "dist/src/lib/ares_strerror.c", - "dist/src/lib/inet_ntop.c", - "dist/src/lib/ares_process.c", -] cares_env.Library( target='cares', - source=source_files, + source=[ + "dist/src/lib/ares_android.c", + "dist/src/lib/ares_send.c", + "dist/src/lib/ares_search.c", + "dist/src/lib/ares_writev.c", + "dist/src/lib/ares__close_sockets.c", + "dist/src/lib/ares_cancel.c", + "dist/src/lib/ares__read_line.c", + "dist/src/lib/ares__timeval.c", + "dist/src/lib/ares_free_string.c", + "dist/src/lib/ares_fds.c", + "dist/src/lib/ares_free_hostent.c", + "dist/src/lib/ares_freeaddrinfo.c", + "dist/src/lib/ares_destroy.c", + "dist/src/lib/ares_data.c", + "dist/src/lib/ares__get_hostent.c", + "dist/src/lib/ares__readaddrinfo.c", + "dist/src/lib/ares__parse_into_addrinfo.c", + "dist/src/lib/ares__sortaddrinfo.c", + "dist/src/lib/ares_expand_string.c", + "dist/src/lib/inet_net_pton.c", + "dist/src/lib/ares_expand_name.c", + "dist/src/lib/ares_getenv.c", + "dist/src/lib/ares_getsock.c", + "dist/src/lib/ares_mkquery.c", + "dist/src/lib/ares_library_init.c", + "dist/src/lib/ares_nowarn.c", + "dist/src/lib/bitncmp.c", + "dist/src/lib/ares_create_query.c", + "dist/src/lib/ares_llist.c", + "dist/src/lib/ares_gethostbyaddr.c", + "dist/src/lib/ares_getnameinfo.c", + "dist/src/lib/ares_version.c", + "dist/src/lib/ares_gethostbyname.c", + "dist/src/lib/ares_getaddrinfo.c", + "dist/src/lib/ares_parse_a_reply.c", + "dist/src/lib/ares_parse_aaaa_reply.c", + "dist/src/lib/ares_parse_caa_reply.c", + "dist/src/lib/ares_options.c", + "dist/src/lib/ares_parse_mx_reply.c", + "dist/src/lib/ares_strsplit.c", + "dist/src/lib/ares_timeout.c", + "dist/src/lib/ares_parse_naptr_reply.c", + "dist/src/lib/windows_port.c", + "dist/src/lib/ares_platform.c", + "dist/src/lib/ares_strcasecmp.c", + "dist/src/lib/ares_parse_ptr_reply.c", + "dist/src/lib/ares_parse_soa_reply.c", + "dist/src/lib/ares_parse_srv_reply.c", + "dist/src/lib/ares_parse_ns_reply.c", + "dist/src/lib/ares_init.c", + "dist/src/lib/ares_parse_txt_reply.c", + "dist/src/lib/ares_query.c", + "dist/src/lib/ares_strdup.c", + "dist/src/lib/ares_strerror.c", + "dist/src/lib/inet_ntop.c", + "dist/src/lib/ares_process.c", + ], )
\ No newline at end of file diff --git a/src/third_party/cares/scripts/host_config.sh b/src/third_party/cares/scripts/host_config.sh index bb822bb088e..0714c773264 100755 --- a/src/third_party/cares/scripts/host_config.sh +++ b/src/third_party/cares/scripts/host_config.sh @@ -41,5 +41,5 @@ $SRC_DIR/configure \ CC=$TOOLCHAIN_ROOT/bin/gcc CXX=$TOOLCHAIN_ROOT/bin/g++ -make CC=$CC CXX=$CXX -j16 install +make CC=$CC CXX=$CXX install popd diff --git a/src/third_party/grpc/SConscript b/src/third_party/grpc/SConscript index 98b2049fdd5..d134bdbc408 100644 --- a/src/third_party/grpc/SConscript +++ b/src/third_party/grpc/SConscript @@ -1,20 +1,21 @@ Import('env') +import os + grpc_env = env.Clone() grpc_root = grpc_env.Dir(".").srcnode() -grpc_platform = grpc_root.Dir("platform/${TARGET_OS}_${TARGET_ARCH}") -grpc_env.Append(CPPPATH=[grpc_root.Dir('dist'),]) upb_env = grpc_env.Clone() upb_env.Append( CPPPATH=[ grpc_root.Dir('dist/third_party/upb'), grpc_root.Dir('dist/src/core/ext/upb-generated'), - grpc_root.Dir('dist/src/core/ext/upbdefs-generated')], + grpc_root.Dir('dist/src/core/ext/upbdefs-generated'), + ], CCFLAGS=[ '-Wno-sign-compare', - ] + ], ) upb_source = [ @@ -33,13 +34,13 @@ upb_source = [ upb_env.Library( target='upb', - source=upb_source + source=upb_source, ) address_sorting_env = grpc_env.Clone() address_sorting_env.Append( CPPPATH=[ - grpc_root.Dir('dist/third_party/address_sorting/include') + grpc_root.Dir('dist/third_party/address_sorting/include'), ], ) @@ -51,6 +52,808 @@ address_sorting_source = [ address_sorting_env.Library( target='address_sorting', - source=address_sorting_source + source=address_sorting_source, +) +grpc_env.InjectThirdParty(libraries=['abseil-cpp', 're2', 'cares', 'protobuf']) + +grpc_env.Append(CPPPATH=[ + grpc_root.Dir('dist'), + grpc_root.Dir('dist/include'), + grpc_root.Dir('dist/third_party/upb'), + grpc_root.Dir('dist/third_party/xxhash'), + grpc_root.Dir('dist/src/core/ext/upb-generated'), + grpc_root.Dir('dist/src/core/ext/upbdefs-generated'), + grpc_root.Dir('dist/third_party/address_sorting/include'), + grpc_root.Dir('dist/third_party/address_sorting/include'), +]) + + + +grpc_plugin = grpc_env.Program( + target='grpc_cpp_plugin', + source=['dist/src/compiler/cpp_plugin.cc'], + LIBDEPS=[ + 'grpc_plugin_support', + ], + AIB_COMPONENT='protobuf', +) +protobuf_bin = grpc_env.GetAutoInstalledFiles(grpc_plugin[0]) + +grpc_env.Library( + target='grpc_plugin_support', + source=[ + 'dist/src/compiler/cpp_generator.cc', + 'dist/src/compiler/csharp_generator.cc', + 'dist/src/compiler/node_generator.cc', + 'dist/src/compiler/objective_c_generator.cc', + 'dist/src/compiler/php_generator.cc', + 'dist/src/compiler/python_generator.cc', + 'dist/src/compiler/ruby_generator.cc', + ], + LIBDEPS=[ + '$BUILD_DIR/third_party/protobuf/protobuf', + '$BUILD_DIR/third_party/protobuf/protoc', + ], +) + +grpc_env.Library( + target='gpr', + source = [ + "dist/src/core/ext/upb-generated/google/api/annotations.upb.c", + "dist/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c", + "dist/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c", + "dist/src/core/ext/upb-generated/google/api/http.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/any.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/duration.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/empty.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/struct.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c", + "dist/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c", + "dist/src/core/ext/upb-generated/google/rpc/status.upb.c", + "dist/src/core/lib/gpr/alloc.cc", + "dist/src/core/lib/gpr/atm.cc", + "dist/src/core/lib/gpr/cpu_iphone.cc", + "dist/src/core/lib/gpr/cpu_linux.cc", + "dist/src/core/lib/gpr/cpu_posix.cc", + "dist/src/core/lib/gpr/cpu_windows.cc", + "dist/src/core/lib/gpr/env_linux.cc", + "dist/src/core/lib/gpr/env_posix.cc", + "dist/src/core/lib/gpr/env_windows.cc", + "dist/src/core/lib/gpr/log.cc", + "dist/src/core/lib/gpr/log_android.cc", + "dist/src/core/lib/gpr/log_linux.cc", + "dist/src/core/lib/gpr/log_posix.cc", + "dist/src/core/lib/gpr/log_windows.cc", + "dist/src/core/lib/gpr/murmur_hash.cc", + "dist/src/core/lib/gpr/string.cc", + "dist/src/core/lib/gpr/string_posix.cc", + "dist/src/core/lib/gpr/string_util_windows.cc", + "dist/src/core/lib/gpr/string_windows.cc", + "dist/src/core/lib/gpr/sync.cc", + "dist/src/core/lib/gpr/sync_abseil.cc", + "dist/src/core/lib/gpr/sync_posix.cc", + "dist/src/core/lib/gpr/sync_windows.cc", + "dist/src/core/lib/gpr/time.cc", + "dist/src/core/lib/gpr/time_posix.cc", + "dist/src/core/lib/gpr/time_precise.cc", + "dist/src/core/lib/gpr/time_windows.cc", + "dist/src/core/lib/gpr/tls_pthread.cc", + "dist/src/core/lib/gpr/tmpfile_msys.cc", + "dist/src/core/lib/gpr/tmpfile_posix.cc", + "dist/src/core/lib/gpr/tmpfile_windows.cc", + "dist/src/core/lib/gpr/wrap_memcpy.cc", + "dist/src/core/lib/gprpp/arena.cc", + "dist/src/core/lib/gprpp/examine_stack.cc", + "dist/src/core/lib/gprpp/fork.cc", + "dist/src/core/lib/gprpp/global_config_env.cc", + "dist/src/core/lib/gprpp/host_port.cc", + "dist/src/core/lib/gprpp/mpscq.cc", + "dist/src/core/lib/gprpp/stat_posix.cc", + "dist/src/core/lib/gprpp/stat_windows.cc", + "dist/src/core/lib/gprpp/status_helper.cc", + "dist/src/core/lib/gprpp/thd_posix.cc", + "dist/src/core/lib/gprpp/thd_windows.cc", + "dist/src/core/lib/gprpp/time_util.cc", + "dist/src/core/lib/profiling/basic_timers.cc", + "dist/src/core/lib/profiling/stap_timers.cc", + ], + LIBDEPS=[ + '$BUILD_DIR/third_party/abseil-cpp-master/absl_bad_optional_access', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_base', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_civil_time', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_cord', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_debugging_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_demangle_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_graphcycles_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_int128', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_log_severity', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_malloc_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_raw_logging_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_spinlock_wait', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_stacktrace', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_status', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_str_format_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_strings', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_strings_internal', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_symbolize', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_synchronization', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_throw_delegate', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_time', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_time_zone', + 'upb', + ] +) + +grpc_env.Library( + target='grpc', + source=[ + "dist/src/core/ext/filters/census/grpc_context.cc", + "dist/src/core/ext/filters/client_channel/backend_metric.cc", + "dist/src/core/ext/filters/client_channel/backup_poller.cc", + "dist/src/core/ext/filters/client_channel/channel_connectivity.cc", + "dist/src/core/ext/filters/client_channel/client_channel.cc", + "dist/src/core/ext/filters/client_channel/client_channel_channelz.cc", + "dist/src/core/ext/filters/client_channel/client_channel_factory.cc", + "dist/src/core/ext/filters/client_channel/client_channel_plugin.cc", + "dist/src/core/ext/filters/client_channel/config_selector.cc", + "dist/src/core/ext/filters/client_channel/dynamic_filters.cc", + "dist/src/core/ext/filters/client_channel/global_subchannel_pool.cc", + "dist/src/core/ext/filters/client_channel/health/health_check_client.cc", + "dist/src/core/ext/filters/client_channel/http_connect_handshaker.cc", + "dist/src/core/ext/filters/client_channel/http_proxy.cc", + "dist/src/core/ext/filters/client_channel/lb_policy.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc", + "dist/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc", + "dist/src/core/ext/filters/client_channel/lb_policy_registry.cc", + "dist/src/core/ext/filters/client_channel/local_subchannel_pool.cc", + "dist/src/core/ext/filters/client_channel/proxy_mapper_registry.cc", + "dist/src/core/ext/filters/client_channel/resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc", + "dist/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc", + "dist/src/core/ext/filters/client_channel/resolver_registry.cc", + "dist/src/core/ext/filters/client_channel/resolver_result_parsing.cc", + "dist/src/core/ext/filters/client_channel/retry_filter.cc", + "dist/src/core/ext/filters/client_channel/retry_service_config.cc", + "dist/src/core/ext/filters/client_channel/retry_throttle.cc", + "dist/src/core/ext/filters/client_channel/server_address.cc", + "dist/src/core/ext/filters/client_channel/service_config.cc", + "dist/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc", + "dist/src/core/ext/filters/client_channel/service_config_parser.cc", + "dist/src/core/ext/filters/client_channel/subchannel.cc", + "dist/src/core/ext/filters/client_channel/subchannel_pool_interface.cc", + "dist/src/core/ext/filters/client_idle/client_idle_filter.cc", + "dist/src/core/ext/filters/deadline/deadline_filter.cc", + "dist/src/core/ext/filters/fault_injection/fault_injection_filter.cc", + "dist/src/core/ext/filters/fault_injection/service_config_parser.cc", + "dist/src/core/ext/filters/http/client/http_client_filter.cc", + "dist/src/core/ext/filters/http/client_authority_filter.cc", + "dist/src/core/ext/filters/http/http_filters_plugin.cc", + "dist/src/core/ext/filters/http/message_compress/message_compress_filter.cc", + "dist/src/core/ext/filters/http/message_compress/message_decompress_filter.cc", + "dist/src/core/ext/filters/http/server/http_server_filter.cc", + "dist/src/core/ext/filters/max_age/max_age_filter.cc", + "dist/src/core/ext/filters/message_size/message_size_filter.cc", + "dist/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc", + "dist/src/core/ext/filters/workarounds/workaround_utils.cc", + "dist/src/core/ext/transport/chttp2/alpn/alpn.cc", + "dist/src/core/ext/transport/chttp2/client/authority.cc", + "dist/src/core/ext/transport/chttp2/client/chttp2_connector.cc", + "dist/src/core/ext/transport/chttp2/client/insecure/channel_create.cc", + "dist/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc", + "dist/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc", + "dist/src/core/ext/transport/chttp2/server/chttp2_server.cc", + "dist/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc", + "dist/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc", + "dist/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc", + "dist/src/core/ext/transport/chttp2/transport/bin_decoder.cc", + "dist/src/core/ext/transport/chttp2/transport/bin_encoder.cc", + "dist/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc", + "dist/src/core/ext/transport/chttp2/transport/chttp2_transport.cc", + "dist/src/core/ext/transport/chttp2/transport/context_list.cc", + "dist/src/core/ext/transport/chttp2/transport/flow_control.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_data.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_goaway.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_ping.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_settings.cc", + "dist/src/core/ext/transport/chttp2/transport/frame_window_update.cc", + "dist/src/core/ext/transport/chttp2/transport/hpack_encoder.cc", + "dist/src/core/ext/transport/chttp2/transport/hpack_parser.cc", + "dist/src/core/ext/transport/chttp2/transport/hpack_table.cc", + "dist/src/core/ext/transport/chttp2/transport/http2_settings.cc", + "dist/src/core/ext/transport/chttp2/transport/huffsyms.cc", + "dist/src/core/ext/transport/chttp2/transport/incoming_metadata.cc", + "dist/src/core/ext/transport/chttp2/transport/parsing.cc", + "dist/src/core/ext/transport/chttp2/transport/stream_lists.cc", + "dist/src/core/ext/transport/chttp2/transport/stream_map.cc", + "dist/src/core/ext/transport/chttp2/transport/varint.cc", + "dist/src/core/ext/transport/chttp2/transport/writing.cc", + "dist/src/core/ext/transport/inproc/inproc_plugin.cc", + "dist/src/core/ext/transport/inproc/inproc_transport.cc", + "dist/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c", + "dist/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c", + "dist/src/core/ext/upb-generated/envoy/annotations/resource.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c", + "dist/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c", + "dist/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c", + "dist/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/v3/http.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/v3/range.upb.c", + "dist/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c", + "dist/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c", + "dist/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c", + "dist/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c", + "dist/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c", + "dist/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c", + "dist/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c", + "dist/src/core/ext/upb-generated/udpa/annotations/security.upb.c", + "dist/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c", + "dist/src/core/ext/upb-generated/udpa/annotations/status.upb.c", + "dist/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c", + "dist/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c", + "dist/src/core/ext/upb-generated/udpa/type/v1/typed_struct.upb.c", + "dist/src/core/ext/upb-generated/validate/validate.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/authority.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/resource.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c", + "dist/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c", + "dist/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/udpa/type/v1/typed_struct.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c", + "dist/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c", + "dist/src/core/ext/xds/certificate_provider_registry.cc", + "dist/src/core/ext/xds/certificate_provider_store.cc", + "dist/src/core/ext/xds/file_watcher_certificate_provider_factory.cc", + "dist/src/core/ext/xds/xds_api.cc", + "dist/src/core/ext/xds/xds_bootstrap.cc", + "dist/src/core/ext/xds/xds_certificate_provider.cc", + "dist/src/core/ext/xds/xds_client.cc", + "dist/src/core/ext/xds/xds_client_stats.cc", + "dist/src/core/ext/xds/xds_http_fault_filter.cc", + "dist/src/core/ext/xds/xds_http_filters.cc", + "dist/src/core/ext/xds/xds_server_config_fetcher.cc", + "dist/src/core/lib/address_utils/parse_address.cc", + "dist/src/core/lib/address_utils/sockaddr_utils.cc", + "dist/src/core/lib/avl/avl.cc", + "dist/src/core/lib/backoff/backoff.cc", + "dist/src/core/lib/channel/channel_args.cc", + "dist/src/core/lib/channel/channel_stack.cc", + "dist/src/core/lib/channel/channel_stack_builder.cc", + "dist/src/core/lib/channel/channel_trace.cc", + "dist/src/core/lib/channel/channelz.cc", + "dist/src/core/lib/channel/channelz_registry.cc", + "dist/src/core/lib/channel/connected_channel.cc", + "dist/src/core/lib/channel/handshaker.cc", + "dist/src/core/lib/channel/handshaker_registry.cc", + "dist/src/core/lib/channel/status_util.cc", + "dist/src/core/lib/compression/compression.cc", + "dist/src/core/lib/compression/compression_args.cc", + "dist/src/core/lib/compression/compression_internal.cc", + "dist/src/core/lib/compression/message_compress.cc", + "dist/src/core/lib/compression/stream_compression.cc", + "dist/src/core/lib/compression/stream_compression_gzip.cc", + "dist/src/core/lib/compression/stream_compression_identity.cc", + "dist/src/core/lib/debug/stats.cc", + "dist/src/core/lib/debug/stats_data.cc", + "dist/src/core/lib/debug/trace.cc", + "dist/src/core/lib/event_engine/endpoint_config.cc", + "dist/src/core/lib/event_engine/event_engine.cc", + "dist/src/core/lib/event_engine/slice_allocator.cc", + "dist/src/core/lib/event_engine/sockaddr.cc", + "dist/src/core/lib/http/format_request.cc", + "dist/src/core/lib/http/httpcli.cc", + "dist/src/core/lib/http/httpcli_security_connector.cc", + "dist/src/core/lib/http/parser.cc", + "dist/src/core/lib/iomgr/buffer_list.cc", + "dist/src/core/lib/iomgr/call_combiner.cc", + "dist/src/core/lib/iomgr/cfstream_handle.cc", + "dist/src/core/lib/iomgr/combiner.cc", + "dist/src/core/lib/iomgr/dualstack_socket_posix.cc", + "dist/src/core/lib/iomgr/endpoint.cc", + "dist/src/core/lib/iomgr/endpoint_cfstream.cc", + "dist/src/core/lib/iomgr/endpoint_pair_event_engine.cc", + "dist/src/core/lib/iomgr/endpoint_pair_posix.cc", + "dist/src/core/lib/iomgr/endpoint_pair_uv.cc", + "dist/src/core/lib/iomgr/endpoint_pair_windows.cc", + "dist/src/core/lib/iomgr/error.cc", + "dist/src/core/lib/iomgr/error_cfstream.cc", + "dist/src/core/lib/iomgr/ev_apple.cc", + "dist/src/core/lib/iomgr/ev_epoll1_linux.cc", + "dist/src/core/lib/iomgr/ev_epollex_linux.cc", + "dist/src/core/lib/iomgr/ev_poll_posix.cc", + "dist/src/core/lib/iomgr/ev_posix.cc", + "dist/src/core/lib/iomgr/ev_windows.cc", + "dist/src/core/lib/iomgr/event_engine/closure.cc", + "dist/src/core/lib/iomgr/event_engine/endpoint.cc", + "dist/src/core/lib/iomgr/event_engine/iomgr.cc", + "dist/src/core/lib/iomgr/event_engine/pollset.cc", + "dist/src/core/lib/iomgr/event_engine/resolved_address_internal.cc", + "dist/src/core/lib/iomgr/event_engine/resolver.cc", + "dist/src/core/lib/iomgr/event_engine/tcp.cc", + "dist/src/core/lib/iomgr/event_engine/timer.cc", + "dist/src/core/lib/iomgr/exec_ctx.cc", + "dist/src/core/lib/iomgr/executor.cc", + "dist/src/core/lib/iomgr/executor/mpmcqueue.cc", + "dist/src/core/lib/iomgr/executor/threadpool.cc", + "dist/src/core/lib/iomgr/fork_posix.cc", + "dist/src/core/lib/iomgr/fork_windows.cc", + "dist/src/core/lib/iomgr/gethostname_fallback.cc", + "dist/src/core/lib/iomgr/gethostname_host_name_max.cc", + "dist/src/core/lib/iomgr/gethostname_sysconf.cc", + "dist/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc", + "dist/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc", + "dist/src/core/lib/iomgr/internal_errqueue.cc", + "dist/src/core/lib/iomgr/iocp_windows.cc", + "dist/src/core/lib/iomgr/iomgr.cc", + "dist/src/core/lib/iomgr/iomgr_custom.cc", + "dist/src/core/lib/iomgr/iomgr_internal.cc", + "dist/src/core/lib/iomgr/iomgr_posix.cc", + "dist/src/core/lib/iomgr/iomgr_posix_cfstream.cc", + "dist/src/core/lib/iomgr/iomgr_uv.cc", + "dist/src/core/lib/iomgr/iomgr_windows.cc", + "dist/src/core/lib/iomgr/is_epollexclusive_available.cc", + "dist/src/core/lib/iomgr/load_file.cc", + "dist/src/core/lib/iomgr/lockfree_event.cc", + "dist/src/core/lib/iomgr/polling_entity.cc", + "dist/src/core/lib/iomgr/pollset.cc", + "dist/src/core/lib/iomgr/pollset_custom.cc", + "dist/src/core/lib/iomgr/pollset_set.cc", + "dist/src/core/lib/iomgr/pollset_set_custom.cc", + "dist/src/core/lib/iomgr/pollset_set_windows.cc", + "dist/src/core/lib/iomgr/pollset_uv.cc", + "dist/src/core/lib/iomgr/pollset_windows.cc", + "dist/src/core/lib/iomgr/resolve_address.cc", + "dist/src/core/lib/iomgr/resolve_address_custom.cc", + "dist/src/core/lib/iomgr/resolve_address_posix.cc", + "dist/src/core/lib/iomgr/resolve_address_windows.cc", + "dist/src/core/lib/iomgr/resource_quota.cc", + "dist/src/core/lib/iomgr/socket_factory_posix.cc", + "dist/src/core/lib/iomgr/socket_mutator.cc", + "dist/src/core/lib/iomgr/socket_utils_common_posix.cc", + "dist/src/core/lib/iomgr/socket_utils_linux.cc", + "dist/src/core/lib/iomgr/socket_utils_posix.cc", + "dist/src/core/lib/iomgr/socket_utils_uv.cc", + "dist/src/core/lib/iomgr/socket_utils_windows.cc", + "dist/src/core/lib/iomgr/socket_windows.cc", + "dist/src/core/lib/iomgr/tcp_client.cc", + "dist/src/core/lib/iomgr/tcp_client_cfstream.cc", + "dist/src/core/lib/iomgr/tcp_client_custom.cc", + "dist/src/core/lib/iomgr/tcp_client_posix.cc", + "dist/src/core/lib/iomgr/tcp_client_windows.cc", + "dist/src/core/lib/iomgr/tcp_custom.cc", + "dist/src/core/lib/iomgr/tcp_posix.cc", + "dist/src/core/lib/iomgr/tcp_server.cc", + "dist/src/core/lib/iomgr/tcp_server_custom.cc", + "dist/src/core/lib/iomgr/tcp_server_posix.cc", + "dist/src/core/lib/iomgr/tcp_server_utils_posix_common.cc", + "dist/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc", + "dist/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc", + "dist/src/core/lib/iomgr/tcp_server_windows.cc", + "dist/src/core/lib/iomgr/tcp_uv.cc", + "dist/src/core/lib/iomgr/tcp_windows.cc", + "dist/src/core/lib/iomgr/time_averaged_stats.cc", + "dist/src/core/lib/iomgr/timer.cc", + "dist/src/core/lib/iomgr/timer_custom.cc", + "dist/src/core/lib/iomgr/timer_generic.cc", + "dist/src/core/lib/iomgr/timer_heap.cc", + "dist/src/core/lib/iomgr/timer_manager.cc", + "dist/src/core/lib/iomgr/timer_uv.cc", + "dist/src/core/lib/iomgr/udp_server.cc", + "dist/src/core/lib/iomgr/unix_sockets_posix.cc", + "dist/src/core/lib/iomgr/unix_sockets_posix_noop.cc", + "dist/src/core/lib/iomgr/wakeup_fd_eventfd.cc", + "dist/src/core/lib/iomgr/wakeup_fd_nospecial.cc", + "dist/src/core/lib/iomgr/wakeup_fd_pipe.cc", + "dist/src/core/lib/iomgr/wakeup_fd_posix.cc", + "dist/src/core/lib/iomgr/work_serializer.cc", + "dist/src/core/lib/json/json_reader.cc", + "dist/src/core/lib/json/json_util.cc", + "dist/src/core/lib/json/json_writer.cc", + "dist/src/core/lib/matchers/matchers.cc", + "dist/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc", + "dist/src/core/lib/security/authorization/evaluate_args.cc", + "dist/src/core/lib/security/context/security_context.cc", + "dist/src/core/lib/security/credentials/alts/alts_credentials.cc", + "dist/src/core/lib/security/credentials/alts/check_gcp_environment.cc", + "dist/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc", + "dist/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc", + "dist/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc", + "dist/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc", + "dist/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc", + "dist/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc", + "dist/src/core/lib/security/credentials/composite/composite_credentials.cc", + "dist/src/core/lib/security/credentials/credentials.cc", + "dist/src/core/lib/security/credentials/credentials_metadata.cc", + "dist/src/core/lib/security/credentials/external/aws_external_account_credentials.cc", + "dist/src/core/lib/security/credentials/external/aws_request_signer.cc", + "dist/src/core/lib/security/credentials/external/external_account_credentials.cc", + "dist/src/core/lib/security/credentials/external/file_external_account_credentials.cc", + "dist/src/core/lib/security/credentials/external/url_external_account_credentials.cc", + "dist/src/core/lib/security/credentials/fake/fake_credentials.cc", + "dist/src/core/lib/security/credentials/google_default/credentials_generic.cc", + "dist/src/core/lib/security/credentials/google_default/google_default_credentials.cc", + "dist/src/core/lib/security/credentials/iam/iam_credentials.cc", + "dist/src/core/lib/security/credentials/insecure/insecure_credentials.cc", + "dist/src/core/lib/security/credentials/jwt/json_token.cc", + "dist/src/core/lib/security/credentials/jwt/jwt_credentials.cc", + "dist/src/core/lib/security/credentials/jwt/jwt_verifier.cc", + "dist/src/core/lib/security/credentials/local/local_credentials.cc", + "dist/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc", + "dist/src/core/lib/security/credentials/plugin/plugin_credentials.cc", + "dist/src/core/lib/security/credentials/ssl/ssl_credentials.cc", + "dist/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc", + "dist/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc", + "dist/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc", + "dist/src/core/lib/security/credentials/tls/tls_credentials.cc", + "dist/src/core/lib/security/credentials/tls/tls_utils.cc", + "dist/src/core/lib/security/credentials/xds/xds_credentials.cc", + "dist/src/core/lib/security/security_connector/alts/alts_security_connector.cc", + "dist/src/core/lib/security/security_connector/fake/fake_security_connector.cc", + "dist/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc", + "dist/src/core/lib/security/security_connector/load_system_roots_fallback.cc", + "dist/src/core/lib/security/security_connector/load_system_roots_linux.cc", + "dist/src/core/lib/security/security_connector/local/local_security_connector.cc", + "dist/src/core/lib/security/security_connector/security_connector.cc", + "dist/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc", + "dist/src/core/lib/security/security_connector/ssl_utils.cc", + "dist/src/core/lib/security/security_connector/ssl_utils_config.cc", + "dist/src/core/lib/security/security_connector/tls/tls_security_connector.cc", + "dist/src/core/lib/security/transport/client_auth_filter.cc", + "dist/src/core/lib/security/transport/secure_endpoint.cc", + "dist/src/core/lib/security/transport/security_handshaker.cc", + "dist/src/core/lib/security/transport/server_auth_filter.cc", + "dist/src/core/lib/security/transport/tsi_error.cc", + "dist/src/core/lib/security/util/json_util.cc", + "dist/src/core/lib/slice/b64.cc", + "dist/src/core/lib/slice/percent_encoding.cc", + "dist/src/core/lib/slice/slice.cc", + "dist/src/core/lib/slice/slice_buffer.cc", + "dist/src/core/lib/slice/slice_intern.cc", + "dist/src/core/lib/slice/slice_string_helpers.cc", + "dist/src/core/lib/surface/api_trace.cc", + "dist/src/core/lib/surface/byte_buffer.cc", + "dist/src/core/lib/surface/byte_buffer_reader.cc", + "dist/src/core/lib/surface/call.cc", + "dist/src/core/lib/surface/call_details.cc", + "dist/src/core/lib/surface/call_log_batch.cc", + "dist/src/core/lib/surface/channel.cc", + "dist/src/core/lib/surface/channel_init.cc", + "dist/src/core/lib/surface/channel_ping.cc", + "dist/src/core/lib/surface/channel_stack_type.cc", + "dist/src/core/lib/surface/completion_queue.cc", + "dist/src/core/lib/surface/completion_queue_factory.cc", + "dist/src/core/lib/surface/event_string.cc", + "dist/src/core/lib/surface/init.cc", + "dist/src/core/lib/surface/init_secure.cc", + "dist/src/core/lib/surface/lame_client.cc", + "dist/src/core/lib/surface/metadata_array.cc", + "dist/src/core/lib/surface/server.cc", + "dist/src/core/lib/surface/validate_metadata.cc", + "dist/src/core/lib/surface/version.cc", + "dist/src/core/lib/transport/authority_override.cc", + "dist/src/core/lib/transport/bdp_estimator.cc", + "dist/src/core/lib/transport/byte_stream.cc", + "dist/src/core/lib/transport/connectivity_state.cc", + "dist/src/core/lib/transport/error_utils.cc", + "dist/src/core/lib/transport/metadata.cc", + "dist/src/core/lib/transport/metadata_batch.cc", + "dist/src/core/lib/transport/pid_controller.cc", + "dist/src/core/lib/transport/static_metadata.cc", + "dist/src/core/lib/transport/status_conversion.cc", + "dist/src/core/lib/transport/status_metadata.cc", + "dist/src/core/lib/transport/timeout_encoding.cc", + "dist/src/core/lib/transport/transport.cc", + "dist/src/core/lib/transport/transport_op_string.cc", + "dist/src/core/lib/uri/uri_parser.cc", + "dist/src/core/plugin_registry/grpc_plugin_registry.cc", + "dist/src/core/tsi/alts/crypt/aes_gcm.cc", + "dist/src/core/tsi/alts/crypt/gsec.cc", + "dist/src/core/tsi/alts/frame_protector/alts_counter.cc", + "dist/src/core/tsi/alts/frame_protector/alts_crypter.cc", + "dist/src/core/tsi/alts/frame_protector/alts_frame_protector.cc", + "dist/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc", + "dist/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc", + "dist/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc", + "dist/src/core/tsi/alts/frame_protector/frame_handler.cc", + "dist/src/core/tsi/alts/handshaker/alts_handshaker_client.cc", + "dist/src/core/tsi/alts/handshaker/alts_shared_resource.cc", + "dist/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc", + "dist/src/core/tsi/alts/handshaker/alts_tsi_utils.cc", + "dist/src/core/tsi/alts/handshaker/transport_security_common_api.cc", + "dist/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc", + "dist/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc", + "dist/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc", + "dist/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc", + "dist/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc", + "dist/src/core/tsi/fake_transport_security.cc", + "dist/src/core/tsi/local_transport_security.cc", + "dist/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc", + "dist/src/core/tsi/ssl/session_cache/ssl_session_cache.cc", + "dist/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc", + "dist/src/core/tsi/ssl_transport_security.cc", + "dist/src/core/tsi/transport_security.cc", + "dist/src/core/tsi/transport_security_grpc.cc", + ], + LIBDEPS=[ + '$BUILD_DIR/third_party/abseil-cpp-master/absl_bad_variant_access', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_city', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_exponential_biased', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_hash', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_hashtablez_sampler', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_raw_hash_set', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_statusor', + '$BUILD_DIR/third_party/abseil-cpp-master/absl_wyhash', + '$BUILD_DIR/third_party/cares/cares', + '$BUILD_DIR/third_party/re2/re2', + '$BUILD_DIR/third_party/shim_zlib', + 'address_sorting', + 'gpr', + ], +) + +grpc_env.Library( + target='grpc++', + source=[ + 'dist/src/cpp/client/channel_cc.cc', + 'dist/src/cpp/client/client_callback.cc', + 'dist/src/cpp/client/client_context.cc', + 'dist/src/cpp/client/client_interceptor.cc', + 'dist/src/cpp/client/create_channel.cc', + 'dist/src/cpp/client/create_channel_internal.cc', + 'dist/src/cpp/client/create_channel_posix.cc', + 'dist/src/cpp/client/credentials_cc.cc', + 'dist/src/cpp/client/insecure_credentials.cc', + 'dist/src/cpp/client/secure_credentials.cc', + 'dist/src/cpp/client/xds_credentials.cc', + 'dist/src/cpp/codegen/codegen_init.cc', + 'dist/src/cpp/common/alarm.cc', + 'dist/src/cpp/common/auth_property_iterator.cc', + 'dist/src/cpp/common/channel_arguments.cc', + 'dist/src/cpp/common/channel_filter.cc', + 'dist/src/cpp/common/completion_queue_cc.cc', + 'dist/src/cpp/common/core_codegen.cc', + 'dist/src/cpp/common/resource_quota_cc.cc', + 'dist/src/cpp/common/rpc_method.cc', + 'dist/src/cpp/common/secure_auth_context.cc', + 'dist/src/cpp/common/secure_channel_arguments.cc', + 'dist/src/cpp/common/secure_create_auth_context.cc', + 'dist/src/cpp/common/tls_certificate_provider.cc', + 'dist/src/cpp/common/tls_credentials_options.cc', + 'dist/src/cpp/common/tls_credentials_options_util.cc', + 'dist/src/cpp/common/validate_service_config.cc', + 'dist/src/cpp/common/version_cc.cc', + 'dist/src/cpp/server/async_generic_service.cc', + 'dist/src/cpp/server/channel_argument_option.cc', + 'dist/src/cpp/server/create_default_thread_pool.cc', + 'dist/src/cpp/server/dynamic_thread_pool.cc', + 'dist/src/cpp/server/external_connection_acceptor_impl.cc', + 'dist/src/cpp/server/health/default_health_check_service.cc', + 'dist/src/cpp/server/health/health_check_service.cc', + 'dist/src/cpp/server/health/health_check_service_server_builder_option.cc', + 'dist/src/cpp/server/insecure_server_credentials.cc', + 'dist/src/cpp/server/secure_server_credentials.cc', + 'dist/src/cpp/server/server_builder.cc', + 'dist/src/cpp/server/server_callback.cc', + 'dist/src/cpp/server/server_cc.cc', + 'dist/src/cpp/server/server_context.cc', + 'dist/src/cpp/server/server_credentials.cc', + 'dist/src/cpp/server/server_posix.cc', + 'dist/src/cpp/server/xds_server_credentials.cc', + 'dist/src/cpp/thread_manager/thread_manager.cc', + 'dist/src/cpp/util/byte_buffer_cc.cc', + 'dist/src/cpp/util/status.cc', + 'dist/src/cpp/util/string_ref.cc', + 'dist/src/cpp/util/time_cc.cc', + ], + LIBDEPS=[ + '$BUILD_DIR/third_party/protobuf/protobuf', + 'grpc', + ], +) + +grpc_env.Append( + PROTOCFLAGS=[ + "--cpp_out=$PROTOC_GENOUT_DIR", + "--grpc_out=generate_mock_code=true:$PROTOC_GENOUT_DIR", + f"--plugin=protoc-gen-grpc={protobuf_bin[0].get_path()}", + ], + CPPPATH=[ + '$BUILD_DIR/third_party/grpc/dist/', + ], +) + +# Not chaining the builders because of workaround below +gen_nodes = grpc_env.Protoc('dist/src/proto/grpc/reflection/v1alpha/reflection.proto') + +lib_node = grpc_env.Library( + target='grpc++_reflection', + source=[ + 'dist/src/cpp/ext/proto_server_reflection.cc', + 'dist/src/cpp/ext/proto_server_reflection_plugin.cc' + ] + [gen_node for gen_node in gen_nodes if not str(gen_node).endswith('.h')], + LIBDEPS=[ + 'grpc++', + ], ) +# Working around the fact that we can't put the generated sources in the generated-sources +# alias for ninja's sake. This means we need to manually specify the dependencies so ninja +# knows to gen the source first lest it tries to include it in a compile before it has been gened. +for child in lib_node[0].children(): + if child.has_builder() and child.get_builder().get_name(grpc_env) in ['Object', 'SharedObject', 'StaticObject']: + if child.sources[0] not in gen_nodes: + grpc_env.Depends(child, gen_nodes) diff --git a/src/third_party/protobuf/SConscript b/src/third_party/protobuf/SConscript index ee34d95e77f..6149d0e726c 100644 --- a/src/third_party/protobuf/SConscript +++ b/src/third_party/protobuf/SConscript @@ -13,186 +13,103 @@ protobuf_env.Append( '-Wno-sign-compare', '-Wno-overloaded-virtual', '-Wno-stringop-overflow', - ]) + ], +) protobuf_root = protobuf_env.Dir(".").srcnode() protobuf_platform = protobuf_root.Dir("platform/${TARGET_OS}_${TARGET_ARCH}") -protobuf_env.Append(CPPPATH=[ - protobuf_root.Dir("dist"), - protobuf_root.Dir("dist/src"), -]) - -libprotobuf_source = [ - "dist/src/google/protobuf/stubs/bytestream.cc", - "dist/src/google/protobuf/stubs/common.cc", - "dist/src/google/protobuf/stubs/int128.cc", - "dist/src/google/protobuf/io/io_win32.cc", - "dist/src/google/protobuf/stubs/status.cc", - "dist/src/google/protobuf/stubs/statusor.cc", - "dist/src/google/protobuf/stubs/stringpiece.cc", - "dist/src/google/protobuf/stubs/stringprintf.cc", - "dist/src/google/protobuf/stubs/structurally_valid.cc", - "dist/src/google/protobuf/stubs/strutil.cc", - "dist/src/google/protobuf/stubs/time.cc", - "dist/src/google/protobuf/any_lite.cc", - "dist/src/google/protobuf/arena.cc", - "dist/src/google/protobuf/arenastring.cc", - "dist/src/google/protobuf/generated_enum_util.cc", - "dist/src/google/protobuf/extension_set.cc", - "dist/src/google/protobuf/generated_message_util.cc", - "dist/src/google/protobuf/generated_message_table_driven_lite.cc", - "dist/src/google/protobuf/implicit_weak_message.cc", - "dist/src/google/protobuf/map.cc", - "dist/src/google/protobuf/message_lite.cc", - "dist/src/google/protobuf/parse_context.cc", - "dist/src/google/protobuf/repeated_field.cc", - "dist/src/google/protobuf/wire_format_lite.cc", - "dist/src/google/protobuf/io/coded_stream.cc", - "dist/src/google/protobuf/io/strtod.cc", - "dist/src/google/protobuf/io/zero_copy_stream.cc", - "dist/src/google/protobuf/io/zero_copy_stream_impl.cc", - "dist/src/google/protobuf/io/zero_copy_stream_impl_lite.cc", - "dist/src/google/protobuf/any.pb.cc", - "dist/src/google/protobuf/api.pb.cc", - "dist/src/google/protobuf/any.cc", - "dist/src/google/protobuf/descriptor.cc", - "dist/src/google/protobuf/descriptor_database.cc", - "dist/src/google/protobuf/descriptor.pb.cc", - "dist/src/google/protobuf/duration.pb.cc", - "dist/src/google/protobuf/dynamic_message.cc", - "dist/src/google/protobuf/empty.pb.cc", - "dist/src/google/protobuf/extension_set_heavy.cc", - "dist/src/google/protobuf/field_mask.pb.cc", - "dist/src/google/protobuf/generated_message_reflection.cc", - "dist/src/google/protobuf/generated_message_table_driven.cc", - "dist/src/google/protobuf/map_field.cc", - "dist/src/google/protobuf/message.cc", - "dist/src/google/protobuf/reflection_ops.cc", - "dist/src/google/protobuf/service.cc", - "dist/src/google/protobuf/source_context.pb.cc", - "dist/src/google/protobuf/struct.pb.cc", - "dist/src/google/protobuf/stubs/substitute.cc", - "dist/src/google/protobuf/text_format.cc", - "dist/src/google/protobuf/timestamp.pb.cc", - "dist/src/google/protobuf/type.pb.cc", - "dist/src/google/protobuf/unknown_field_set.cc", - "dist/src/google/protobuf/wire_format.cc", - "dist/src/google/protobuf/wrappers.pb.cc", - "dist/src/google/protobuf/io/gzip_stream.cc", - "dist/src/google/protobuf/io/printer.cc", - "dist/src/google/protobuf/io/tokenizer.cc", - "dist/src/google/protobuf/compiler/importer.cc", - "dist/src/google/protobuf/compiler/parser.cc", - "dist/src/google/protobuf/util/delimited_message_util.cc", - "dist/src/google/protobuf/util/field_comparator.cc", - "dist/src/google/protobuf/util/field_mask_util.cc", - "dist/src/google/protobuf/util/internal/datapiece.cc", - "dist/src/google/protobuf/util/internal/default_value_objectwriter.cc", - "dist/src/google/protobuf/util/internal/error_listener.cc", - "dist/src/google/protobuf/util/internal/field_mask_utility.cc", - "dist/src/google/protobuf/util/internal/json_escaping.cc", - "dist/src/google/protobuf/util/internal/json_objectwriter.cc", - "dist/src/google/protobuf/util/internal/json_stream_parser.cc", - "dist/src/google/protobuf/util/internal/object_writer.cc", - "dist/src/google/protobuf/util/internal/protostream_objectsource.cc", - "dist/src/google/protobuf/util/internal/protostream_objectwriter.cc", - "dist/src/google/protobuf/util/internal/proto_writer.cc", - "dist/src/google/protobuf/util/internal/type_info.cc", - "dist/src/google/protobuf/util/internal/type_info_test_helper.cc", - "dist/src/google/protobuf/util/internal/utility.cc", - "dist/src/google/protobuf/util/json_util.cc", - "dist/src/google/protobuf/util/message_differencer.cc", - "dist/src/google/protobuf/util/time_util.cc", - "dist/src/google/protobuf/util/type_resolver_util.cc", -] - -libprotoc_source = [ - "dist/src/google/protobuf/compiler/code_generator.cc", - "dist/src/google/protobuf/compiler/command_line_interface.cc", - "dist/src/google/protobuf/compiler/plugin.cc", - "dist/src/google/protobuf/compiler/plugin.pb.cc", - "dist/src/google/protobuf/compiler/subprocess.cc", - "dist/src/google/protobuf/compiler/zip_writer.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_enum.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_enum_field.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_extension.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_field.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_file.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_generator.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_helpers.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_map_field.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_message.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_message_field.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_padding_optimizer.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_primitive_field.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_service.cc", - "dist/src/google/protobuf/compiler/cpp/cpp_string_field.cc", - "dist/src/google/protobuf/compiler/java/java_context.cc", - "dist/src/google/protobuf/compiler/java/java_enum.cc", - "dist/src/google/protobuf/compiler/java/java_enum_lite.cc", - "dist/src/google/protobuf/compiler/java/java_enum_field.cc", - "dist/src/google/protobuf/compiler/java/java_enum_field_lite.cc", - "dist/src/google/protobuf/compiler/java/java_extension.cc", - "dist/src/google/protobuf/compiler/java/java_extension_lite.cc", - "dist/src/google/protobuf/compiler/java/java_field.cc", - "dist/src/google/protobuf/compiler/java/java_file.cc", - "dist/src/google/protobuf/compiler/java/java_generator.cc", - "dist/src/google/protobuf/compiler/java/java_generator_factory.cc", - "dist/src/google/protobuf/compiler/java/java_helpers.cc", - "dist/src/google/protobuf/compiler/java/java_map_field.cc", - "dist/src/google/protobuf/compiler/java/java_map_field_lite.cc", - "dist/src/google/protobuf/compiler/java/java_message.cc", - "dist/src/google/protobuf/compiler/java/java_message_lite.cc", - "dist/src/google/protobuf/compiler/java/java_message_builder.cc", - "dist/src/google/protobuf/compiler/java/java_message_builder_lite.cc", - "dist/src/google/protobuf/compiler/java/java_message_field.cc", - "dist/src/google/protobuf/compiler/java/java_message_field_lite.cc", - "dist/src/google/protobuf/compiler/java/java_name_resolver.cc", - "dist/src/google/protobuf/compiler/java/java_primitive_field.cc", - "dist/src/google/protobuf/compiler/java/java_primitive_field_lite.cc", - "dist/src/google/protobuf/compiler/java/java_shared_code_generator.cc", - "dist/src/google/protobuf/compiler/java/java_service.cc", - "dist/src/google/protobuf/compiler/java/java_string_field.cc", - "dist/src/google/protobuf/compiler/java/java_string_field_lite.cc", - "dist/src/google/protobuf/compiler/java/java_doc_comment.cc", - "dist/src/google/protobuf/compiler/js/js_generator.cc", - "dist/src/google/protobuf/compiler/js/well_known_types_embed.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_enum.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_extension.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_field.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_file.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_generator.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_helpers.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_map_field.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_message.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_message_field.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_oneof.cc", - "dist/src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc", - "dist/src/google/protobuf/compiler/php/php_generator.cc", - "dist/src/google/protobuf/compiler/python/python_generator.cc", - "dist/src/google/protobuf/compiler/ruby/ruby_generator.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_enum.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_enum_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_field_base.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_generator.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_helpers.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_map_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_message.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_message_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_primitive_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_reflection_class.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc", - "dist/src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc", -] +protobuf_env.Append( + CPPPATH=[ + protobuf_root.Dir("dist"), + protobuf_root.Dir("dist/src"), + ], +) protobuf_env.Library( target='protobuf', - source=libprotobuf_source, + source=[ + "dist/src/google/protobuf/stubs/bytestream.cc", + "dist/src/google/protobuf/stubs/common.cc", + "dist/src/google/protobuf/stubs/int128.cc", + "dist/src/google/protobuf/io/io_win32.cc", + "dist/src/google/protobuf/stubs/status.cc", + "dist/src/google/protobuf/stubs/statusor.cc", + "dist/src/google/protobuf/stubs/stringpiece.cc", + "dist/src/google/protobuf/stubs/stringprintf.cc", + "dist/src/google/protobuf/stubs/structurally_valid.cc", + "dist/src/google/protobuf/stubs/strutil.cc", + "dist/src/google/protobuf/stubs/time.cc", + "dist/src/google/protobuf/any_lite.cc", + "dist/src/google/protobuf/arena.cc", + "dist/src/google/protobuf/arenastring.cc", + "dist/src/google/protobuf/generated_enum_util.cc", + "dist/src/google/protobuf/extension_set.cc", + "dist/src/google/protobuf/generated_message_util.cc", + "dist/src/google/protobuf/generated_message_table_driven_lite.cc", + "dist/src/google/protobuf/implicit_weak_message.cc", + "dist/src/google/protobuf/map.cc", + "dist/src/google/protobuf/message_lite.cc", + "dist/src/google/protobuf/parse_context.cc", + "dist/src/google/protobuf/repeated_field.cc", + "dist/src/google/protobuf/wire_format_lite.cc", + "dist/src/google/protobuf/io/coded_stream.cc", + "dist/src/google/protobuf/io/strtod.cc", + "dist/src/google/protobuf/io/zero_copy_stream.cc", + "dist/src/google/protobuf/io/zero_copy_stream_impl.cc", + "dist/src/google/protobuf/io/zero_copy_stream_impl_lite.cc", + "dist/src/google/protobuf/any.pb.cc", + "dist/src/google/protobuf/api.pb.cc", + "dist/src/google/protobuf/any.cc", + "dist/src/google/protobuf/descriptor.cc", + "dist/src/google/protobuf/descriptor_database.cc", + "dist/src/google/protobuf/descriptor.pb.cc", + "dist/src/google/protobuf/duration.pb.cc", + "dist/src/google/protobuf/dynamic_message.cc", + "dist/src/google/protobuf/empty.pb.cc", + "dist/src/google/protobuf/extension_set_heavy.cc", + "dist/src/google/protobuf/field_mask.pb.cc", + "dist/src/google/protobuf/generated_message_reflection.cc", + "dist/src/google/protobuf/generated_message_table_driven.cc", + "dist/src/google/protobuf/map_field.cc", + "dist/src/google/protobuf/message.cc", + "dist/src/google/protobuf/reflection_ops.cc", + "dist/src/google/protobuf/service.cc", + "dist/src/google/protobuf/source_context.pb.cc", + "dist/src/google/protobuf/struct.pb.cc", + "dist/src/google/protobuf/stubs/substitute.cc", + "dist/src/google/protobuf/text_format.cc", + "dist/src/google/protobuf/timestamp.pb.cc", + "dist/src/google/protobuf/type.pb.cc", + "dist/src/google/protobuf/unknown_field_set.cc", + "dist/src/google/protobuf/wire_format.cc", + "dist/src/google/protobuf/wrappers.pb.cc", + "dist/src/google/protobuf/io/gzip_stream.cc", + "dist/src/google/protobuf/io/printer.cc", + "dist/src/google/protobuf/io/tokenizer.cc", + "dist/src/google/protobuf/compiler/importer.cc", + "dist/src/google/protobuf/compiler/parser.cc", + "dist/src/google/protobuf/util/delimited_message_util.cc", + "dist/src/google/protobuf/util/field_comparator.cc", + "dist/src/google/protobuf/util/field_mask_util.cc", + "dist/src/google/protobuf/util/internal/datapiece.cc", + "dist/src/google/protobuf/util/internal/default_value_objectwriter.cc", + "dist/src/google/protobuf/util/internal/error_listener.cc", + "dist/src/google/protobuf/util/internal/field_mask_utility.cc", + "dist/src/google/protobuf/util/internal/json_escaping.cc", + "dist/src/google/protobuf/util/internal/json_objectwriter.cc", + "dist/src/google/protobuf/util/internal/json_stream_parser.cc", + "dist/src/google/protobuf/util/internal/object_writer.cc", + "dist/src/google/protobuf/util/internal/protostream_objectsource.cc", + "dist/src/google/protobuf/util/internal/protostream_objectwriter.cc", + "dist/src/google/protobuf/util/internal/proto_writer.cc", + "dist/src/google/protobuf/util/internal/type_info.cc", + "dist/src/google/protobuf/util/internal/type_info_test_helper.cc", + "dist/src/google/protobuf/util/internal/utility.cc", + "dist/src/google/protobuf/util/json_util.cc", + "dist/src/google/protobuf/util/message_differencer.cc", + "dist/src/google/protobuf/util/time_util.cc", + "dist/src/google/protobuf/util/type_resolver_util.cc", + ], LIBDEPS=[ '$BUILD_DIR/third_party/shim_zlib', ], @@ -200,7 +117,89 @@ protobuf_env.Library( protobuf_env.Library( target='protoc', - source=libprotoc_source, + source=[ + "dist/src/google/protobuf/compiler/code_generator.cc", + "dist/src/google/protobuf/compiler/command_line_interface.cc", + "dist/src/google/protobuf/compiler/plugin.cc", + "dist/src/google/protobuf/compiler/plugin.pb.cc", + "dist/src/google/protobuf/compiler/subprocess.cc", + "dist/src/google/protobuf/compiler/zip_writer.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_enum.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_enum_field.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_extension.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_field.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_file.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_generator.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_helpers.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_map_field.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_message.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_message_field.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_padding_optimizer.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_primitive_field.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_service.cc", + "dist/src/google/protobuf/compiler/cpp/cpp_string_field.cc", + "dist/src/google/protobuf/compiler/java/java_context.cc", + "dist/src/google/protobuf/compiler/java/java_enum.cc", + "dist/src/google/protobuf/compiler/java/java_enum_lite.cc", + "dist/src/google/protobuf/compiler/java/java_enum_field.cc", + "dist/src/google/protobuf/compiler/java/java_enum_field_lite.cc", + "dist/src/google/protobuf/compiler/java/java_extension.cc", + "dist/src/google/protobuf/compiler/java/java_extension_lite.cc", + "dist/src/google/protobuf/compiler/java/java_field.cc", + "dist/src/google/protobuf/compiler/java/java_file.cc", + "dist/src/google/protobuf/compiler/java/java_generator.cc", + "dist/src/google/protobuf/compiler/java/java_generator_factory.cc", + "dist/src/google/protobuf/compiler/java/java_helpers.cc", + "dist/src/google/protobuf/compiler/java/java_map_field.cc", + "dist/src/google/protobuf/compiler/java/java_map_field_lite.cc", + "dist/src/google/protobuf/compiler/java/java_message.cc", + "dist/src/google/protobuf/compiler/java/java_message_lite.cc", + "dist/src/google/protobuf/compiler/java/java_message_builder.cc", + "dist/src/google/protobuf/compiler/java/java_message_builder_lite.cc", + "dist/src/google/protobuf/compiler/java/java_message_field.cc", + "dist/src/google/protobuf/compiler/java/java_message_field_lite.cc", + "dist/src/google/protobuf/compiler/java/java_name_resolver.cc", + "dist/src/google/protobuf/compiler/java/java_primitive_field.cc", + "dist/src/google/protobuf/compiler/java/java_primitive_field_lite.cc", + "dist/src/google/protobuf/compiler/java/java_shared_code_generator.cc", + "dist/src/google/protobuf/compiler/java/java_service.cc", + "dist/src/google/protobuf/compiler/java/java_string_field.cc", + "dist/src/google/protobuf/compiler/java/java_string_field_lite.cc", + "dist/src/google/protobuf/compiler/java/java_doc_comment.cc", + "dist/src/google/protobuf/compiler/js/js_generator.cc", + "dist/src/google/protobuf/compiler/js/well_known_types_embed.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_enum.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_enum_field.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_extension.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_field.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_file.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_generator.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_helpers.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_map_field.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_message.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_message_field.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_oneof.cc", + "dist/src/google/protobuf/compiler/objectivec/objectivec_primitive_field.cc", + "dist/src/google/protobuf/compiler/php/php_generator.cc", + "dist/src/google/protobuf/compiler/python/python_generator.cc", + "dist/src/google/protobuf/compiler/ruby/ruby_generator.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_doc_comment.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_enum.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_enum_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_field_base.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_generator.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_helpers.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_map_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_message.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_message_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_primitive_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_reflection_class.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_repeated_enum_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_repeated_message_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_repeated_primitive_field.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_source_generator_base.cc", + "dist/src/google/protobuf/compiler/csharp/csharp_wrapper_field.cc", + ], LIBDEPS=[ 'protobuf', ], diff --git a/src/third_party/protobuf/scripts/host_config.sh b/src/third_party/protobuf/scripts/host_config.sh deleted file mode 100755 index e19510d1bf9..00000000000 --- a/src/third_party/protobuf/scripts/host_config.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash -# Configures a protobuf suitable for use in the mongo server, built on the host machine. - -set -euo pipefail -IFS=$'\n\t' - -set -vx - -TOOLCHAIN_ROOT=/opt/mongodbtoolchain/v3 -PATH="$TOOLCHAIN_ROOT/bin:$PATH" - -DEST_DIR=$(git rev-parse --show-toplevel)/src/third_party/protobuf - -HOST_OS="$(uname -s|tr A-Z a-z)" -HOST_ARCH="$(uname -m)" -HOST_DIR="$DEST_DIR/platform/${HOST_OS}_${HOST_ARCH}" - - -SRC_DIR=${DEST_DIR}/dist -pushd $SRC_DIR -autoreconf -fi -popd - -mkdir -p $HOST_DIR/build -pushd $HOST_DIR/build - -# force disable: -# coredump : postmortem analysis of core memory dumps -# ptrace : unwinding stacks in another process -# setjmp : provides a nonlocal goto feature -# documentation : won't need them -# tests : won't need them -# dependency-tracking : (from automake) disabled because we only do one build -# cxx-exceptions : intrusive exception handling runtime -$SRC_DIR/configure \ - --prefix=$HOST_DIR/install \ - CC=$TOOLCHAIN_ROOT/bin/gcc \ - CXX=$TOOLCHAIN_ROOT/bin/g++ - - -CC=$TOOLCHAIN_ROOT/bin/gcc -CXX=$TOOLCHAIN_ROOT/bin/g++ -pushd src -make CC=$CC CXX=$CXX -j16 protoc V=1 -popd -popd diff --git a/src/third_party/re2/SConscript b/src/third_party/re2/SConscript index 039565bfe58..2c80e28aec5 100644 --- a/src/third_party/re2/SConscript +++ b/src/third_party/re2/SConscript @@ -5,35 +5,33 @@ re2_env = env.Clone() re2_root = re2_env.Dir(".").srcnode() re2_env.Append(CPPPATH=[re2_root.Dir("dist"),]) -if env.ToolchainIs('gcc', 'clang'): +if re2_env.ToolchainIs('gcc', 'clang'): re2_env.Append(CCFLAGS=['-pthread']) -source_files = [ - "dist/re2/perl_groups.cc", - "dist/re2/unicode_casefold.cc", - "dist/re2/unicode_groups.cc", - "dist/re2/stringpiece.cc", - "dist/re2/tostring.cc", - "dist/re2/mimics_pcre.cc", - "dist/re2/simplify.cc", - "dist/re2/bitstate.cc", - "dist/re2/onepass.cc", - "dist/re2/prefilter.cc", - "dist/re2/parse.cc", - "dist/re2/re2.cc", - "dist/re2/filtered_re2.cc", - "dist/re2/nfa.cc", - "dist/re2/set.cc", - "dist/re2/prefilter_tree.cc", - "dist/re2/compile.cc", - "dist/re2/prog.cc", - "dist/re2/dfa.cc", - "dist/re2/regexp.cc", - "dist/util/rune.cc", - "dist/util/strutil.cc", -] - re2_env.Library( target="re2", - source=source_files + source=[ + "dist/re2/perl_groups.cc", + "dist/re2/unicode_casefold.cc", + "dist/re2/unicode_groups.cc", + "dist/re2/stringpiece.cc", + "dist/re2/tostring.cc", + "dist/re2/mimics_pcre.cc", + "dist/re2/simplify.cc", + "dist/re2/bitstate.cc", + "dist/re2/onepass.cc", + "dist/re2/prefilter.cc", + "dist/re2/parse.cc", + "dist/re2/re2.cc", + "dist/re2/filtered_re2.cc", + "dist/re2/nfa.cc", + "dist/re2/set.cc", + "dist/re2/prefilter_tree.cc", + "dist/re2/compile.cc", + "dist/re2/prog.cc", + "dist/re2/dfa.cc", + "dist/re2/regexp.cc", + "dist/util/rune.cc", + "dist/util/strutil.cc", + ], )
\ No newline at end of file diff --git a/src/third_party/re2/scripts/host_config.sh b/src/third_party/re2/scripts/host_config.sh deleted file mode 100755 index bb822bb088e..00000000000 --- a/src/third_party/re2/scripts/host_config.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -# Configures a cares suitable for use in the mongo server, built on the host machine. - -set -euo pipefail -IFS=$'\n\t' - -set -vx - -TOOLCHAIN_ROOT=/opt/mongodbtoolchain/v3 -PATH="$TOOLCHAIN_ROOT/bin:$PATH" - -DEST_DIR=$(git rev-parse --show-toplevel)/src/third_party/cares - -HOST_OS="$(uname -s|tr A-Z a-z)" -HOST_ARCH="$(uname -m)" -HOST_DIR="$DEST_DIR/platform/${HOST_OS}_${HOST_ARCH}" - - -SRC_DIR=${DEST_DIR}/dist -pushd $SRC_DIR -autoreconf -fi -popd - -mkdir -p $HOST_DIR/build -pushd $HOST_DIR/build - -# force disable: -# coredump : postmortem analysis of core memory dumps -# ptrace : unwinding stacks in another process -# setjmp : provides a nonlocal goto feature -# documentation : won't need them -# tests : won't need them -# dependency-tracking : (from automake) disabled because we only do one build -# cxx-exceptions : intrusive exception handling runtime -$SRC_DIR/configure \ - --prefix=$HOST_DIR/install \ - CC=$TOOLCHAIN_ROOT/bin/gcc \ - CXX=$TOOLCHAIN_ROOT/bin/g++ - - -CC=$TOOLCHAIN_ROOT/bin/gcc -CXX=$TOOLCHAIN_ROOT/bin/g++ - -make CC=$CC CXX=$CXX -j16 install -popd |