Skip to content

Commit

Permalink
www/restinio: New port: Asynchronous HTTP/WebSocket server C++14 library
Browse files Browse the repository at this point in the history
  • Loading branch information
yurivict committed Nov 6, 2022
1 parent f25a372 commit fa2f0ec
Show file tree
Hide file tree
Showing 5 changed files with 223 additions and 0 deletions.
1 change: 1 addition & 0 deletions www/Makefile
Expand Up @@ -1819,6 +1819,7 @@
SUBDIR += reproxy
SUBDIR += resin3
SUBDIR += restbed
SUBDIR += restinio
SUBDIR += retawq
SUBDIR += rss-bridge
SUBDIR += rsskit
Expand Down
46 changes: 46 additions & 0 deletions www/restinio/Makefile
@@ -0,0 +1,46 @@
PORTNAME= restinio
DISTVERSIONPREFIX= v.
DISTVERSION= 0.6.17
CATEGORIES= www devel

MAINTAINER= yuri@FreeBSD.org
COMMENT= Asynchronous HTTP/WebSocket server C++14 library
WWW= https://stiffstream.com/en/products/restinio.html

LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/../LICENSE

BUILD_DEPENDS= asio>0:net/asio \
libfmt>0:devel/libfmt \
sobjectizer>0:devel/sobjectizer
LIB_DEPENDS= libboost_regex.so:devel/boost-libs \
libhttp_parser.so:www/http-parser \
libpcre2-8.so:devel/pcre2
RUN_DEPENDS= asio>0:net/asio \
libfmt>0:devel/libfmt \
sobjectizer>0:devel/sobjectizer

USES= cmake:testing compiler:c++14-lang localbase:ldflags

USE_GITHUB= yes
GH_ACCOUNT= Stiffstream
GH_TUPLE= catchorg:Clara:2bfd8b2:clara

WRKSRC_SUBDIR= dev

CXXFLAGS+= -I${WRKSRC_clara}/include

CMAKE_ON= RESTINIO_FIND_DEPS RESTINIO_USE_EXTERNAL_HTTP_PARSER RESTINIO_USE_EXTERNAL_SOBJECTIZER
CMAKE_OFF= RESTINIO_BENCH RESTINIO_INSTALL_BENCHES RESTINIO_TEST
CMAKE_TESTING_ON= RESTINIO_TEST

OPTIONS_DEFINE= SAMPLES
OPTIONS_SUB= yes

SAMPLES_DESC= Build and install samples
SAMPLES_USES= ssl
SAMPLES_CMAKE_BOOL= RESTINIO_SAMPLE RESTINIO_INSTALL_SAMPLES
SAMPLES_VARS_OFF= NO_ARCH=yes
SAMPLES_BUILD_DEPENDS= json-dto>0:devel/json-dto

