# Copyright (c) Meta Platforms, Inc. and affiliates.
# All rights reserved.
#
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.

# Auto-generated by proxygen/facebook/generate_cmake.py - DO NOT EDIT MANUALLY

proxygen_add_library(proxygen_http_coro_handler_chain
  SRCS
    HTTPHandlerChain.cpp
  EXPORTED_DEPS
    proxygen_coro
)

proxygen_add_library(proxygen_http_coro_filter_factory_handler
  SRCS
    HTTPFilterFactoryHandler.cpp
  DEPS
    proxygen_coro_source
    proxygen_http_coro_filters_FilterFactory
  EXPORTED_DEPS
    proxygen_http_coro_handler_chain
)

proxygen_add_library(proxygen_coro_source
  SRCS
    HTTPError.cpp
    HTTPEvents.cpp
    HTTPSourceFilter.cpp
  DEPS
    proxygen_http_http_utils
    proxygen_http_webtransport
    Folly::folly_container_f14_hash
  EXPORTED_DEPS
    proxygen_error
    proxygen_http_codec_error_code
    proxygen_http_coro_util_timed_baton
    proxygen_http_h3_errors
    proxygen_http_http_header_size
    proxygen_http_message
    proxygen_utils_parse_url
    proxygen_utils_weak_ref_counted_ptr
    mvfst::mvfst_common_buf_util
    Folly::folly_conv
    Folly::folly_coro_task
    Folly::folly_function
    Folly::folly_io_iobuf
    Folly::folly_logging_logging
    Folly::folly_optional
    Folly::folly_scope_guard
)

proxygen_add_library(proxygen_http_coro_coro_reader
  SRCS
    HTTPSourceReader.cpp
  EXPORTED_DEPS
    proxygen_coro_source
    proxygen_http_coro_util_timed_baton
    Folly::folly_logging_logging
)

proxygen_add_library(proxygen_http_coro_coro_stream_source
  SRCS
    HTTPStreamSource.cpp
  DEPS
    Folly::folly_logging_logging
  EXPORTED_DEPS
    proxygen_coro_source
    proxygen_http_codec_codec_common
    proxygen_http_coro_util_timed_baton
    proxygen_http_coro_util_window_contiainer
    proxygen_http_session_http_state_machine_lib
)

proxygen_add_library(proxygen_coro
  SRCS
    HTTPBodyEventQueue.cpp
    HTTPByteEventHelpers.cpp
    HTTPCoroSession.cpp
  DEPS
    proxygen_http_codec_h3_early_data_handler
    proxygen_http_codec_http1x_codec
    proxygen_http_coro_util_CoroWtSession
    proxygen_http_priority_functions
    proxygen_http_session_stats
    proxygen_http_webtransport_httpwebtransport
    mvfst::mvfst_common_address_quic_socket_address_bridge
    mvfst::mvfst_state_quic_stream_utilities
    Folly::folly_conv
  EXPORTED_DEPS
    proxygen_coro_source
    proxygen_http_codec_codec_common
    proxygen_http_codec_hq_codec
    proxygen_http_codec_rate_limit_filters
    proxygen_http_coro_coro_stream_source
    proxygen_http_coro_util_DetachableExecutor
    proxygen_http_coro_util_awaitable_keepalive
    proxygen_http_coro_util_cancellable_baton
    proxygen_http_coro_util_window_contiainer
    proxygen_http_session_quic_protocol_info
    proxygen_http_session_stream_dispatcher
    proxygen_utils_util_inl
    mvfst::mvfst_api_transport
    mvfst::mvfst_common_events_folly_eventbase
    mvfst::mvfst_common_optional
    mvfst::mvfst_priority_http_priority_queue
    wangle::wangle_acceptor_acceptor_core
    wangle::wangle_acceptor_managed
    Folly::folly_container_evicting_cache_map
    Folly::folly_container_f14_hash
    Folly::folly_coro_async_scope
    Folly::folly_coro_task
    Folly::folly_io_async_async_base
    Folly::folly_io_async_async_socket
    Folly::folly_io_coro_socket
    Folly::folly_logging_logging
    Folly::folly_utility
)

proxygen_add_library(proxygen_coro_stream_source_sink
  SRCS
    HTTPStreamSourceSink.cpp
  EXPORTED_DEPS
    proxygen_coro
    proxygen_coro_source
    proxygen_http_coro_coro_reader
    proxygen_http_coro_coro_stream_source
    proxygen_http_session_http_transaction
    proxygen_http_sink_client_sink_interface
    proxygen_utils_conditional_gate
)

proxygen_add_library(proxygen_http_coro_http_transaction_adaptor_source
  SRCS
    HTTPTransactionAdaptorSource.cpp
  DEPS
    proxygen_http_coro_coro_reader
  EXPORTED_DEPS
    proxygen_coro_source
    proxygen_http_coro_coro_stream_source
    proxygen_http_session_http_transaction
    proxygen_utils_conditional_gate
)

add_subdirectory(client)
add_subdirectory(filters)
add_subdirectory(server)
add_subdirectory(transport)
add_subdirectory(util)
