Index: head/science/Makefile =================================================================== --- head/science/Makefile +++ head/science/Makefile @@ -32,6 +32,7 @@ SUBDIR += cgribex SUBDIR += checkmol SUBDIR += chemical-mime-data + SUBDIR += chemps2 SUBDIR += chemtool SUBDIR += chemtool-devel SUBDIR += clhep Index: head/science/chemps2/Makefile =================================================================== --- head/science/chemps2/Makefile +++ head/science/chemps2/Makefile @@ -0,0 +1,28 @@ +# $FreeBSD$ + +PORTNAME= CheMPS2 +DISTVERSIONPREFIX= v +DISTVERSION= 1.8.4-12 +DISTVERSIONSUFFIX= -g55d6b381 +CATEGORIES= science + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Spin-adapted implementation of DMRG for ab initio quantum chemistry + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libhdf5.so:science/hdf5 \ + libsz.so:science/szip + +USES= blaslapack:openblas cmake:outsource fortran +USE_GITHUB= yes +GH_ACCOUNT= SebWouters + +CMAKE_ARGS+= -DSHARED_ONLY:BOOL=ON +CMAKE_ARGS+= -DENABLE_TESTS:BOOL=OFF +CMAKE_ARGS+= -DENABLE_XHOST:BOOL=OFF # shouldn't optimize the port in case of central build +CMAKE_ARGS+= -DENABLE_OPENMP:BOOL=OFF # find_package(OpenMP) is broken since the merge into cmake: bug#223678 +CMAKE_ARGS+= -DLAPACK_LIBRARIES="-lopenblas" # can't find it using find_package for some reason + +.include Index: head/science/chemps2/distinfo =================================================================== --- head/science/chemps2/distinfo +++ head/science/chemps2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1510730234 +SHA256 (SebWouters-CheMPS2-v1.8.4-12-g55d6b381_GH0.tar.gz) = 8bc7d71335a71575cb7db6e5ebc61ce9d262efb385c97cb736bcfd6c88425ae3 +SIZE (SebWouters-CheMPS2-v1.8.4-12-g55d6b381_GH0.tar.gz) = 1256061 Index: head/science/chemps2/files/patch-CMakeLists.txt =================================================================== --- head/science/chemps2/files/patch-CMakeLists.txt +++ head/science/chemps2/files/patch-CMakeLists.txt @@ -0,0 +1,28 @@ +--- CMakeLists.txt.orig 2017-03-28 19:11:42 UTC ++++ CMakeLists.txt +@@ -78,15 +78,17 @@ endif() + + # <<< Enable inter-parts / link-time optimization >>> + +-check_cxx_compiler_flag (-ipo HAS_IPO) +-if (HAS_IPO) +- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ipo") +-endif() ++# clang doesn't support -ipo ++#check_cxx_compiler_flag (-ipo HAS_IPO) ++#if (HAS_IPO) ++# set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ipo") ++#endif() + +-check_cxx_compiler_flag (-flto HAS_FLTO) +-if (HAS_FLTO) +- set (CMAKE_CXX_FLAGS "-flto ${CMAKE_CXX_FLAGS}") +-endif() ++# -flto causes clang to produce binary ll code, which isn't what is expected ++#check_cxx_compiler_flag (-flto HAS_FLTO) ++#if (HAS_FLTO) ++# set (CMAKE_CXX_FLAGS "-flto ${CMAKE_CXX_FLAGS}") ++#endif() + + # <<< Enable generic >>> + Index: head/science/chemps2/pkg-descr =================================================================== --- head/science/chemps2/pkg-descr +++ head/science/chemps2/pkg-descr @@ -0,0 +1,13 @@ +CheMPS2 is a scientific library which contains a spin-adapted implementation +of the density matrix renormalization group (DMRG) for ab initio quantum +chemistry. This wavefunction method allows to obtain numerical accuracy in +active spaces beyond the capabilities of full configuration interaction (FCI), +and allows to extract the 2-, 3-, and 4-particle reduced density matrices +(2-, 3- and 4-RDM) of the active space. + +For general active spaces up to 40 electrons in 40 orbitals can be handled with +DMRG, and for one-dimensional active spaces up to 100 electrons in 100 orbitals. +The 2-RDM of these active spaces can also be easily extracted, while the 3- and +4-RDM are limited to about 28 orbitals. + +WWW: https://github.com/SebWouters/CheMPS2 Index: head/science/chemps2/pkg-plist =================================================================== --- head/science/chemps2/pkg-plist +++ head/science/chemps2/pkg-plist @@ -0,0 +1,59 @@ +bin/chemps2 +include/chemps2/CASPT2.h +include/chemps2/CASSCF.h +include/chemps2/ConjugateGradient.h +include/chemps2/ConvergenceScheme.h +include/chemps2/Correlations.h +include/chemps2/Cumulant.h +include/chemps2/DIIS.h +include/chemps2/DMRG.h +include/chemps2/DMRGSCFindices.h +include/chemps2/DMRGSCFintegrals.h +include/chemps2/DMRGSCFmatrix.h +include/chemps2/DMRGSCFoptions.h +include/chemps2/DMRGSCFrotations.h +include/chemps2/DMRGSCFunitary.h +include/chemps2/DMRGSCFwtilde.h +include/chemps2/Davidson.h +include/chemps2/EdmistonRuedenberg.h +include/chemps2/Excitation.h +include/chemps2/FCI.h +include/chemps2/FourIndex.h +include/chemps2/Hamiltonian.h +include/chemps2/Heff.h +include/chemps2/Initialize.h +include/chemps2/Irreps.h +include/chemps2/Lapack.h +include/chemps2/MPIchemps2.h +include/chemps2/Molden.h +include/chemps2/MyHDF5.h +include/chemps2/Options.h +include/chemps2/Problem.h +include/chemps2/Sobject.h +include/chemps2/Special.h +include/chemps2/SyBookkeeper.h +include/chemps2/Tensor.h +include/chemps2/Tensor3RDM.h +include/chemps2/TensorF0.h +include/chemps2/TensorF1.h +include/chemps2/TensorGYZ.h +include/chemps2/TensorKM.h +include/chemps2/TensorL.h +include/chemps2/TensorO.h +include/chemps2/TensorOperator.h +include/chemps2/TensorQ.h +include/chemps2/TensorS0.h +include/chemps2/TensorS1.h +include/chemps2/TensorT.h +include/chemps2/TensorX.h +include/chemps2/ThreeDM.h +include/chemps2/TwoDM.h +include/chemps2/TwoIndex.h +include/chemps2/Wigner.h +lib/libchemps2.so +lib/libchemps2.so.2 +share/cmake/CheMPS2/CheMPS2Config.cmake +share/cmake/CheMPS2/CheMPS2ConfigVersion.cmake +share/cmake/CheMPS2/CheMPS2Targets-shared-%%CMAKE_BUILD_TYPE%%.cmake +share/cmake/CheMPS2/CheMPS2Targets-shared.cmake +share/cmake/CheMPS2/FindTargetHDF5.cmake