.include <bsd.port.mk>
5 changes: 5 additions & 0 deletions www/restinio/distinfo
@@ -0,0 +1,5 @@
TIMESTAMP = 1667716405
SHA256 (Stiffstream-restinio-v.0.6.17_GH0.tar.gz) = 0140b23f50bb964f6917d1f99205476eba92203dc586673bdf2ea48d7406f2c4
SIZE (Stiffstream-restinio-v.0.6.17_GH0.tar.gz) = 670089
SHA256 (catchorg-Clara-2bfd8b2_GH0.tar.gz) = 679332a04a59d13517a6f56a14b70125a157e6cc7c49bb530b52521c38eef41d
SIZE (catchorg-Clara-2bfd8b2_GH0.tar.gz) = 128573
3 changes: 3 additions & 0 deletions www/restinio/pkg-descr
@@ -0,0 +1,3 @@
RESTinio is a header-only C++14 library that gives you an embedded
HTTP/Websocket server. It is based on standalone version of ASIO and
targeted primarily for asynchronous processing of HTTP-requests.
168 changes: 168 additions & 0 deletions www/restinio/pkg-plist
@@ -0,0 +1,168 @@
%%SAMPLES%%bin/dh2048.pem
%%SAMPLES%%bin/key.pem
%%SAMPLES%%bin/sample.async_handling_with_sobjectizer
%%SAMPLES%%bin/sample.chained_handlers
%%SAMPLES%%bin/sample.compression
%%SAMPLES%%bin/sample.connection_state
%%SAMPLES%%bin/sample.custom_buffer
%%SAMPLES%%bin/sample.decompression
%%SAMPLES%%bin/sample.easy_parser_router
%%SAMPLES%%bin/sample.express_router
%%SAMPLES%%bin/sample.express_router_tutorial
%%SAMPLES%%bin/sample.extra_data_factory
%%SAMPLES%%bin/sample.file_upload
%%SAMPLES%%bin/sample.hello_world
%%SAMPLES%%bin/sample.hello_world_basic
%%SAMPLES%%bin/sample.hello_world_delayed
%%SAMPLES%%bin/sample.hello_world_https
%%SAMPLES%%bin/sample.hello_world_minimal
%%SAMPLES%%bin/sample.hello_world_sendfile
%%SAMPLES%%bin/sample.hello_world_sendfile_https
%%SAMPLES%%bin/sample.ip_blocker
%%SAMPLES%%bin/sample.notificators
%%SAMPLES%%bin/sample.query_string_params
%%SAMPLES%%bin/sample.run_existing_server
%%SAMPLES%%bin/sample.run_for_minute
%%SAMPLES%%bin/sample.sendfiles
%%SAMPLES%%bin/sample.shared_tls_context
%%SAMPLES%%bin/sample.tls_inspector
%%SAMPLES%%bin/sample.try_parse_query_string
%%SAMPLES%%bin/sample.using_external_io_context
%%SAMPLES%%bin/sample.websocket
%%SAMPLES%%bin/sample.websocket_detailed
%%SAMPLES%%bin/sample.websocket_wss
%%SAMPLES%%bin/server.pem
%%SAMPLES%%bin/test_decompression.sh
%%SAMPLES%%bin/wss_dh2048.pem
%%SAMPLES%%bin/wss_key.pem
%%SAMPLES%%bin/wss_server.pem
include/restinio/all.hpp
include/restinio/asio_include.hpp
include/restinio/asio_timer_manager.hpp
include/restinio/buffers.hpp
include/restinio/cast_to.hpp
include/restinio/chunked_input_info.hpp
include/restinio/common_types.hpp
include/restinio/compiler_features.hpp
include/restinio/connection_count_limiter.hpp
include/restinio/connection_state_listener.hpp
include/restinio/default_strands.hpp
include/restinio/exception.hpp
include/restinio/expected.hpp
include/restinio/helpers/easy_parser.hpp
include/restinio/helpers/file_upload.hpp
include/restinio/helpers/http_field_parsers/accept-charset.hpp
include/restinio/helpers/http_field_parsers/accept-encoding.hpp
include/restinio/helpers/http_field_parsers/accept-language.hpp
include/restinio/helpers/http_field_parsers/accept.hpp
include/restinio/helpers/http_field_parsers/authorization.hpp
include/restinio/helpers/http_field_parsers/basic_auth.hpp
include/restinio/helpers/http_field_parsers/basics.hpp
include/restinio/helpers/http_field_parsers/bearer_auth.hpp
include/restinio/helpers/http_field_parsers/cache-control.hpp
include/restinio/helpers/http_field_parsers/connection.hpp
include/restinio/helpers/http_field_parsers/content-disposition.hpp
include/restinio/helpers/http_field_parsers/content-encoding.hpp
include/restinio/helpers/http_field_parsers/content-type.hpp
include/restinio/helpers/http_field_parsers/details/pct_encoded_symbols.hpp
include/restinio/helpers/http_field_parsers/host.hpp
include/restinio/helpers/http_field_parsers/media-type.hpp
include/restinio/helpers/http_field_parsers/range.hpp
include/restinio/helpers/http_field_parsers/transfer-encoding.hpp
include/restinio/helpers/http_field_parsers/try_parse_field.hpp
include/restinio/helpers/http_field_parsers/user-agent.hpp
include/restinio/helpers/multipart_body.hpp
include/restinio/helpers/string_algo.hpp
include/restinio/http_headers.hpp
include/restinio/http_server.hpp
include/restinio/http_server_run.hpp
include/restinio/impl/acceptor.hpp
include/restinio/impl/connection.hpp
include/restinio/impl/connection_base.hpp
include/restinio/impl/connection_settings.hpp
include/restinio/impl/executor_wrapper.hpp
include/restinio/impl/fixed_buffer.hpp
include/restinio/impl/header_helpers.hpp
include/restinio/impl/include_fmtlib.hpp
include/restinio/impl/ioctx_on_thread_pool.hpp
include/restinio/impl/os_posix.ipp
include/restinio/impl/os_unknown.ipp
include/restinio/impl/os_win.ipp
include/restinio/impl/overflow_controlled_integer_accumulator.hpp
include/restinio/impl/parser_callbacks.ipp
include/restinio/impl/response_coordinator.hpp
include/restinio/impl/sendfile_operation.hpp
include/restinio/impl/sendfile_operation_default.ipp
include/restinio/impl/sendfile_operation_posix.ipp
include/restinio/impl/sendfile_operation_win.ipp
include/restinio/impl/string_caseless_compare.hpp
include/restinio/impl/tls_socket.hpp
include/restinio/impl/to_lower_lut.hpp
include/restinio/impl/write_group_output_ctx.hpp
include/restinio/incoming_http_msg_limits.hpp
include/restinio/ip_blocker.hpp
include/restinio/message_builders.hpp
include/restinio/null_logger.hpp
include/restinio/null_mutex.hpp
include/restinio/null_timer_manager.hpp
include/restinio/optional.hpp
include/restinio/os.hpp
include/restinio/ostream_logger.hpp
include/restinio/path2regex/path2regex.hpp
include/restinio/request_handler.hpp
include/restinio/router/boost_regex_engine.hpp
include/restinio/router/easy_parser_router.hpp
include/restinio/router/express.hpp
include/restinio/router/impl/target_path_holder.hpp
include/restinio/router/method_matcher.hpp
include/restinio/router/non_matched_request_handler.hpp
include/restinio/router/pcre2_regex_engine.hpp
include/restinio/router/pcre_regex_engine.hpp
include/restinio/router/std_regex_engine.hpp
include/restinio/sendfile.hpp
include/restinio/sendfile_defs_default.hpp
include/restinio/sendfile_defs_posix.hpp
include/restinio/sendfile_defs_win.hpp
include/restinio/settings.hpp
include/restinio/so5/so_timer_manager.hpp
include/restinio/string_view.hpp
include/restinio/sync_chain/fixed_size.hpp
include/restinio/sync_chain/growable_size.hpp
include/restinio/tcp_connection_ctx_base.hpp
include/restinio/third_party/expected-lite/expected.hpp
include/restinio/third_party/optional-lite/optional.hpp
include/restinio/third_party/string-view-lite/string_view.hpp
include/restinio/third_party/variant-lite/variant.hpp
include/restinio/timer_common.hpp
include/restinio/tls.hpp
include/restinio/tls_fwd.hpp
include/restinio/traits.hpp
include/restinio/transforms/zlib.hpp
include/restinio/uri_helpers.hpp
include/restinio/utils/at_scope_exit.hpp
include/restinio/utils/base64.hpp
include/restinio/utils/base64_lut.ipp
include/restinio/utils/from_string.hpp
include/restinio/utils/from_string_details.ipp
include/restinio/utils/impl/bitops.hpp
include/restinio/utils/impl/safe_uint_truncate.hpp
include/restinio/utils/metaprogramming.hpp
include/restinio/utils/percent_encoding.hpp
include/restinio/utils/sha1.hpp
include/restinio/utils/suppress_exceptions.hpp
include/restinio/utils/tagged_scalar.hpp
include/restinio/utils/tuple_algorithms.hpp
include/restinio/utils/utf8_checker.hpp
include/restinio/value_or.hpp
include/restinio/variant.hpp
include/restinio/version.hpp
include/restinio/websocket/impl/utf8.hpp
include/restinio/websocket/impl/ws_connection.hpp
include/restinio/websocket/impl/ws_connection_base.hpp
include/restinio/websocket/impl/ws_parser.hpp
include/restinio/websocket/impl/ws_protocol_validator.hpp
include/restinio/websocket/message.hpp
include/restinio/websocket/websocket.hpp
lib/cmake/restinio/restinio-config-version.cmake
lib/cmake/restinio/restinio-config.cmake
lib/cmake/restinio/restinio-targets.cmake

0 comments on commit fa2f0ec

Please sign in to comment.