summaryrefslogtreecommitdiff
path: root/www/envoy/files/makefile-main
diff options
context:
space:
mode:
Diffstat (limited to 'www/envoy/files/makefile-main')
-rw-r--r--www/envoy/files/makefile-main539
1 files changed, 483 insertions, 56 deletions
diff --git a/www/envoy/files/makefile-main b/www/envoy/files/makefile-main
index 702d339dcdc8..3fe9ad310fc4 100644
--- a/www/envoy/files/makefile-main
+++ b/www/envoy/files/makefile-main
@@ -1,10 +1,18 @@
LOCALBASE?= /usr/local
-CXXFLAGS+= -std=c++14 -Wall -Wextra -Wno-unused-parameter -DSPDLOG_FMT_EXTERNAL=1
-CPPFLAGS+= -I. -I../include -I../api -I$(LOCALBASE)/include \
+CXXFLAGS+= -std=c++17 -Wall -Wextra -Wno-unused-parameter \
+ -DBUILD_SCM_REVISION=\"c7e8e73\" \
+ -DBUILD_SCM_STATUS=\"Modified\" \
-DNDEBUG -DENVOY_SSL_VERSION=\"BoringSSL\" \
- -DBUILD_SCM_REVISION=\"e95ef6b\" \
- -DBUILD_SCM_STATUS=\"Modified\"
-LDFLAGS+= -L$(LOCALBASE)/lib -lfmt
+ -DSPDLOG_FMT_EXTERNAL -DENVOY_ENABLE_QUIC \
+ -DENVOY_ADMIN_HTML \
+ -I.. -I../api -I../bazel/external/http_parser \
+ -I../../cel-cpp-11f9d66 \
+ -I../../grpc-1.49.2/src/core/ext/upb-generated \
+ -I../../grpc-1.49.2/third_party/upb \
+ -I../../quiche-37de4f7 \
+ -I../../quiche-37de4f7/quiche/common/platform/default \
+ -I../.. -I$(LOCALBASE)/include
+LDFLAGS+= -L$(LOCALBASE)/lib
CCACHE?= $(shell command -v ccache)
api_OBJS= envoy/admin/v2alpha/certs.pb.o \
@@ -14,28 +22,83 @@ api_OBJS= envoy/admin/v2alpha/certs.pb.o \
envoy/admin/v2alpha/metrics.pb.o \
envoy/admin/v2alpha/mutex_stats.pb.o \
envoy/admin/v2alpha/server_info.pb.o \
+ envoy/admin/v3/certs.pb.o \
+ envoy/admin/v3/clusters.pb.o \
+ envoy/admin/v3/config_dump.pb.o \
+ envoy/admin/v3/config_dump_shared.pb.o \
+ envoy/admin/v3/init_dump.pb.o \
+ envoy/admin/v3/listeners.pb.o \
+ envoy/admin/v3/memory.pb.o \
+ envoy/admin/v3/metrics.pb.o \
+ envoy/admin/v3/mutex_stats.pb.o \
+ envoy/admin/v3/server_info.pb.o \
+ envoy/annotations/deprecation.pb.o \
+ envoy/annotations/resource.pb.o \
envoy/api/v2/auth/cert.pb.o \
+ envoy/api/v2/auth/common.pb.o \
+ envoy/api/v2/auth/secret.pb.o \
+ envoy/api/v2/auth/tls.pb.o \
envoy/api/v2/cds.pb.o \
+ envoy/api/v2/cluster.pb.o \
envoy/api/v2/cluster/circuit_breaker.pb.o \
+ envoy/api/v2/cluster/filter.pb.o \
envoy/api/v2/cluster/outlier_detection.pb.o \
envoy/api/v2/core/address.pb.o \
+ envoy/api/v2/core/backoff.pb.o \
envoy/api/v2/core/base.pb.o \
envoy/api/v2/core/config_source.pb.o \
+ envoy/api/v2/core/event_service_config.pb.o \
envoy/api/v2/core/grpc_service.pb.o \
envoy/api/v2/core/health_check.pb.o \
+ envoy/api/v2/core/http_uri.pb.o \
envoy/api/v2/core/protocol.pb.o \
+ envoy/api/v2/core/socket_option.pb.o \
envoy/api/v2/discovery.pb.o \
envoy/api/v2/eds.pb.o \
+ envoy/api/v2/endpoint.pb.o \
envoy/api/v2/endpoint/endpoint.pb.o \
+ envoy/api/v2/endpoint/endpoint_components.pb.o \
envoy/api/v2/endpoint/load_report.pb.o \
envoy/api/v2/lds.pb.o \
+ envoy/api/v2/listener.pb.o \
envoy/api/v2/listener/listener.pb.o \
+ envoy/api/v2/listener/listener_components.pb.o \
+ envoy/api/v2/listener/udp_listener_config.pb.o \
envoy/api/v2/ratelimit/ratelimit.pb.o \
envoy/api/v2/rds.pb.o \
+ envoy/api/v2/route.pb.o \
envoy/api/v2/route/route.pb.o \
+ envoy/api/v2/route/route_components.pb.o \
+ envoy/api/v2/scoped_route.pb.o \
envoy/config/accesslog/v2/als.pb.o \
envoy/config/accesslog/v2/file.pb.o \
+ envoy/config/accesslog/v3/accesslog.pb.o \
envoy/config/bootstrap/v2/bootstrap.pb.o \
+ envoy/config/bootstrap/v3/bootstrap.pb.o \
+ envoy/config/cluster/v3/circuit_breaker.pb.o \
+ envoy/config/cluster/v3/cluster.pb.o \
+ envoy/config/cluster/v3/filter.pb.o \
+ envoy/config/cluster/v3/outlier_detection.pb.o \
+ envoy/config/common/key_value/v3/config.pb.o \
+ envoy/config/common/matcher/v3/matcher.pb.o \
+ envoy/config/core/v3/address.pb.o \
+ envoy/config/core/v3/backoff.pb.o \
+ envoy/config/core/v3/base.pb.o \
+ envoy/config/core/v3/config_source.pb.o \
+ envoy/config/core/v3/event_service_config.pb.o \
+ envoy/config/core/v3/extension.pb.o \
+ envoy/config/core/v3/grpc_service.pb.o \
+ envoy/config/core/v3/health_check.pb.o \
+ envoy/config/core/v3/http_uri.pb.o \
+ envoy/config/core/v3/protocol.pb.o \
+ envoy/config/core/v3/proxy_protocol.pb.o \
+ envoy/config/core/v3/resolver.pb.o \
+ envoy/config/core/v3/socket_option.pb.o \
+ envoy/config/core/v3/substitution_format_string.pb.o \
+ envoy/config/core/v3/udp_socket_config.pb.o \
+ envoy/config/endpoint/v3/endpoint.pb.o \
+ envoy/config/endpoint/v3/endpoint_components.pb.o \
+ envoy/config/endpoint/v3/load_report.pb.o \
envoy/config/filter/accesslog/v2/accesslog.pb.o \
envoy/config/filter/fault/v2/fault.pb.o \
envoy/config/filter/http/fault/v2/fault.pb.o \
@@ -43,126 +106,490 @@ api_OBJS= envoy/admin/v2alpha/certs.pb.o \
envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.pb.o \
envoy/config/filter/network/redis_proxy/v2/redis_proxy.pb.o \
envoy/config/filter/network/tcp_proxy/v2/tcp_proxy.pb.o \
+ envoy/config/listener/v2/api_listener.pb.o \
+ envoy/config/listener/v3/api_listener.pb.o \
+ envoy/config/listener/v3/listener.pb.o \
+ envoy/config/listener/v3/listener_components.pb.o \
+ envoy/config/listener/v3/quic_config.pb.o \
+ envoy/config/listener/v3/udp_listener_config.pb.o \
envoy/config/metrics/v2/metrics_service.pb.o \
envoy/config/metrics/v2/stats.pb.o \
+ envoy/config/metrics/v3/metrics_service.pb.o \
+ envoy/config/metrics/v3/stats.pb.o \
envoy/config/overload/v2alpha/overload.pb.o \
- envoy/config/rbac/v2alpha/rbac.pb.o \
+ envoy/config/overload/v3/overload.pb.o \
+ envoy/config/rbac/v3/rbac.pb.o \
+ envoy/config/route/v3/route.pb.o \
+ envoy/config/route/v3/route_components.pb.o \
+ envoy/config/route/v3/scoped_route.pb.o \
+ envoy/config/trace/v2/datadog.pb.o \
+ envoy/config/trace/v2/dynamic_ot.pb.o \
+ envoy/config/trace/v2/http_tracer.pb.o \
+ envoy/config/trace/v2/lightstep.pb.o \
+ envoy/config/trace/v2/opencensus.pb.o \
+ envoy/config/trace/v2/service.pb.o \
envoy/config/trace/v2/trace.pb.o \
+ envoy/config/trace/v2/zipkin.pb.o \
+ envoy/config/trace/v3/http_tracer.pb.o \
envoy/data/accesslog/v2/accesslog.pb.o \
+ envoy/data/accesslog/v3/accesslog.pb.o \
envoy/data/cluster/v2alpha/outlier_detection_event.pb.o \
+ envoy/data/cluster/v3/outlier_detection_event.pb.o \
envoy/data/core/v2alpha/health_check_event.pb.o \
+ envoy/data/core/v3/health_check_event.pb.o \
+ envoy/extensions/access_loggers/file/v3/file.pb.o \
+ envoy/extensions/access_loggers/grpc/v3/als.pb.o \
+ envoy/extensions/access_loggers/open_telemetry/v3/logs_service.pb.o \
+ envoy/extensions/access_loggers/stream/v3/stream.pb.o \
+ envoy/extensions/common/ratelimit/v3/ratelimit.pb.o \
+ envoy/extensions/early_data/v3/default_early_data_policy.pb.o \
+ envoy/extensions/filters/common/dependency/v3/dependency.pb.o \
+ envoy/extensions/filters/http/upstream_codec/v3/upstream_codec.pb.o \
+ envoy/extensions/filters/listener/proxy_protocol/v3/proxy_protocol.pb.o \
+ envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.pb.o \
+ envoy/extensions/http/original_ip_detection/xff/v3/xff.pb.o \
+ envoy/extensions/load_balancing_policies/common/v3/common.pb.o \
+ envoy/extensions/load_balancing_policies/maglev/v3/maglev.pb.o \
+ envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.pb.o \
+ envoy/extensions/network/dns_resolver/apple/v3/apple_dns_resolver.pb.o \
+ envoy/extensions/network/dns_resolver/cares/v3/cares_dns_resolver.pb.o \
+ envoy/extensions/network/dns_resolver/getaddrinfo/v3/getaddrinfo_dns_resolver.pb.o \
+ envoy/extensions/network/socket_interface/v3/default_socket_interface.pb.o \
+ envoy/extensions/quic/connection_id_generator/v3/envoy_deterministic_connection_id_generator.pb.o \
+ envoy/extensions/quic/crypto_stream/v3/crypto_stream.pb.o \
+ envoy/extensions/quic/proof_source/v3/proof_source.pb.o \
+ envoy/extensions/regex_engines/v3/google_re2.pb.o \
+ envoy/extensions/request_id/uuid/v3/uuid.pb.o \
+ envoy/extensions/transport_sockets/quic/v3/quic_transport.pb.o \
+ envoy/extensions/transport_sockets/raw_buffer/v3/raw_buffer.pb.o \
+ envoy/extensions/transport_sockets/tls/v3/common.pb.o \
+ envoy/extensions/transport_sockets/tls/v3/secret.pb.o \
+ envoy/extensions/transport_sockets/tls/v3/tls.pb.o \
+ envoy/extensions/upstreams/http/v3/http_protocol_options.pb.o \
envoy/service/accesslog/v2/als.pb.o \
+ envoy/service/accesslog/v3/als.pb.o \
+ envoy/service/cluster/v3/cds.pb.o \
envoy/service/discovery/v2/ads.pb.o \
envoy/service/discovery/v2/hds.pb.o \
envoy/service/discovery/v2/sds.pb.o \
+ envoy/service/discovery/v3/ads.pb.o \
+ envoy/service/discovery/v3/discovery.pb.o \
+ envoy/service/endpoint/v3/eds.pb.o \
+ envoy/service/endpoint/v3/leds.pb.o \
+ envoy/service/extension/v3/config_discovery.pb.o \
+ envoy/service/health/v3/hds.pb.o \
+ envoy/service/listener/v3/lds.pb.o \
envoy/service/load_stats/v2/lrs.pb.o \
+ envoy/service/load_stats/v3/lrs.pb.o \
envoy/service/metrics/v2/metrics_service.pb.o \
+ envoy/service/metrics/v3/metrics_service.pb.o \
envoy/service/ratelimit/v2/rls.pb.o \
+ envoy/service/ratelimit/v3/rls.pb.o \
+ envoy/service/route/v3/rds.pb.o \
+ envoy/service/route/v3/srds.pb.o \
+ envoy/service/runtime/v3/rtds.pb.o \
+ envoy/service/secret/v3/sds.pb.o \
+ envoy/type/hash_policy.pb.o \
+ envoy/type/http.pb.o \
+ envoy/type/http/v3/path_transformation.pb.o \
envoy/type/matcher/metadata.pb.o \
envoy/type/matcher/number.pb.o \
+ envoy/type/matcher/regex.pb.o \
envoy/type/matcher/string.pb.o \
+ envoy/type/matcher/v3/filter_state.pb.o \
+ envoy/type/matcher/v3/http_inputs.pb.o \
+ envoy/type/matcher/v3/metadata.pb.o \
+ envoy/type/matcher/v3/number.pb.o \
+ envoy/type/matcher/v3/path.pb.o \
+ envoy/type/matcher/v3/regex.pb.o \
+ envoy/type/matcher/v3/string.pb.o \
+ envoy/type/matcher/v3/value.pb.o \
envoy/type/matcher/value.pb.o \
+ envoy/type/metadata/v2/metadata.pb.o \
+ envoy/type/metadata/v3/metadata.pb.o \
envoy/type/percent.pb.o \
envoy/type/range.pb.o \
- gogoproto/gogo.pb.o \
+ envoy/type/semantic_version.pb.o \
+ envoy/type/tracing/v2/custom_tag.pb.o \
+ envoy/type/tracing/v3/custom_tag.pb.o \
+ envoy/type/v3/hash_policy.pb.o \
+ envoy/type/v3/http.pb.o \
+ envoy/type/v3/percent.pb.o \
+ envoy/type/v3/range.pb.o \
+ envoy/type/v3/ratelimit_unit.pb.o \
+ envoy/type/v3/semantic_version.pb.o \
+ envoy/type/v3/token_bucket.pb.o \
+ envoy/watchdog/v3/abort_action.pb.o \
google/api/annotations.pb.o \
+ google/api/expr/v1alpha1/checked.pb.o \
+ google/api/expr/v1alpha1/syntax.pb.o \
google/api/http.pb.o \
google/rpc/status.pb.o \
- metrics.pb.o \
- src/proto/grpc/health/v1/health.pb.o \
- validate/validate.pb.o
+ io/prometheus/client/metrics.pb.o \
+ opencensus/proto/trace/v1/trace_config.pb.o \
+ opentelemetry/proto/collector/logs/v1/logs_service.pb.o \
+ opentelemetry/proto/common/v1/common.pb.o \
+ opentelemetry/proto/logs/v1/logs.pb.o \
+ opentelemetry/proto/resource/v1/resource.pb.o \
+ src/core/lib/channel/channel_stack.o \
+ src/core/lib/gpr/env_posix.o \
+ src/core/lib/gprpp/global_config_env.o \
+ src/core/lib/gprpp/status_helper.o \
+ src/core/lib/gprpp/time.o \
+ src/core/lib/iomgr/combiner.o \
+ src/core/lib/iomgr/error.o \
+ src/core/lib/iomgr/exec_ctx.o \
+ src/core/lib/iomgr/executor.o \
+ src/core/lib/iomgr/iomgr.o \
+ src/core/lib/iomgr/iomgr_internal.o \
+ src/core/lib/iomgr/polling_entity.o \
+ src/core/lib/iomgr/pollset.o \
+ src/core/lib/iomgr/pollset_set.o \
+ src/core/lib/iomgr/timer.o \
+ src/core/lib/iomgr/timer_manager.o \
+ src/core/lib/slice/percent_encoding.o \
+ src/core/lib/slice/slice.o \
+ src/core/lib/slice/slice_buffer.o \
+ src/core/lib/surface/api_trace.o \
+ src/core/lib/surface/byte_buffer.o \
+ src/core/lib/surface/byte_buffer_reader.o \
+ src/core/lib/surface/call.o \
+ src/core/lib/surface/completion_queue.o \
+ src/core/lib/surface/completion_queue_factory.o \
+ src/core/lib/surface/event_string.o \
+ src/core/lib/surface/validate_metadata.o \
+ src/core/lib/transport/connectivity_state.o \
+ src/core/lib/transport/error_utils.o \
+ src/core/lib/transport/metadata_batch.o \
+ src/core/lib/transport/transport.o \
+ src/core/lib/transport/transport_op_string.o \
+ udpa/annotations/migrate.pb.o \
+ udpa/annotations/security.pb.o \
+ udpa/annotations/sensitive.pb.o \
+ udpa/annotations/status.pb.o \
+ udpa/annotations/versioning.pb.o \
+ udpa/type/v1/typed_struct.pb.o \
+ validate/validate.pb.o \
+ xds/annotations/v3/status.pb.o \
+ xds/core/v3/authority.pb.o \
+ xds/core/v3/collection_entry.pb.o \
+ xds/core/v3/context_params.pb.o \
+ xds/core/v3/extension.pb.o \
+ xds/core/v3/resource_locator.pb.o \
+ xds/core/v3/resource_name.pb.o \
+ xds/type/matcher/v3/matcher.pb.o \
+ xds/type/matcher/v3/regex.pb.o \
+ xds/type/matcher/v3/string.pb.o \
+ xds/type/v3/typed_struct.pb.o
source_OBJS= $(common_SRCS:.cc=.o) \
$(exe_SRCS:.cc=.o) \
$(extensions_SRCS:.cc=.o) \
$(server_SRCS:.cc=.o)
+external_OBJS= ../bazel/external/http_parser/http_parser.o \
+ $(addprefix ../../cel-cpp-11f9d66/,$(cel_cpp_SRCS:.cc=.o)) \
+ $(addprefix ../../,$(googleurl_SRCS:.cc=.o)) \
+ $(quiche_SRCS:.cc=.o)
+
common_SRCS= $(wildcard common/access_log/*.cc) \
common/api/api_impl.cc \
- common/api/os_sys_calls_impl.cc \
+ common/api/posix/os_sys_calls_impl.cc \
$(wildcard common/buffer/*.cc) \
$(wildcard common/chromium_url/*.cc) \
$(wildcard common/common/*.cc) \
common/common/posix/thread_impl.cc \
$(wildcard common/config/*.cc) \
+ $(wildcard common/config/xds_mux/*.cc) \
+ common/conn_pool/conn_pool_base.cc \
$(wildcard common/event/*.cc) \
+ common/event/posix/signal_impl.cc \
$(wildcard common/filesystem/*.cc) \
common/filesystem/kqueue/watcher_impl.cc \
$(wildcard common/filesystem/posix/*.cc) \
+ common/filter/config_discovery_impl.cc \
+ $(wildcard common/formatter/*.cc) \
$(wildcard common/grpc/*.cc) \
common/html/utility.cc \
$(wildcard common/http/*.cc) \
$(wildcard common/http/http1/*.cc) \
$(wildcard common/http/http2/*.cc) \
+ $(wildcard common/http/http3/*.cc) \
$(wildcard common/init/*.cc) \
$(wildcard common/json/*.cc) \
+ common/local_reply/local_reply.cc \
$(wildcard common/memory/*.cc) \
$(wildcard common/network/*.cc) \
+ common/network/dns_resolver/dns_factory_util.cc \
common/profiler/profiler.cc \
- common/protobuf/utility.cc \
+ $(wildcard common/protobuf/*.cc) \
+ common/quic/active_quic_listener.cc \
+ common/quic/client_codec_impl.cc \
+ common/quic/client_connection_factory_impl.cc \
+ $(wildcard common/quic/envoy_quic_*.cc) \
+ $(wildcard common/quic/platform/*.cc) \
+ $(wildcard common/quic/quic_*.cc) \
+ common/quic/send_buffer_monitor.cc \
+ $(wildcard common/rds/*.cc) \
$(wildcard common/router/*.cc) \
$(wildcard common/runtime/*.cc) \
$(wildcard common/secret/*.cc) \
+ $(wildcard common/signal/*.cc) \
$(wildcard common/singleton/*.cc) \
$(wildcard common/ssl/*.cc) \
$(wildcard common/stats/*.cc) \
$(wildcard common/stream_info/*.cc) \
- common/tcp/conn_pool.cc \
- common/thread/thread_factory_singleton.cc \
+ $(wildcard common/tcp/*.cc) \
common/thread_local/thread_local_impl.cc \
- common/tracing/http_tracer_impl.cc \
- $(wildcard common/upstream/*.cc)
+ $(wildcard common/tracing/*.cc) \
+ $(wildcard common/upstream/*.cc) \
+ $(wildcard common/version/*.cc)
-exe_SRCS= $(wildcard exe/*.cc)
+exe_SRCS= $(wildcard exe/*.cc) \
+ exe/posix/platform_impl.cc
extensions_SRCS=\
+ $(wildcard extensions/access_loggers/[^w]*/*.cc) \
+ extensions/early_data/default_early_data_policy.cc \
+ $(wildcard extensions/filters/common/expr/*.cc) \
extensions/filters/common/rbac/matchers.cc \
+ extensions/filters/network/http_connection_manager/config.cc \
+ $(wildcard extensions/listener_managers/listener_manager/*.cc) \
+ $(wildcard extensions/network/dns_resolver/[^a]*/*.cc) \
+ extensions/quic/crypto_stream/envoy_quic_crypto_client_stream.cc \
+ extensions/request_id/uuid/config.cc \
+ $(wildcard extensions/stat_sinks/metrics_service/*.cc) \
$(wildcard extensions/transport_sockets/tls/*.cc) \
- $(wildcard extensions/access_loggers/*/*.cc) \
- $(wildcard extensions/stat_sinks/metrics_service/*.cc)
+ extensions/transport_sockets/tls/cert_validator/factory.cc \
+ $(wildcard extensions/transport_sockets/tls/ocsp/*.cc) \
+ extensions/transport_sockets/tls/private_key/private_key_manager_impl.cc \
+ extensions/upstreams/http/config.cc
+
+define skiptests
+ $(filter-out %_fuzzer.cc %_test.cc,$(wildcard $(1)))
+endef
+
+quiche_SRCS= $(call skiptests,quiche/balsa/*.cc) \
+ $(call skiptests,quiche/common/*.cc) \
+ quiche/common/platform/api/quiche_file_utils.cc \
+ quiche/common/platform/api/quiche_hostname_utils.cc \
+ quiche/common/platform/api/quiche_mutex.cc \
+ quiche/common/platform/default/quiche_platform_impl/quiche_file_utils_impl.cc \
+ quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.cc \
+ quiche/common/platform/default/quiche_platform_impl/quiche_time_utils_impl.cc \
+ quiche/http2/adapter/callback_visitor.cc \
+ quiche/http2/adapter/event_forwarder.cc \
+ quiche/http2/adapter/header_validator.cc \
+ quiche/http2/adapter/http2_protocol.cc \
+ quiche/http2/adapter/http2_util.cc \
+ quiche/http2/adapter/nghttp2_adapter.cc \
+ quiche/http2/adapter/nghttp2_callbacks.cc \
+ quiche/http2/adapter/nghttp2_data_provider.cc \
+ quiche/http2/adapter/nghttp2_session.cc \
+ quiche/http2/adapter/nghttp2_util.cc \
+ quiche/http2/adapter/noop_header_validator.cc \
+ quiche/http2/adapter/oghttp2_adapter.cc \
+ quiche/http2/adapter/oghttp2_session.cc \
+ quiche/http2/adapter/oghttp2_util.cc \
+ quiche/http2/adapter/window_manager.cc \
+ quiche/http2/core/http2_trace_logging.cc \
+ $(call skiptests,quiche/http2/decoder/*.cc) \
+ $(wildcard quiche/http2/decoder/payload_decoders/*_payload_decoder.cc) \
+ $(call skiptests,quiche/http2/hpack/decoder/hpack_*.cc) \
+ quiche/http2/hpack/http2_hpack_constants.cc \
+ quiche/http2/hpack/huffman/hpack_huffman_decoder.cc \
+ quiche/http2/hpack/huffman/hpack_huffman_encoder.cc \
+ quiche/http2/hpack/huffman/huffman_spec_tables.cc \
+ quiche/http2/hpack/varint/hpack_varint_decoder.cc \
+ quiche/http2/hpack/varint/hpack_varint_encoder.cc \
+ quiche/http2/http2_constants.cc \
+ quiche/http2/http2_structures.cc \
+ quiche/quic/core/chlo_extractor.cc \
+ $(call skiptests,quiche/quic/core/congestion_control/*.cc) \
+ $(call skiptests,quiche/quic/core/crypto/*.cc) \
+ quiche/quic/core/deterministic_connection_id_generator.cc \
+ $(wildcard quiche/quic/core/frames/quic_*frame.cc) \
+ $(call skiptests,quiche/quic/core/http/*.cc) \
+ quiche/quic/core/legacy_quic_stream_id_manager.cc \
+ quiche/quic/core/proto/cached_network_parameters.pb.cc \
+ quiche/quic/core/proto/crypto_server_config.pb.cc \
+ quiche/quic/core/proto/source_address_token.pb.cc \
+ $(call skiptests,quiche/quic/core/qpack/*.cc) \
+ quiche/quic/core/quic_ack_listener_interface.cc \
+ quiche/quic/core/quic_alarm.cc \
+ quiche/quic/core/quic_bandwidth.cc \
+ quiche/quic/core/quic_buffered_packet_store.cc \
+ $(call skiptests,quiche/quic/core/quic_c*.cc) \
+ quiche/quic/core/quic_data_reader.cc \
+ quiche/quic/core/quic_data_writer.cc \
+ quiche/quic/core/quic_datagram_queue.cc \
+ quiche/quic/core/quic_dispatcher.cc \
+ quiche/quic/core/quic_error_codes.cc \
+ quiche/quic/core/quic_flow_controller.cc \
+ quiche/quic/core/quic_framer.cc \
+ quiche/quic/core/quic_idle_network_detector.cc \
+ quiche/quic/core/quic_mtu_discovery.cc \
+ quiche/quic/core/quic_network_blackhole_detector.cc \
+ quiche/quic/core/quic_packet_creator.cc \
+ quiche/quic/core/quic_packet_number.cc \
+ quiche/quic/core/quic_packets.cc \
+ quiche/quic/core/quic_path_validator.cc \
+ quiche/quic/core/quic_ping_manager.cc \
+ quiche/quic/core/quic_received_packet_manager.cc \
+ $(call skiptests,quiche/quic/core/quic_s*.cc) \
+ quiche/quic/core/quic_tag.cc \
+ quiche/quic/core/quic_time.cc \
+ quiche/quic/core/quic_time_wait_list_manager.cc \
+ quiche/quic/core/quic_transmission_info.cc \
+ quiche/quic/core/quic_types.cc \
+ quiche/quic/core/quic_unacked_packet_map.cc \
+ quiche/quic/core/quic_utils.cc \
+ quiche/quic/core/quic_version_manager.cc \
+ quiche/quic/core/quic_versions.cc \
+ quiche/quic/core/quic_write_blocked_list.cc \
+ quiche/quic/core/tls_chlo_extractor.cc \
+ quiche/quic/core/tls_client_handshaker.cc \
+ quiche/quic/core/tls_handshaker.cc \
+ quiche/quic/core/tls_server_handshaker.cc \
+ quiche/quic/core/uber_quic_stream_id_manager.cc \
+ quiche/quic/core/uber_received_packet_manager.cc \
+ quiche/quic/platform/api/quic_socket_address.cc \
+ $(call skiptests,quiche/spdy/core/hpack/*.cc) \
+ quiche/spdy/core/http2_frame_decoder_adapter.cc \
+ quiche/spdy/core/http2_header_block.cc \
+ quiche/spdy/core/http2_header_storage.cc \
+ quiche/spdy/core/recording_headers_handler.cc \
+ quiche/spdy/core/spdy_alt_svc_wire_format.cc \
+ quiche/spdy/core/spdy_frame_builder.cc \
+ quiche/spdy/core/spdy_framer.cc \
+ quiche/spdy/core/spdy_protocol.cc \
+ quiche/spdy/core/spdy_simple_arena.cc
-server_SRCS= $(wildcard server/config_validation/*.cc) \
- server/configuration_impl.o \
- server/connection_handler_impl.o \
- server/drain_manager_impl.o \
+server_SRCS= server/active_udp_listener.cc \
+ $(filter-out %_no_html.cc,$(wildcard server/admin/*.cc)) \
+ server/api_listener_impl.cc \
+ server/backtrace.cc \
+ $(wildcard server/config_validation/*.cc) \
+ server/configuration_impl.cc \
+ server/drain_manager_impl.cc \
+ server/factory_context_impl.cc \
server/guarddog_impl.cc \
- server/http/admin.o \
- server/http/config_tracker_impl.o \
- server/lds_api.o \
- server/listener_manager_impl.o \
server/options_impl.cc \
- server/options_impl_platform_default.o \
- server/overload_manager_impl.o \
+ server/options_impl_platform_default.cc \
+ server/overload_manager_impl.cc \
server/proto_descriptors.cc \
- server/server.o \
- server/watchdog_impl.o \
- server/worker_impl.o
+ server/regex_engine.cc \
+ server/server.cc \
+ server/ssl_context_manager.cc \
+ server/utils.cc \
+ server/worker_impl.cc
+
+cel_cpp_SRCS= base/ast.cc \
+ base/internal/managed_memory.cc \
+ eval/compiler/constant_folding.cc \
+ eval/compiler/flat_expr_builder.cc \
+ eval/compiler/qualified_reference_resolver.cc \
+ eval/compiler/resolver.cc \
+ eval/eval/attribute_trail.cc \
+ eval/eval/attribute_utility.cc \
+ eval/eval/comprehension_step.cc \
+ eval/eval/const_value_step.cc \
+ eval/eval/container_access_step.cc \
+ eval/eval/create_list_step.cc \
+ eval/eval/create_struct_step.cc \
+ eval/eval/evaluator_core.cc \
+ eval/eval/evaluator_stack.cc \
+ eval/eval/expression_build_warning.cc \
+ eval/eval/function_step.cc \
+ eval/eval/ident_step.cc \
+ eval/eval/jump_step.cc \
+ eval/eval/logic_step.cc \
+ eval/eval/select_step.cc \
+ eval/eval/shadowable_value_step.cc \
+ eval/eval/ternary_step.cc \
+ eval/public/ast_rewrite.cc \
+ eval/public/ast_traverse.cc \
+ eval/public/ast_traverse_native.cc \
+ eval/public/builtin_func_registrar.cc \
+ eval/public/cel_attribute.cc \
+ eval/public/cel_expr_builder_factory.cc \
+ eval/public/cel_function.cc \
+ eval/public/cel_function_registry.cc \
+ eval/public/cel_number.cc \
+ eval/public/cel_type_registry.cc \
+ eval/public/cel_value.cc \
+ eval/public/comparison_functions.cc \
+ eval/public/containers/container_backed_map_impl.cc \
+ eval/public/containers/field_access.cc \
+ eval/public/containers/internal_field_backed_list_impl.cc \
+ eval/public/containers/internal_field_backed_map_impl.cc \
+ eval/public/portable_cel_expr_builder_factory.cc \
+ eval/public/structs/cel_proto_wrap_util.cc \
+ eval/public/structs/cel_proto_wrapper.cc \
+ eval/public/structs/field_access_impl.cc \
+ eval/public/structs/proto_message_type_adapter.cc \
+ eval/public/structs/protobuf_descriptor_type_provider.cc \
+ eval/public/unknown_function_result_set.cc \
+ extensions/protobuf/memory_manager.cc \
+ internal/overflow.cc \
+ internal/proto_time_encoding.cc \
+ internal/proto_util.cc \
+ internal/utf8.cc \
+ tools/flatbuffers_backed_impl.cc
+
+googleurl_SRCS= base/debug/crash_logging.cc \
+ base/strings/string_piece.cc \
+ base/strings/string_util.cc \
+ base/strings/string_util_constants.cc \
+ base/strings/utf_string_conversion_utils.cc \
+ base/strings/utf_string_conversions.cc \
+ url/gurl.cc \
+ url/third_party/mozilla/url_parse.cc \
+ url/url_canon.cc \
+ url/url_canon_etc.cc \
+ url/url_canon_filesystemurl.cc \
+ url/url_canon_fileurl.cc \
+ url/url_canon_host.cc \
+ url/url_canon_internal.cc \
+ url/url_canon_ip.cc \
+ url/url_canon_mailtourl.cc \
+ url/url_canon_path.cc \
+ url/url_canon_pathurl.cc \
+ url/url_canon_query.cc \
+ url/url_canon_relative.cc \
+ url/url_canon_stdstring.cc \
+ url/url_canon_stdurl.cc \
+ url/url_constants.cc \
+ url/url_idna_icu.cc \
+ url/url_parse_file.cc \
+ url/url_util.cc
+
+server/admin/admin_html_util.o: server/admin/html/admin_html_gen.h
+server/admin/html/admin_html_gen.h:
+ cd server/admin/html && $(SHELL) generate_admin_html.sh \
+ admin_head_start.html admin.css active_stats.js \
+ active_params.html > admin_html_gen.h
+
+# XXX: $@ does not play well with VPATH :(
%.o: %.cc
- $(CCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $@ -c $<
-
-LIBS= $(LOCALBASE)/lib/libabsl_bad_optional_access.a \
- $(LOCALBASE)/lib/libabsl_base.a \
- $(LOCALBASE)/lib/libabsl_city.a \
- $(LOCALBASE)/lib/libabsl_graphcycles_internal.a \
- $(LOCALBASE)/lib/libabsl_hash.a \
- $(LOCALBASE)/lib/libabsl_hashtablez_sampler.a \
- $(LOCALBASE)/lib/libabsl_int128.a \
- $(LOCALBASE)/lib/libabsl_malloc_internal.a \
- $(LOCALBASE)/lib/libabsl_raw_hash_set.a \
- $(LOCALBASE)/lib/libabsl_spinlock_wait.a \
- $(LOCALBASE)/lib/libabsl_stacktrace.a \
- $(LOCALBASE)/lib/libabsl_strings.a \
- $(LOCALBASE)/lib/libabsl_symbolize.a \
- $(LOCALBASE)/lib/libabsl_synchronization.a \
- $(LOCALBASE)/lib/libabsl_throw_delegate.a \
- $(LOCALBASE)/lib/libabsl_time.a \
- $(LOCALBASE)/lib/libabsl_time_zone.a \
- -lcares -lcircllhist -lcrypto -levent -levent_pthreads -lgpr \
- -lgrpc++ -lhttp_parser -lnghttp2 -lprotobuf -lpthread -lssl \
- -lxxhash -lyaml-cpp
-
-envoy: $(addprefix ../api/,$(api_OBJS)) $(source_OBJS)
+ $(CCACHE) $(CXX) $(CXXFLAGS) $(CPPFLAGS) -o $(<:.cc=.o) -c $<
+
+ABSEIL_LIBS=\
+ base cord cordz_functions cordz_info flags_commandlineflag \
+ flags_internal flags_marshalling flags_parse flags_reflection \
+ hash raw_hash_set spinlock_wait stacktrace status statusor \
+ str_format_internal strings symbolize synchronization \
+ throw_delegate time time_zone
+
+LIBS= $(addprefix -labsl_,$(ABSEIL_LIBS)) \
+ -lcares -lcircllhist -lcrypto -levent -levent_pthreads -lfmt \
+ -lgpr -lgrpc -lgrpc++ -licuuc -lnghttp2 -lprotobuf -lpthread \
+ -lre2 -lssl -lupb -lxxhash -lyaml-cpp -lz
+
+VPATH= ../..
+
+envoy: $(addprefix ../api/,$(api_OBJS)) $(source_OBJS) $(external_OBJS)
$(CCACHE) $(CXX) $(LDFLAGS) -o $@ $^ $(LIBS) -Wl,-error-limit=0
./$@ --version