git: 6b4f2fe991ff - main - science/nlcglib: New port: Nonlinear CG methods for wave-function optimization in DFT
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 27 Aug 2022 00:11:49 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=6b4f2fe991ff2825a4bbaa3a1c3a3607071b7932
commit 6b4f2fe991ff2825a4bbaa3a1c3a3607071b7932
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-08-27 00:06:37 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-08-27 00:11:44 +0000
science/nlcglib: New port: Nonlinear CG methods for wave-function optimization in DFT
---
science/Makefile | 1 +
science/nlcglib/Makefile | 37 +++++++++++++++++++++++++++++++++++++
science/nlcglib/distinfo | 3 +++
science/nlcglib/pkg-descr | 4 ++++
science/nlcglib/pkg-plist | 7 +++++++
5 files changed, 52 insertions(+)
diff --git a/science/Makefile b/science/Makefile
index 75361ae656a0..2931e21eec3c 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -192,6 +192,7 @@
SUBDIR += netcdf-cxx
SUBDIR += netcdf-fortran
SUBDIR += nifticlib
+ SUBDIR += nlcglib
SUBDIR += nwchem
SUBDIR += nwchem-data
SUBDIR += octopus
diff --git a/science/nlcglib/Makefile b/science/nlcglib/Makefile
new file mode 100644
index 000000000000..f06b36ebe793
--- /dev/null
+++ b/science/nlcglib/Makefile
@@ -0,0 +1,37 @@
+PORTNAME= nlcglib
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.9-148
+DISTVERSIONSUFFIX= -g9a1bca6
+CATEGORIES= science
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Nonlinear CG methods for wave-function optimization in DFT
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= nlohmann-json>0:devel/nlohmann-json
+LIB_DEPENDS= libkokkoscore.so:devel/kokkos \
+ libopenblas.so:math/openblas
+TEST_DEPENDS= googletest>0:devel/googletest
+
+USES= cmake:testing pkgconfig
+USE_LDCONFIG= yes
+
+USE_GITHUB= yes
+GH_ACCOUNT= simonpintarelli
+
+CMAKE_TESTING_ON= BUILD_TESTS # tests fail to compile, see https://github.com/simonpintarelli/nlcglib/issues/14
+
+OPTIONS_DEFINE= OPENMP
+OPTIONS_SINGLE= MPI
+OPTIONS_SINGLE_MPI= MPICH OPENMPI
+OPTIONS_DEFAULT= MPICH OPENMP
+
+MPICH_USES= mpi:mpich
+
+OPENMPI_USES= mpi:openmpi
+
+OPENMP_CMAKE_BOOL= USE_OPENMP # binaries are still linked with libomp when USE_OPENMP=OFF, see https://github.com/simonpintarelli/nlcglib/issues/13
+
+.include <bsd.port.mk>
diff --git a/science/nlcglib/distinfo b/science/nlcglib/distinfo
new file mode 100644
index 000000000000..3a7ff4e83e3b
--- /dev/null
+++ b/science/nlcglib/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1661552959
+SHA256 (simonpintarelli-nlcglib-v0.9-148-g9a1bca6_GH0.tar.gz) = 0d33e0293805d0f8f1848ef6c8b6909e08c6bdab9c3c25039bbf29aa7055d18b
+SIZE (simonpintarelli-nlcglib-v0.9-148-g9a1bca6_GH0.tar.gz) = 66717
diff --git a/science/nlcglib/pkg-descr b/science/nlcglib/pkg-descr
new file mode 100644
index 000000000000..34bcad12d0a3
--- /dev/null
+++ b/science/nlcglib/pkg-descr
@@ -0,0 +1,4 @@
+Nlcglib is a plugin for sirius providing robust wave-function optimization
+to q-e-sirius.
+
+WWW: https://github.com/simonpintarelli/nlcglib
diff --git a/science/nlcglib/pkg-plist b/science/nlcglib/pkg-plist
new file mode 100644
index 000000000000..15ab72f9937e
--- /dev/null
+++ b/science/nlcglib/pkg-plist
@@ -0,0 +1,7 @@
+include/nlcglib/interface.hpp
+include/nlcglib/nlcglib.hpp
+lib/cmake/nlcglib/nlcglib-config.cmake
+lib/cmake/nlcglib/nlcglib-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/nlcglib/nlcglib-targets.cmake
+lib/cmake/nlcglib/nlcglibConfigVersion.cmake
+lib/libnlcglib.so