git: ee93b5109d12 - main - devel/marl: New port: Hybrid thread / fiber task scheduler written in C++11

Yuri Victorovich yuri at FreeBSD.org
Sun Sep 12 18:14:18 UTC 2021


The branch main has been updated by yuri:

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

commit ee93b5109d12d142dd748fcae963f29d8c354db9
Author:     Yuri Victorovich <yuri at FreeBSD.org>
AuthorDate: 2021-09-12 18:10:26 +0000
Commit:     Yuri Victorovich <yuri at FreeBSD.org>
CommitDate: 2021-09-12 18:10:26 +0000

    devel/marl: New port: Hybrid thread / fiber task scheduler written in C++11
---
 devel/Makefile                        |  1 +
 devel/marl/Makefile                   | 22 ++++++++++++++++++++++
 devel/marl/distinfo                   |  5 +++++
 devel/marl/files/patch-CMakeLists.txt | 18 ++++++++++++++++++
 devel/marl/pkg-descr                  |  7 +++++++
 devel/marl/pkg-plist                  | 28 ++++++++++++++++++++++++++++
 6 files changed, 81 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index aff682d58cbc..275ea8fd77ec 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1514,6 +1514,7 @@
     SUBDIR += make++
     SUBDIR += makedepend
     SUBDIR += marisa-trie
+    SUBDIR += marl
     SUBDIR += mate-common
     SUBDIR += matreshka
     SUBDIR += maven
diff --git a/devel/marl/Makefile b/devel/marl/Makefile
new file mode 100644
index 000000000000..48c1469ffe3d
--- /dev/null
+++ b/devel/marl/Makefile
@@ -0,0 +1,22 @@
+PORTNAME=	marl
+PORTVERSION=	g20210818
+CATEGORIES=	devel
+
+MAINTAINER=	yuri at FreeBSD.org
+COMMENT=	Hybrid thread / fiber task scheduler written in C++11
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		cmake:testing compiler:c++11-lang
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	google
+GH_TAGNAME=	4960243
+GH_TUPLE=	google:googletest:fb49e6c:googletest/third_party/googletest
+
+CMAKE_ON=	MARL_BUILD_SHARED MARL_INSTALL
+CMAKE_TESTING_ON=	MARL_BUILD_TESTS MARL_BUILD_EXAMPLES # tests are built but not run, see https://github.com/google/marl/issues/205
+
+.include <bsd.port.mk>
diff --git a/devel/marl/distinfo b/devel/marl/distinfo
new file mode 100644
index 000000000000..a897bd05b63e
--- /dev/null
+++ b/devel/marl/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1631469318
+SHA256 (google-marl-g20210818-4960243_GH0.tar.gz) = 0afe4b5345a67e3a4a8eb1a6fbbf7e9ff6b56d0903bd767bb91c1171bdd0226f
+SIZE (google-marl-g20210818-4960243_GH0.tar.gz) = 101005
+SHA256 (google-googletest-fb49e6c_GH0.tar.gz) = 9dea59892fff919ab6c005f36971e76b4bb4e399a6b22fbf85a30352d8a52be2
+SIZE (google-googletest-fb49e6c_GH0.tar.gz) = 905489
diff --git a/devel/marl/files/patch-CMakeLists.txt b/devel/marl/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..63ccb8f69c89
--- /dev/null
+++ b/devel/marl/files/patch-CMakeLists.txt
@@ -0,0 +1,18 @@
+--- CMakeLists.txt.orig	2021-09-12 17:56:22 UTC
++++ CMakeLists.txt
+@@ -72,13 +72,13 @@ set_if_not_defined(MARL_BENCHMARK_DIR ${MARL_THIRD_PAR
+ ###########################################################
+ # Submodules
+ ###########################################################
+-if(MARL_BUILD_TESTS)
++if(FALSE AND MARL_BUILD_TESTS)
+     if(NOT EXISTS ${MARL_GOOGLETEST_DIR}/.git)
+         message(WARNING "third_party/googletest submodule missing.")
+         message(WARNING "Run: `git submodule update --init` to build tests.")
+         set(MARL_BUILD_TESTS OFF)
+     endif()
+-endif(MARL_BUILD_TESTS)
++endif(FALSE AND MARL_BUILD_TESTS)
+ 
+ if(MARL_BUILD_BENCHMARKS)
+     if(NOT EXISTS ${MARL_BENCHMARK_DIR}/.git)
diff --git a/devel/marl/pkg-descr b/devel/marl/pkg-descr
new file mode 100644
index 000000000000..0777236ee17d
--- /dev/null
+++ b/devel/marl/pkg-descr
@@ -0,0 +1,7 @@
+Marl is a C++11 library that provides a fluent interface for running tasks
+across a number of threads.
+
+Marl uses a combination of fibers and threads to allow efficient execution of
+tasks that can block, while keeping a fixed number of hardware threads.
+
+WWW: https://github.com/google/marl
diff --git a/devel/marl/pkg-plist b/devel/marl/pkg-plist
new file mode 100644
index 000000000000..301a95617890
--- /dev/null
+++ b/devel/marl/pkg-plist
@@ -0,0 +1,28 @@
+include/marl/blockingcall.h
+include/marl/conditionvariable.h
+include/marl/containers.h
+include/marl/dag.h
+include/marl/debug.h
+include/marl/defer.h
+include/marl/deprecated.h
+include/marl/event.h
+include/marl/export.h
+include/marl/finally.h
+include/marl/memory.h
+include/marl/mutex.h
+include/marl/parallelize.h
+include/marl/pool.h
+include/marl/sanitizers.h
+include/marl/scheduler.h
+include/marl/task.h
+include/marl/thread.h
+include/marl/ticket.h
+include/marl/trace.h
+include/marl/tsa.h
+include/marl/waitgroup.h
+lib/cmake/marl/marl-config.cmake
+lib/cmake/marl/marl-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/marl/marl-targets.cmake
+lib/libmarl.so
+lib/libmarl.so.1
+lib/libmarl.so.1.0.0-dev


More information about the dev-commits-ports-main mailing list