Skip to content

Commit

Permalink
science/openmolcas: New port: Quantum chemistry software package
Browse files Browse the repository at this point in the history
OpenMolcas has issues: it doesn't respect UNIX file path
conventions, it expects the installation directory to be writable.

Currently it needs to be either run as root, or after chown,
or after copying the entire tree to the home directory.

Hopefully they will resolve these issues.
  • Loading branch information
yurivict committed May 24, 2022
1 parent 28580ad commit 3079ad1
Show file tree
Hide file tree
Showing 7 changed files with 298 additions and 0 deletions.
1 change: 1 addition & 0 deletions science/Makefile
Expand Up @@ -190,6 +190,7 @@
SUBDIR += openkim
SUBDIR += openkim-models
SUBDIR += openmc
SUBDIR += openmolcas
SUBDIR += openmx
SUBDIR += opensim-core
SUBDIR += opensph
Expand Down
48 changes: 48 additions & 0 deletions science/openmolcas/Makefile
@@ -0,0 +1,48 @@
PORTNAME= openmolcas
DISTVERSION= 22.02
CATEGORIES= science # chemistry

MAINTAINER= yuri@FreeBSD.org
COMMENT= Quantum chemistry software package

LICENSE= LGPL21
LICENSE_FILE= ${WRKSRC}/LICENSE

BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyparsing>0:devel/py-pyparsing@${PY_FLAVOR}
LIB_DEPENDS= libhdf5.so:science/hdf5 \
libsz.so:science/szip \
libxc.so:science/libxc

USES= cmake fortran python shebangfix
USE_GCC= yes # see https://gitlab.com/Molcas/OpenMolcas/-/issues/351

USE_GITLAB= yes
GL_ACCOUNT= Molcas
GL_PROJECT= OpenMolcas
GL_COMMIT= f8df69cf87b241a15ebc82d72a8f9a031a385dd4

USE_GITHUB= nodefault
GH_TUPLE= Reference-LAPACK:lapack:aa631b4b:lapack/External/lapack \
libwfa:libwfa:bbe3392a:libwfa/External/libwfa

SHEBANG_FILES= sbin/help_doc sbin/help_func sbin/help_basis sbin/setup sbin/verify sbin/version

CMAKE_ARGS= -DEXTERNAL_LIBXC:STRING=${LOCALBASE} \
-DFREEBSD_PYTHON_VER:STRING=${PYTHON_VER}
#CMAKE_ON= # for EFPLIB, MSYM see https://gitlab.com/Molcas/OpenMolcas/-/issues/350, for WFA - hdf5 needs updating
CMAKE_OFF= BUILD_TESTING

CMAKE_INSTALL_PREFIX= ${DATADIR} # installed into DATADIR because it doesn't respect UNIX file path conventions, see https://gitlab.com/Molcas/OpenMolcas/-/issues/352

BINARY_ALIAS= cpp=${CPP} # cpp is called from cmake scripts

post-install:
# remove unused static libraries, see https://gitlab.com/Molcas/OpenMolcas/-/issues/354
@${RM} -r ${STAGEDIR}${CMAKE_INSTALL_PREFIX}/lib
# remove unnecessary fines
@${RM} ${STAGEDIR}${CMAKE_INSTALL_PREFIX}/CONTRIBUTORS.md
@${RM} ${STAGEDIR}${CMAKE_INSTALL_PREFIX}/LICENSE
# remove empty doc directory
@${RMDIR} ${STAGEDIR}${DATADIR}/doc

.include <bsd.port.mk>
7 changes: 7 additions & 0 deletions science/openmolcas/distinfo
@@ -0,0 +1,7 @@
TIMESTAMP = 1653368495
SHA256 (Reference-LAPACK-lapack-aa631b4b_GH0.tar.gz) = 04ddd43c8b1bed6447427e9dd2b4dd2ead7e2497d7a8fa5fea7f9b31f52117a2
SIZE (Reference-LAPACK-lapack-aa631b4b_GH0.tar.gz) = 7631245
SHA256 (libwfa-libwfa-bbe3392a_GH0.tar.gz) = c130488370ab0df228e532c80223ded3d23d80f04d405c2912588cfcfa05d121
SIZE (libwfa-libwfa-bbe3392a_GH0.tar.gz) = 192935
SHA256 (Molcas-OpenMolcas-f8df69cf87b241a15ebc82d72a8f9a031a385dd4_GL0.tar.gz) = 862ab4e5a76955e67af870c7c1b4344c250784299c5c0363c425a722671a892a
SIZE (Molcas-OpenMolcas-f8df69cf87b241a15ebc82d72a8f9a031a385dd4_GL0.tar.gz) = 38439145
11 changes: 11 additions & 0 deletions science/openmolcas/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
--- CMakeLists.txt.orig 2022-05-24 05:51:48 UTC
+++ CMakeLists.txt
@@ -48,7 +48,7 @@ find_program (GIT "git")
find_program (PERL "perl")
mark_as_advanced (FORCE GIT PERL)

