git: b8913b6c0cbf - main - devel/malloy: Add new port

From: Felix Palmen <zirias_at_FreeBSD.org>
Date: Mon, 05 Sep 2022 17:09:13 UTC
The branch main has been updated by zirias:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b8913b6c0cbf578b8930924729aa31b21b66281d

commit b8913b6c0cbf578b8930924729aa31b21b66281d
Author:     Joel Bodenmann <jbo@insane.engineer>
AuthorDate: 2022-07-20 18:32:00 +0000
Commit:     Felix Palmen <zirias@FreeBSD.org>
CommitDate: 2022-09-05 17:07:40 +0000

    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
---
 devel/Makefile         |   1 +
 devel/malloy/Makefile  |  63 ++++++++++++++++++++++++++++
 devel/malloy/distinfo  |   3 ++
 devel/malloy/pkg-descr |   7 ++++
 devel/malloy/pkg-plist | 110 +++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 184 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 26bf46a6bc48..c462dc161ebd 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1501,6 +1501,7 @@
     SUBDIR += magit-devel
     SUBDIR += make++
     SUBDIR += makedepend
+    SUBDIR += malloy
     SUBDIR += marisa-trie
     SUBDIR += marl
     SUBDIR += mate-common
diff --git a/devel/malloy/Makefile b/devel/malloy/Makefile
new file mode 100644
index 000000000000..10924ec560c8
--- /dev/null
+++ b/devel/malloy/Makefile
@@ -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>
diff --git a/devel/malloy/distinfo b/devel/malloy/distinfo
new file mode 100644
index 000000000000..c71275a85983
--- /dev/null
+++ b/devel/malloy/distinfo
@@ -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
diff --git a/devel/malloy/pkg-descr b/devel/malloy/pkg-descr
new file mode 100644
index 000000000000..58969904de15
--- /dev/null
+++ b/devel/malloy/pkg-descr
@@ -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
diff --git a/devel/malloy/pkg-plist b/devel/malloy/pkg-plist
new file mode 100644
index 000000000000..23ac164eb6b3
--- /dev/null
+++ b/devel/malloy/pkg-plist
@@ -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