git: 2647f3e012a0 - main - science/arbor: New port: Multi-compartment neural network simulation library

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 27 Nov 2022 10:12:24 UTC
The branch main has been updated by yuri:

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

commit 2647f3e012a03a3146eef7bab28639690022c285
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-11-27 10:08:23 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-11-27 10:12:20 +0000

    science/arbor: New port: Multi-compartment neural network simulation library
---
 science/Makefile        |   1 +
 science/arbor/Makefile  |  33 ++++++++++++++
 science/arbor/distinfo  |   3 ++
 science/arbor/pkg-descr |   3 ++
 science/arbor/pkg-plist | 114 ++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 154 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index 9599ad5c079a..c67e3684888c 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -28,6 +28,7 @@
     SUBDIR += aircraft-datcom
     SUBDIR += antioch
     SUBDIR += apbs
+    SUBDIR += arbor
     SUBDIR += ascent
     SUBDIR += atompaw
     SUBDIR += avogadro2
diff --git a/science/arbor/Makefile b/science/arbor/Makefile
new file mode 100644
index 000000000000..63a3a6bbd3fc
--- /dev/null
+++ b/science/arbor/Makefile
@@ -0,0 +1,33 @@
+PORTNAME=	arbor
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.8
+CATEGORIES=	science
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Multi-compartment neural network simulation library
+WWW=		https://arbor-sim.org/
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	bash:shells/bash \
+		libfmt>0:devel/libfmt \
+		nlohmann-json>0:devel/nlohmann-json \
+		random123>0:devel/random123 \
+		${PYTHON_PKGNAMEPREFIX}svgwrite>0:graphics/py-svgwrite@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}svgwrite>0:graphics/py-svgwrite@${PY_FLAVOR}
+
+USES=		cmake compiler:c++17-lang python shebangfix
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	arbor-sim
+
+SHEBANG_FILES=	scripts/arbor-build-catalogue
+
+CMAKE_ON=	BUILD_SHARED_LIBS
+CMAKE_ARGS=	-DPython3_EXECUTABLE=${PYTHON_CMD}
+
+post-install:
+	@${RMDIR} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/science/arbor/distinfo b/science/arbor/distinfo
new file mode 100644
index 000000000000..6a64e8f1e731
--- /dev/null
+++ b/science/arbor/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1669535366
+SHA256 (arbor-sim-arbor-v0.8_GH0.tar.gz) = ee6b2486b1142cf4412dddd1caece0926d1712b8d1868283e3bfe73e4ec2cb71
+SIZE (arbor-sim-arbor-v0.8_GH0.tar.gz) = 7794543
diff --git a/science/arbor/pkg-descr b/science/arbor/pkg-descr
new file mode 100644
index 000000000000..6350b89f2e28
--- /dev/null
+++ b/science/arbor/pkg-descr
@@ -0,0 +1,3 @@
+Arbor is a multi-compartment neuron simulation library; compatible with
+next-generation accelerators; best-practices applied to research software;
+focussed on community-driven development.
diff --git a/science/arbor/pkg-plist b/science/arbor/pkg-plist
new file mode 100644
index 000000000000..c450df72c2c7
--- /dev/null
+++ b/science/arbor/pkg-plist
@@ -0,0 +1,114 @@
+bin/arbor-build-catalogue
+bin/lmorpho
+bin/modcc
+include/arbor/arb_types.h
+include/arbor/arb_types.hpp
+include/arbor/arb_types.inc
+include/arbor/arbexcept.hpp
+include/arbor/assert.hpp
+include/arbor/assert_macro.hpp
+include/arbor/benchmark_cell.hpp
+include/arbor/cable_cell.hpp
+include/arbor/cable_cell_param.hpp
+include/arbor/common_types.hpp
+include/arbor/communication/mpi_error.hpp
+include/arbor/constants.hpp
+include/arbor/context.hpp
+include/arbor/cv_policy.hpp
+include/arbor/domain_decomposition.hpp
+include/arbor/domdecexcept.hpp
+include/arbor/event_generator.hpp
+include/arbor/export.hpp
+include/arbor/fvm_types.hpp
+include/arbor/generic_event.hpp
+include/arbor/gpu/cuda_api.hpp
+include/arbor/gpu/gpu_api.hpp
+include/arbor/gpu/gpu_common.hpp
+include/arbor/gpu/hip_api.hpp
+include/arbor/gpu/math_cu.hpp
+include/arbor/gpu/reduce_by_key.hpp
+include/arbor/iexpr.hpp
+include/arbor/lif_cell.hpp
+include/arbor/load_balance.hpp
+include/arbor/math.hpp
+include/arbor/mechanism.hpp
+include/arbor/mechanism_abi.h
+include/arbor/mechcat.hpp
+include/arbor/mechinfo.hpp
+include/arbor/morph/cv_data.hpp
+include/arbor/morph/embed_pwlin.hpp
+include/arbor/morph/isometry.hpp
+include/arbor/morph/label_dict.hpp
+include/arbor/morph/locset.hpp
+include/arbor/morph/mcable_map.hpp
+include/arbor/morph/morphexcept.hpp
+include/arbor/morph/morphology.hpp
+include/arbor/morph/mprovider.hpp
+include/arbor/morph/place_pwlin.hpp
+include/arbor/morph/primitives.hpp
+include/arbor/morph/region.hpp
+include/arbor/morph/segment_tree.hpp
+include/arbor/morph/stitch.hpp
+include/arbor/profile/clock.hpp
+include/arbor/profile/meter.hpp
+include/arbor/profile/meter_manager.hpp
+include/arbor/profile/profiler.hpp
+include/arbor/profile/timer.hpp
+include/arbor/recipe.hpp
+include/arbor/s_expr.hpp
+include/arbor/sampling.hpp
+include/arbor/schedule.hpp
+include/arbor/simd/approx.hpp
+include/arbor/simd/avx.hpp
+include/arbor/simd/avx512.hpp
+include/arbor/simd/generic.hpp
+include/arbor/simd/implbase.hpp
+include/arbor/simd/native.hpp
+include/arbor/simd/neon.hpp
+include/arbor/simd/simd.hpp
+include/arbor/simd/simd_io.hpp
+include/arbor/simd/sve.hpp
+include/arbor/simple_sampler.hpp
+include/arbor/simulation.hpp
+include/arbor/spike.hpp
+include/arbor/spike_event.hpp
+include/arbor/spike_source_cell.hpp
+include/arbor/symmetric_recipe.hpp
+include/arbor/util/any_cast.hpp
+include/arbor/util/any_ptr.hpp
+include/arbor/util/any_visitor.hpp
+include/arbor/util/compat.hpp
+include/arbor/util/expected.hpp
+include/arbor/util/extra_traits.hpp
+include/arbor/util/handle_set.hpp
+include/arbor/util/hash_def.hpp
+include/arbor/util/lexcmp_def.hpp
+include/arbor/util/pp_util.hpp
+include/arbor/util/scope_exit.hpp
+include/arbor/util/typed_map.hpp
+include/arbor/util/uninitialized.hpp
+include/arbor/util/unique_any.hpp
+include/arbor/util/visibility.hpp
+include/arbor/version.hpp
+include/arborenv/arbenvexcept.hpp
+include/arborenv/concurrency.hpp
+include/arborenv/default_env.hpp
+include/arborenv/export.hpp
+include/arborenv/gpu_env.hpp
+include/arborenv/with_mpi.hpp
+include/arborio/cableio.hpp
+include/arborio/cv_policy_parse.hpp
+include/arborio/export.hpp
+include/arborio/label_parse.hpp
+include/arborio/neurolucida.hpp
+include/arborio/neuroml.hpp
+include/arborio/swcio.hpp
+include/arborio/xml.hpp
+lib/cmake/arbor/arbor-config-version.cmake
+lib/cmake/arbor/arbor-config.cmake
+lib/cmake/arbor/arbor-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/arbor/arbor-targets.cmake
+lib/libarbor.so
+lib/libarborenv.so
+lib/libarborio.so
+%%DATADIR%%/BuildModules.cmake