-FIND_PACKAGE (Python COMPONENTS Interpreter)
+FIND_PACKAGE (Python ${FREEBSD_PYTHON_VER} EXACT COMPONENTS Interpreter)

################################################################################
# #
11 changes: 11 additions & 0 deletions science/openmolcas/files/patch-src_mma__util_cgetshmem.c
@@ -0,0 +1,11 @@
--- src/mma_util/cgetshmem.c.orig 2022-05-24 05:38:26 UTC
+++ src/mma_util/cgetshmem.c
@@ -134,6 +134,8 @@ INT add_shmentry(mstat *MM, mentry *tmp, char *path, I
shmid = shmget(SHM_key, (size_t) tmp->len, 0644|IPC_CREAT|IPC_EXCL);
#elif _AIX_
shmid = shmget(SHM_key, (size_t) tmp->len, 0644|IPC_CREAT|IPC_EXCL|SHM_PIN);
+#elif __FreeBSD__
+ shmid = shmget(SHM_key, (size_t) tmp->len, 0644|IPC_CREAT|IPC_EXCL);
#else
shmid = shmget(SHM_key, (size_t) tmp->len, 0644|IPC_CREAT|IPC_EXCL|SHM_LOCKED);
/* shmid = shmget(SHM_key, (size_t) tmp->len, 0644|IPC_CREAT|IPC_EXCL|SHM_LOCKED|SHM_NORESERVE);*/
6 changes: 6 additions & 0 deletions science/openmolcas/pkg-descr
@@ -0,0 +1,6 @@
OpenMolcas is a quantum chemistry software package.

The key feature of OpenMolcas is the multiconfigurational
approach to the electronic structure.

WWW: https://gitlab.com/Molcas/OpenMolcas
214 changes: 214 additions & 0 deletions science/openmolcas/pkg-plist
@@ -0,0 +1,214 @@
%%DATADIR%%/.molcashome
%%DATADIR%%/.molcasversion
%%DATADIR%%/basis_library/3-21G
%%DATADIR%%/basis_library/4-31G
%%DATADIR%%/basis_library/5-21G
%%DATADIR%%/basis_library/6-311Gpp
%%DATADIR%%/basis_library/6-31G
%%DATADIR%%/basis_library/6-31Gpp
%%DATADIR%%/basis_library/AHLRICHS_VDZ
%%DATADIR%%/basis_library/AHLRICHS_VTZ
%%DATADIR%%/basis_library/AIMP.README
%%DATADIR%%/basis_library/ANO-DK3
%%DATADIR%%/basis_library/ANO-L
%%DATADIR%%/basis_library/ANO-ORCA
%%DATADIR%%/basis_library/ANO-R
%%DATADIR%%/basis_library/ANO-RCC
%%DATADIR%%/basis_library/ANO-RCC.README
%%DATADIR%%/basis_library/ANO-S
%%DATADIR%%/basis_library/ANO-XS
%%DATADIR%%/basis_library/AUG-CC-PV5Z
%%DATADIR%%/basis_library/AUG-CC-PV6Z
%%DATADIR%%/basis_library/AUG-CC-PVDZ
%%DATADIR%%/basis_library/AUG-CC-PVQZ
%%DATADIR%%/basis_library/AUG-CC-PVTZ
%%DATADIR%%/basis_library/AUG-PC-0
%%DATADIR%%/basis_library/AUG-PC-1
%%DATADIR%%/basis_library/AUG-PC-2
%%DATADIR%%/basis_library/AUG-PC-3
%%DATADIR%%/basis_library/AUG-PC-4
%%DATADIR%%/basis_library/CC-PV5Z
%%DATADIR%%/basis_library/CC-PV5Z-DK
%%DATADIR%%/basis_library/CC-PVDZ
%%DATADIR%%/basis_library/CC-PVDZ-DK
%%DATADIR%%/basis_library/CC-PVQZ
%%DATADIR%%/basis_library/CC-PVQZ-DK
%%DATADIR%%/basis_library/CC-PVTZ
%%DATADIR%%/basis_library/CC-PVTZ-DK
%%DATADIR%%/basis_library/CC-PWCV5Z-DK
%%DATADIR%%/basis_library/CC-PWCVQZ-DK
%%DATADIR%%/basis_library/CC-PWCVTZ-DK
%%DATADIR%%/basis_library/CG-AIMP
%%DATADIR%%/basis_library/DEF-SV-P
%%DATADIR%%/basis_library/DEF-SVP
%%DATADIR%%/basis_library/DEF-TZVP
%%DATADIR%%/basis_library/DEF2-SVP
%%DATADIR%%/basis_library/DEF2-TZVP
%%DATADIR%%/basis_library/DEF2-TZVPP
%%DATADIR%%/basis_library/EMB-AIMP
%%DATADIR%%/basis_library/JGAUSS-DZP
%%DATADIR%%/basis_library/LANL2DZ
%%DATADIR%%/basis_library/LANL2DZ_NL
%%DATADIR%%/basis_library/MCP-AQZP
%%DATADIR%%/basis_library/MCP-ATZP
%%DATADIR%%/basis_library/MCP-DZP
%%DATADIR%%/basis_library/MCP-QZP
%%DATADIR%%/basis_library/MCP-TZP
%%DATADIR%%/basis_library/MUONIC
%%DATADIR%%/basis_library/NP-AIMP
%%DATADIR%%/basis_library/NR-AIMP
%%DATADIR%%/basis_library/PC-0
%%DATADIR%%/basis_library/PC-1
%%DATADIR%%/basis_library/PC-2
%%DATADIR%%/basis_library/PC-3
%%DATADIR%%/basis_library/PC-4
%%DATADIR%%/basis_library/QRPLIB
%%DATADIR%%/basis_library/RAF-R
%%DATADIR%%/basis_library/RYDBERG
%%DATADIR%%/basis_library/SADLEJ_PVTZ
%%DATADIR%%/basis_library/SARC2-QZVP-DKH2
%%DATADIR%%/basis_library/STO-3G
%%DATADIR%%/basis_library/STUTTGART
%%DATADIR%%/basis_library/STUTTGART_NL
%%DATADIR%%/basis_library/basis.tbl
%%DATADIR%%/basis_library/basistype.tbl
%%DATADIR%%/basis_library/c_Basis/DEF-SV-P
%%DATADIR%%/basis_library/c_Basis/DEF-SVP
%%DATADIR%%/basis_library/c_Basis/DEF-TZVP
%%DATADIR%%/basis_library/c_Basis/basis.tbl
%%DATADIR%%/basis_library/c_Basis/basistype.tbl
%%DATADIR%%/basis_library/c_Basis/trans.tbl
%%DATADIR%%/basis_library/j_Basis/DEF-SV-P
%%DATADIR%%/basis_library/j_Basis/DEF-SVP
%%DATADIR%%/basis_library/j_Basis/DEF-TZVP
%%DATADIR%%/basis_library/j_Basis/basis.tbl
%%DATADIR%%/basis_library/j_Basis/basistype.tbl
%%DATADIR%%/basis_library/j_Basis/trans.tbl
%%DATADIR%%/basis_library/jk_Basis/CC-PVTZ
%%DATADIR%%/basis_library/jk_Basis/DEF-SV-P
%%DATADIR%%/basis_library/jk_Basis/DEF-SVP
%%DATADIR%%/basis_library/jk_Basis/basis.tbl
%%DATADIR%%/basis_library/jk_Basis/basistype.tbl
%%DATADIR%%/basis_library/jk_Basis/trans.tbl
%%DATADIR%%/basis_library/trans.tbl
%%DATADIR%%/bin/alaska.exe
%%DATADIR%%/bin/averd.exe
%%DATADIR%%/bin/caspt2.exe
%%DATADIR%%/bin/casvb.exe
%%DATADIR%%/bin/ccsdt.exe
%%DATADIR%%/bin/chcc.exe
%%DATADIR%%/bin/cht3.exe
%%DATADIR%%/bin/cpf.exe
%%DATADIR%%/bin/dynamix.exe
%%DATADIR%%/bin/espf.exe
%%DATADIR%%/bin/expbas.exe
%%DATADIR%%/bin/extf.exe
%%DATADIR%%/bin/false.exe
%%DATADIR%%/bin/ffpt.exe
%%DATADIR%%/bin/gateway.exe
%%DATADIR%%/bin/genano.exe
%%DATADIR%%/bin/grid_it.exe
%%DATADIR%%/bin/guessorb.exe
%%DATADIR%%/bin/guga.exe
%%DATADIR%%/bin/gugaci.exe
%%DATADIR%%/bin/gugadrt.exe
%%DATADIR%%/bin/last_energy.exe
%%DATADIR%%/bin/localisation.exe
%%DATADIR%%/bin/loprop.exe
%%DATADIR%%/bin/mbpt2.exe
%%DATADIR%%/bin/mckinley.exe
%%DATADIR%%/bin/mclr.exe
%%DATADIR%%/bin/mcpdft.exe
%%DATADIR%%/bin/motra.exe
%%DATADIR%%/bin/mpprop.exe
%%DATADIR%%/bin/mrci.exe
%%DATADIR%%/bin/mula.exe
%%DATADIR%%/bin/numerical_gradient.exe
%%DATADIR%%/bin/parnell.exe
%%DATADIR%%/bin/poly_aniso.exe
%%DATADIR%%/bin/qmstat.exe
%%DATADIR%%/bin/quater.exe
%%DATADIR%%/bin/rasscf.exe
%%DATADIR%%/bin/rassi.exe
%%DATADIR%%/bin/rhodyn.exe
%%DATADIR%%/bin/rpa.exe
%%DATADIR%%/bin/scf.exe
%%DATADIR%%/bin/seward.exe
%%DATADIR%%/bin/single_aniso.exe
%%DATADIR%%/bin/slapaf.exe
%%DATADIR%%/bin/surfacehop.exe
%%DATADIR%%/bin/vibrot.exe
%%DATADIR%%/data/MolGUI.prgm
%%DATADIR%%/data/abdata
%%DATADIR%%/data/alaska.prgm
%%DATADIR%%/data/averd.prgm
%%DATADIR%%/data/banner.txt
%%DATADIR%%/data/caspt2.prgm
%%DATADIR%%/data/casvb.prgm
%%DATADIR%%/data/ccsdt.prgm
%%DATADIR%%/data/chcc.prgm
%%DATADIR%%/data/check.prgm
%%DATADIR%%/data/cht3.prgm
%%DATADIR%%/data/cpf.prgm
%%DATADIR%%/data/dmrgscf.prgm
%%DATADIR%%/data/dynamix.prgm
%%DATADIR%%/data/espf.prgm
%%DATADIR%%/data/expbas.prgm
%%DATADIR%%/data/extf.prgm
%%DATADIR%%/data/false.prgm
%%DATADIR%%/data/ffpt.prgm
%%DATADIR%%/data/functionals.txt
%%DATADIR%%/data/gateway.prgm
%%DATADIR%%/data/genano.prgm
%%DATADIR%%/data/global.prgm
%%DATADIR%%/data/grid_it.prgm
%%DATADIR%%/data/guessorb.prgm
%%DATADIR%%/data/guga.prgm
%%DATADIR%%/data/gugaci.prgm
%%DATADIR%%/data/gugadrt.prgm
%%DATADIR%%/data/info.txt
%%DATADIR%%/data/inporb_files.prgm
%%DATADIR%%/data/inputs.tpl
%%DATADIR%%/data/isotope_data.txt
%%DATADIR%%/data/keyword.db
%%DATADIR%%/data/keyword.xml
%%DATADIR%%/data/landing.txt
%%DATADIR%%/data/last_energy.prgm
%%DATADIR%%/data/localisation.prgm
%%DATADIR%%/data/loprop.prgm
%%DATADIR%%/data/mbpt2.prgm
%%DATADIR%%/data/mckinley.prgm
%%DATADIR%%/data/mclr.prgm
%%DATADIR%%/data/mcpdft.prgm
%%DATADIR%%/data/modalias.txt
%%DATADIR%%/data/motra.prgm
%%DATADIR%%/data/mpprop.prgm
%%DATADIR%%/data/mpssi.prgm
%%DATADIR%%/data/mrci.prgm
%%DATADIR%%/data/mula.prgm
%%DATADIR%%/data/nevpt2.prgm
%%DATADIR%%/data/numerical_gradient.prgm
%%DATADIR%%/data/poly_aniso.prgm
%%DATADIR%%/data/qmstat.prgm
%%DATADIR%%/data/quater.prgm
%%DATADIR%%/data/rasscf.prgm
%%DATADIR%%/data/rassi.prgm
%%DATADIR%%/data/rcodes.txt
%%DATADIR%%/data/rhodyn.prgm
%%DATADIR%%/data/rpa.prgm
%%DATADIR%%/data/rysrw
%%DATADIR%%/data/scf.prgm
%%DATADIR%%/data/seward.prgm
%%DATADIR%%/data/single_aniso.prgm
%%DATADIR%%/data/slapaf.prgm
%%DATADIR%%/data/surfacehop.prgm
%%DATADIR%%/data/symmetrize.prgm
%%DATADIR%%/data/vibrot.prgm
%%DATADIR%%/data/wfa.prgm
%%DATADIR%%/molcas.rte
%%DATADIR%%/pymolcas
%%DATADIR%%/sbin/help_basis
%%DATADIR%%/sbin/help_doc
%%DATADIR%%/sbin/help_func
%%DATADIR%%/sbin/setup
%%DATADIR%%/sbin/version

0 comments on commit 3079ad1

Please sign in to comment.