git: ddb5a455d7dd - main - science/libpsml: New port: Library to handle pseudopotentials in PSML format

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Mon, 02 Sep 2024 07:54:48 UTC
The branch main has been updated by yuri:

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

commit ddb5a455d7dd2978fb2b4ee27a30c5c7dbb9a028
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-09-02 01:56:13 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-09-02 07:54:42 +0000

    science/libpsml: New port: Library to handle pseudopotentials in PSML format
---
 science/Makefile                           |  1 +
 science/libpsml/Makefile                   | 23 +++++++++++++++++++++++
 science/libpsml/distinfo                   |  3 +++
 science/libpsml/files/patch-CMakeLists.txt | 11 +++++++++++
 science/libpsml/pkg-descr                  |  4 ++++
 science/libpsml/pkg-plist                  | 24 ++++++++++++++++++++++++
 6 files changed, 66 insertions(+)

diff --git a/science/Makefile b/science/Makefile
index 240e96c68189..01ee51c6684c 100644
--- a/science/Makefile
+++ b/science/Makefile
@@ -159,6 +159,7 @@
     SUBDIR += libmsym
     SUBDIR += libnegf
     SUBDIR += liboglappth
+    SUBDIR += libpsml
     SUBDIR += libquantum
     SUBDIR += libssm
     SUBDIR += libsvm
diff --git a/science/libpsml/Makefile b/science/libpsml/Makefile
new file mode 100644
index 000000000000..1e855d3c4413
--- /dev/null
+++ b/science/libpsml/Makefile
@@ -0,0 +1,23 @@
+PORTNAME=	libpsml
+DISTVERSION=	2.1.0
+CATEGORIES=	science # quantum-chemistry
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Library to handle pseudopotentials in PSML format
+WWW=		https://gitlab.com/siesta-project/libraries/libpsml
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+LIB_DEPENDS=	libxmlf90.so:textproc/xmlf90
+
+USES=		cmake fortran
+USE_LDCONFIG=	yes
+
+USE_GITLAB=	yes
+GL_ACCOUNT=	siesta-project/libraries
+GL_TAGNAME=	508cffb93bcb2137a64472f4d9623ba42748aaa9
+
+CMAKE_ON=	BUILD_SHARED_LIBS
+
+.include <bsd.port.mk>
diff --git a/science/libpsml/distinfo b/science/libpsml/distinfo
new file mode 100644
index 000000000000..387ba17cfaaa
--- /dev/null
+++ b/science/libpsml/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1725241484
+SHA256 (siesta-project/libraries-libpsml-508cffb93bcb2137a64472f4d9623ba42748aaa9_GL0.tar.gz) = 100b1cd45cb573bfaf35c6c1561f7686e4856d65b5d1545b9d71aa8ffd170bc7
+SIZE (siesta-project/libraries-libpsml-508cffb93bcb2137a64472f4d9623ba42748aaa9_GL0.tar.gz) = 866992
diff --git a/science/libpsml/files/patch-CMakeLists.txt b/science/libpsml/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..b20548b6eed5
--- /dev/null
+++ b/science/libpsml/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig	2024-09-02 01:46:42 UTC
++++ CMakeLists.txt
+@@ -75,7 +75,7 @@ set(module-dir
+ include(GNUInstallDirs)
+ 
+ set(module-dir
+-  "${PROJECT_NAME}/${CMAKE_Fortran_COMPILER_ID}-${CMAKE_Fortran_COMPILER_VERSION}"
++  "${PROJECT_NAME}"
+ )
+ 
+ target_include_directories(
diff --git a/science/libpsml/pkg-descr b/science/libpsml/pkg-descr
new file mode 100644
index 000000000000..571d9da164cb
--- /dev/null
+++ b/science/libpsml/pkg-descr
@@ -0,0 +1,4 @@
+libPSML is a library for handling PSML pseudopotential files.
+
+The psml format and library are used for norm-conserving pseudopotential data
+curation and interoperability.
diff --git a/science/libpsml/pkg-plist b/science/libpsml/pkg-plist
new file mode 100644
index 000000000000..a58c1d92c4c0
--- /dev/null
+++ b/science/libpsml/pkg-plist
@@ -0,0 +1,24 @@
+include/libpsml/m_psml.mod
+include/libpsml/m_psml_api.mod
+include/libpsml/m_psml_assoc_list.mod
+include/libpsml/m_psml_class_grid.mod
+include/libpsml/m_psml_core.mod
+include/libpsml/m_psml_dump.mod
+include/libpsml/m_psml_external_interfaces.mod
+include/libpsml/m_psml_interp.mod
+include/libpsml/m_psml_parsing_helpers.mod
+include/libpsml/m_psml_ps_edit.mod
+include/libpsml/m_psml_reader.mod
+include/libpsml/m_psml_strings_helpers.mod
+include/libpsml/m_psml_tables.mod
+lib/cmake/libpsml/FindCustomxmlf90.cmake
+lib/cmake/libpsml/LibpsmlFindPackage.cmake
+lib/cmake/libpsml/check_xmlf90_stat.cmake
+lib/cmake/libpsml/libpsml-config-version.cmake
+lib/cmake/libpsml/libpsml-config.cmake
+lib/cmake/libpsml/libpsml-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/libpsml/libpsml-targets.cmake
+lib/libpsml.so
+lib/libpsml.so.2
+lib/libpsml.so.2.1.0
+libdata/pkgconfig/libpsml.pc