diff options
author | Viktor Drobot | 2020-01-20 17:48:11 +0300 |
---|---|---|
committer | Viktor Drobot | 2020-01-20 17:48:11 +0300 |
commit | d1d9eaa60ae705043d4b07b94f6253005dc8b7f1 (patch) | |
tree | d9b60e7318ba936cb1ed8a728040c2465f5aadf8 | |
parent | 1cb7c2fd34aa5c9db434ae7f8a567935d0e13946 (diff) | |
download | aur-d1d9eaa60ae705043d4b07b94f6253005dc8b7f1.tar.gz |
Rebuild
-rw-r--r-- | .SRCINFO | 22 | ||||
-rw-r--r-- | 0001-Update-build_libint.cc.patch | 29 | ||||
-rw-r--r-- | PKGBUILD | 85 |
3 files changed, 109 insertions, 27 deletions
@@ -1,21 +1,21 @@ pkgbase = libint2 - pkgdesc = A library for the evaluation of molecular integrals of many-body operators over Gaussian functions + pkgdesc = A high-performance library for computing Gaussian integrals in quantum mechanics pkgver = 2.6.0 - pkgrel = 1 + pkgrel = 2 url = https://github.com/evaleev/libint arch = x86_64 - license = GPL3 - makedepends = make + license = GPL + makedepends = python + makedepends = gcc-fortran + makedepends = cmake + makedepends = automake makedepends = autoconf - makedepends = doxygen - makedepends = clang - makedepends = texlive-bin depends = boost - depends = boost-libs - depends = gmp - options = !strip + options = staticlibs source = https://github.com/evaleev/libint/archive/v2.6.0.tar.gz - sha1sums = 2432391ff400bb9bf813443043582fa397f38b0a + source = 0001-Update-build_libint.cc.patch + sha256sums = 4ae47e8f0b5632c3d2a956469a7920896708e9f0e396ec10071b8181e4c8d9fa + sha256sums = 22fea5b46e61ad3a08f2b9ea9a898dc8c29faa77db06dfd45cdc8e9046286a6e pkgname = libint2 diff --git a/0001-Update-build_libint.cc.patch b/0001-Update-build_libint.cc.patch new file mode 100644 index 000000000000..05774194e1f6 --- /dev/null +++ b/0001-Update-build_libint.cc.patch @@ -0,0 +1,29 @@ +From 36e61e6b5a5bbc779b89badb79b8e034ed3fc4c4 Mon Sep 17 00:00:00 2001 +From: "Lori A. Burns" <lori.burns@gmail.com> +Date: Thu, 3 Oct 2019 19:13:55 -0400 +Subject: [PATCH] Update build_libint.cc + +--- + src/bin/libint/build_libint.cc | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/bin/libint/build_libint.cc b/src/bin/libint/build_libint.cc +index 1b1da8c..626c651 100644 +--- a/src/bin/libint/build_libint.cc ++++ b/src/bin/libint/build_libint.cc +@@ -785,7 +785,12 @@ BOOST_PP_LIST_FOR_EACH ( BOOST_PP_ONEBODY_MCR1, _, BOOST_PP_ONEBODY_TASK_LIST) + } + #else + iface->to_params(iface->macro_define("MAX_AM",LIBINT_MAX_AM)); +- iface->to_params(iface->macro_define("MAX_AM_default",LIBINT_MAX_AM)); ++ for(unsigned int d=0; d<=INCLUDE_ERI; ++d) { ++ std::ostringstream oss; ++ oss << "MAX_AM_default"; ++ if (d > 0) oss << d; ++ iface->to_params(iface->macro_define(oss.str(),LIBINT_MAX_AM)); ++ } + #endif + cparams->print(os); + +-- +2.24.1 @@ -1,33 +1,86 @@ # Maintainer: Viktor Drobot (aka dviktor) linux776 [at] gmail [dot] com +# Contributor: Anton Kudelin <kudelin at protonmail dot com> -pkgname=libint2 _pkgname=libint +pkgname=libint2 pkgver=2.6.0 -pkgrel=1 -pkgdesc='A library for the evaluation of molecular integrals of many-body operators over Gaussian functions' +pkgrel=2 +pkgdesc='A high-performance library for computing Gaussian integrals in quantum mechanics' url='https://github.com/evaleev/libint' -license=('GPL3') +license=('GPL') arch=('x86_64') -depends=('boost' 'boost-libs' 'gmp') -makedepends=('make' 'autoconf' 'doxygen' 'clang' 'texlive-bin') -source=("https://github.com/evaleev/libint/archive/v${pkgver}.tar.gz") -sha1sums=('2432391ff400bb9bf813443043582fa397f38b0a') -options=(!strip) +depends=('boost') +makedepends=('python' 'gcc-fortran' 'cmake' 'automake' 'autoconf') +source=("https://github.com/evaleev/libint/archive/v${pkgver}.tar.gz" + "0001-Update-build_libint.cc.patch") +sha256sums=('4ae47e8f0b5632c3d2a956469a7920896708e9f0e396ec10071b8181e4c8d9fa' + '22fea5b46e61ad3a08f2b9ea9a898dc8c29faa77db06dfd45cdc8e9046286a6e') +options=(staticlibs) -build() { - cd ${srcdir}/${_pkgname}-${pkgver} +prepare() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/0001-Update-build_libint.cc.patch" ./autogen.sh + mkdir "$srcdir/build" - mkdir build - cd build + # Detecting FMA support + if [ $( gcc -march=native -dM -E - < /dev/null | egrep "FMA__" | tail -c 2 ) \ + == 1 ] + then + FMA=yes + CXXFLAGS="$CXXFLAGS -mfma" + echo "Support of FMA intrinsics is enabled" + else + FMA=no + echo "Support of FMA intrinsics is disabled" + fi + + # Setting build environment + export CC=gcc + export CXX=g++ + export FC=gfortran + export CXXGENFLAGS="$CXXFLAGS" +} - ../configure --prefix=/usr +build() { + cd "${srcdir}/build" + + # Generating code with desirable features such as fortran interface + ../$_pkgname-$pkgver/configure \ + --enable-eri=1 \ + --enable-eri2=1 \ + --enable-eri3=1 \ + --enable-fma=$FMA \ + --with-max-am=5 \ + --with-eri-max-am=5,4 \ + --with-eri2-max-am=7,6 \ + --with-eri3-max-am=7,6 \ + --with-opt-am=3 + make export + + # Actual compilation of LIBINT + tar xzf $_pkgname-$pkgver.tgz + cd "$_pkgname-$pkgver" + + ./configure \ + --prefix=/usr \ + --libdir=/usr/lib \ + --enable-fortran \ + --with-cxx=g++ \ + --with-cxx-optflags="$CXXFLAGS" make } +check() { + cd "$srcdir/build/$_pkgname-$pkgver" + + make check +} + package() { - cd ${srcdir}/${_pkgname}-${pkgver}/build + cd "$srcdir/build/$_pkgname-$pkgver" - make DESTDIR="$pkgdir" install + make DESTDIR=$pkgdir install } |