devel/malloy: Add new port

Embeddable HTTP(S) and WS(S) components for C++20.

PR:			265077
Approved by:		tcberner (mentor)
Differential Revision:	https://reviews.freebsd.org/D36460
This commit is contained in:
Joel Bodenmann 2022-07-20 18:32:00 +00:00 committed by Felix Palmen
parent b1cdfe21d8
commit b8913b6c0c
5 changed files with 184 additions and 0 deletions

View File

@ -1501,6 +1501,7 @@
SUBDIR += magit-devel
SUBDIR += make++
SUBDIR += makedepend
SUBDIR += malloy
SUBDIR += marisa-trie
SUBDIR += marl
SUBDIR += mate-common

63
devel/malloy/Makefile Normal file
View File

@ -0,0 +1,63 @@
PORTNAME= malloy
DISTVERSION= 0.5.1
CATEGORIES= devel
MAINTAINER= jbo@insane.engineer
COMMENT= Embeddable HTTP(S) and WS(S) client/server components for C++
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/license.txt
BROKEN_FreeBSD_12= some C++20 STL headers are missing on 12.3,\
see https://bugs.freebsd.org/255374
BUILD_DEPENDS= boost-libs>1.74.0:devel/boost-libs
LIB_DEPENDS= libfmt.so:devel/libfmt \
libspdlog.so:devel/spdlog
USES= cmake
USE_GITHUB= yes
GH_ACCOUNT= tectu
CMAKE_ON= MALLOY_BUILD_SHARED
CMAKE_OFF= MALLOY_BUILD_EXAMPLES \
MALLOY_DEPENDENCY_FMT_DOWNLOAD \
MALLOY_DEPENDENCY_SPDLOG_DOWNLOAD
OPTIONS_DEFINE= DOCS EXAMPLES HTML TEST TLS
OPTIONS_DEFAULT= CLIENT DOCS EXAMPLES HTML SERVER TLS
OPTIONS_MULTI= HTTP
OPTIONS_MULTI_HTTP= CLIENT SERVER
OPTIONS_SUB= yes
CLIENT_DESC= HTTP client support
HTML_DESC= HTML features
SERVER_DESC= HTTP server support
CLIENT_CMAKE_BOOL= MALLOY_FEATURE_CLIENT
DOCS_BUILD_DEPENDS= doxygen:devel/doxygen
DOCS_PORTDOCS= *
HTML_CMAKE_BOOL= MALLOY_FEATURE_HTML
SERVER_CMAKE_BOOL= MALLOY_FEATURE_SERVER
TEST_IMPLIES= CLIENT HTML SERVER
TEST_CMAKE_BOOL= MALLOY_BUILD_TESTS
TLS_USES= ssl
TLS_CMAKE_BOOL= MALLOY_FEATURE_TLS
post-build-DOCS-on:
(cd ${WRKSRC} && ${LOCALBASE}/bin/doxygen)
post-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/readme.md ${STAGEDIR}${DOCSDIR}
(cd ${WRKSRC}/doc/doxygen && \
${COPYTREE_SHARE} html ${STAGEDIR}${DOCSDIR})
post-install-EXAMPLES-on:
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
(cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
do-test-TEST-on:
${TEST_WRKSRC}/bin/malloy-tests
.include <bsd.port.mk>

3
devel/malloy/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1657217605
SHA256 (tectu-malloy-0.5.1_GH0.tar.gz) = 5126f2eada548bb1e8bb39abfe15a25beafc475d488fb916c83c328836e62087
SIZE (tectu-malloy-0.5.1_GH0.tar.gz) = 188078

7
devel/malloy/pkg-descr Normal file
View File

@ -0,0 +1,7 @@
Malloy is a C++ library providing embeddable server & client components for
both HTTP(S) and WebSocket(Secure).
The library is written in C++20 and provides easy-to-use high-level interfaces
for creating server and client applications painlessly.
WWW: https://github.com/tectu/malloy

110
devel/malloy/pkg-plist Normal file
View File

@ -0,0 +1,110 @@
%%CLIENT%%include/malloy/client/controller.hpp
%%CLIENT%%include/malloy/client/http/connection.hpp
%%CLIENT%%include/malloy/client/http/connection_plain.hpp
%%CLIENT%%include/malloy/client/http/connection_tls.hpp
%%CLIENT%%include/malloy/client/type_traits.hpp
%%CLIENT%%include/malloy/client/websocket/connection.hpp
include/malloy/core/controller.hpp
include/malloy/core/detail/action_queue.hpp
include/malloy/core/detail/controller_run_result.hpp
include/malloy/core/detail/version_checks.hpp
include/malloy/core/error.hpp
%%HTML%%include/malloy/core/html/form.hpp
%%HTML%%include/malloy/core/html/form_renderer.hpp
%%HTML%%include/malloy/core/html/html.hpp
%%HTML%%include/malloy/core/html/multipart_parser.hpp
include/malloy/core/http/cookie.hpp
include/malloy/core/http/filters/file.hpp
include/malloy/core/http/generator.hpp
include/malloy/core/http/http.hpp
include/malloy/core/http/request.hpp
include/malloy/core/http/response.hpp
include/malloy/core/http/session/manager.hpp
include/malloy/core/http/session/session.hpp
include/malloy/core/http/session/storage.hpp
include/malloy/core/http/session/storage_memory.hpp
include/malloy/core/http/session/types.hpp
include/malloy/core/http/type_traits.hpp
include/malloy/core/http/types.hpp
include/malloy/core/http/utils.hpp
%%TLS%%include/malloy/core/tls/manager.hpp
include/malloy/core/type_traits.hpp
include/malloy/core/utils.hpp
include/malloy/core/websocket/connection.hpp
include/malloy/core/websocket/stream.hpp
include/malloy/core/websocket/websocket.hpp
%%SERVER%%include/malloy/server/auth/basic.hpp
%%SERVER%%include/malloy/server/http/connection.hpp
%%SERVER%%include/malloy/server/http/connection_detector.hpp
%%SERVER%%include/malloy/server/http/connection_plain.hpp
%%SERVER%%include/malloy/server/http/connection_t.hpp
%%SERVER%%include/malloy/server/http/connection_tls.hpp
%%SERVER%%include/malloy/server/http/preflight_config.hpp
%%SERVER%%include/malloy/server/http/request_generator_t.hpp
%%SERVER%%include/malloy/server/listener.hpp
%%SERVER%%include/malloy/server/routing/endpoint.hpp
%%SERVER%%include/malloy/server/routing/endpoint_http.hpp
%%SERVER%%include/malloy/server/routing/endpoint_http_files.hpp
%%SERVER%%include/malloy/server/routing/endpoint_http_redirect.hpp
%%SERVER%%include/malloy/server/routing/endpoint_http_regex.hpp
%%SERVER%%include/malloy/server/routing/endpoint_websocket.hpp
%%SERVER%%include/malloy/server/routing/router.hpp
%%SERVER%%include/malloy/server/routing/type_traits.hpp
%%SERVER%%include/malloy/server/routing_context.hpp
%%SERVER%%include/malloy/server/websocket/connection.hpp
lib/cmake/malloy/malloy-config-version.cmake
lib/cmake/malloy/malloy-config.cmake
lib/cmake/malloy/malloy-targets-%%CMAKE_BUILD_TYPE%%.cmake
lib/cmake/malloy/malloy-targets.cmake
%%CLIENT%%lib/libmalloy-client.so
%%CLIENT%%lib/libmalloy-client.so.0.5.1
lib/libmalloy-core.so
lib/libmalloy-core.so.0.5.1
%%SERVER%%lib/libmalloy-server.so
%%SERVER%%lib/libmalloy-server.so.0.5.1
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/example.cmake
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http-custom-filter/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http-custom-filter/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http-file-download/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http-file-download/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http_plain/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http_plain/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http_tls/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/http_tls/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/websocket_plain/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/websocket_plain/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/websocket_secure/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/client/websocket_secure/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/example.hpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/basic/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/basic/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/custom-request-filter/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/custom-request-filter/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/example.cmake
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/html_form/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/html_form/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/files/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/files/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/policies/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/policies/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/preflights/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/preflights/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/regex/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/regex/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/subrouters/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/routing/subrouters/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/session/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/session/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/ssl/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/ssl/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/static_content/file2.html
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/static_content/index.html
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/static_content/malloy.cert
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/static_content/malloy.key
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/websocket/CMakeLists.txt
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/server/websocket/main.cpp
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ws_handlers.hpp