git: c38052dfd62b - main - biology/libneurosim: New port: Common interfaces for neuronal simulators

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Fri, 08 Oct 2021 17:20:32 UTC
The branch main has been updated by yuri:

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

commit c38052dfd62bdeda93241d0bf88770b8e53a17c5
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2021-10-08 17:08:11 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2021-10-08 17:20:27 +0000

    biology/libneurosim: New port: Common interfaces for neuronal simulators
---
 biology/Makefile              |  1 +
 biology/libneurosim/Makefile  | 34 ++++++++++++++++++++++++++++++++++
 biology/libneurosim/distinfo  |  3 +++
 biology/libneurosim/pkg-descr | 13 +++++++++++++
 biology/libneurosim/pkg-plist | 13 +++++++++++++
 5 files changed, 64 insertions(+)

diff --git a/biology/Makefile b/biology/Makefile
index e14218f00558..ba430926041c 100644
--- a/biology/Makefile
+++ b/biology/Makefile
@@ -76,6 +76,7 @@
     SUBDIR += lamarc
     SUBDIR += libbigwig
     SUBDIR += libgtextutils
+    SUBDIR += libneurosim
     SUBDIR += libnuml
     SUBDIR += libsbml
     SUBDIR += libsedml
diff --git a/biology/libneurosim/Makefile b/biology/libneurosim/Makefile
new file mode 100644
index 000000000000..9cdeb48e806b
--- /dev/null
+++ b/biology/libneurosim/Makefile
@@ -0,0 +1,34 @@
+PORTNAME=	libneurosim
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.2.0
+CATEGORIES=	biology
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Common interfaces for neuronal simulators
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/COPYING
+
+USES=		autoreconf gmake libtool
+USE_LDCONFIG=	yes
+
+GNU_CONFIGURE=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	INCF
+
+INSTALL_TARGET=	install-strip
+
+BINARY_ALIAS=	aclocal-1.15=aclocal automake-1.15=automake # workaround for the outdated aclocal-1.15 & automake-1.15 somehow placed into libltdl/Makefile
+
+OPTIONS_DEFINE=		PYTHON
+OPTIONS_DEFAULT=	PYTHON
+OPTIONS_SUB=		yes
+
+PYTHON_CONFIGURE_ON=	--with-python=${PYTHON_VER:R}
+PYTHON_USES=	python:3.6+
+
+pre-build: # ignore failure of the first run of the build command that always fails first, see https://github.com/INCF/libneurosim/issues/21
+	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} || ${TRUE}
+
+.include <bsd.port.mk>
diff --git a/biology/libneurosim/distinfo b/biology/libneurosim/distinfo
new file mode 100644
index 000000000000..697b456e39a0
--- /dev/null
+++ b/biology/libneurosim/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1633636734
+SHA256 (INCF-libneurosim-v1.2.0_GH0.tar.gz) = 372fa0d8fb31950370f1d27bff4865e1200456239f4ea382c267d9a310175f83
+SIZE (INCF-libneurosim-v1.2.0_GH0.tar.gz) = 33695
diff --git a/biology/libneurosim/pkg-descr b/biology/libneurosim/pkg-descr
new file mode 100644
index 000000000000..fecded8e27cd
--- /dev/null
+++ b/biology/libneurosim/pkg-descr
@@ -0,0 +1,13 @@
+libneurosim is a general library that provides interfaces and common utility
+code for neuronal simulators.
+
+Currently it provides the ConnectionGenerator interface.
+
+The ConnectionGenerator API is a standard interface supporting efficient
+generation of network connectivity during model setup in neuronal network
+simulators. It is intended as an abstraction isolating both sides of the API:
+any simulator can use a given connection generator and a given simulator can use
+any library providing the ConnectionGenerator interface. It was initially
+developed to support the use of libcsa from NEST.
+
+WWW: https://github.com/INCF/libneurosim
diff --git a/biology/libneurosim/pkg-plist b/biology/libneurosim/pkg-plist
new file mode 100644
index 000000000000..5da69290ed22
--- /dev/null
+++ b/biology/libneurosim/pkg-plist
@@ -0,0 +1,13 @@
+include/neurosim/config.h
+include/neurosim/connection_generator.h
+include/neurosim/connection_generator_V2_0.h
+%%PYTHON%%include/neurosim/pyneurosim.h
+include/neurosim/version.h
+lib/libneurosim.a
+lib/libneurosim.so
+lib/libneurosim.so.0
+lib/libneurosim.so.0.0.0
+%%PYTHON%%lib/libpy3neurosim.a
+%%PYTHON%%lib/libpy3neurosim.so
+%%PYTHON%%lib/libpy3neurosim.so.0
+%%PYTHON%%lib/libpy3neurosim.so.0.0.0