diff options
-rw-r--r-- | .SRCINFO | 16 | ||||
-rw-r--r-- | PKGBUILD | 40 | ||||
-rw-r--r-- | make.inc | 29 |
3 files changed, 61 insertions, 24 deletions
@@ -1,16 +1,16 @@ pkgbase = exciting - pkgdesc = Full-potential all-electron density-functional-theory package implementing the families of linearized augmented planewave methods. - pkgver = 7 + pkgdesc = A full-potential all-electron density-functional-theory package + pkgver = 7.14 pkgrel = 1 url = http://exciting-code.org arch = x86_64 license = GPL - depends = gcc-fortran - depends = blas - depends = openmp - depends = openmpi - source = http://exciting.wdfiles.com/local--files/nitrogen/exciting.nitrogen.tar.gz - md5sums = 8447e7b325ce3f00f90c7ab8781b889c + depends = scalapack + depends = arpack + source = http://exciting.wdfiles.com/local--files/nitrogen-14/exciting.nitrogen-14.tar.gz + source = make.inc + sha256sums = a7feaffdc23881d6c0737d2f79f94d9bf073e85ea358a57196d7f7618a0a3eff + sha256sums = 30503a36da77ee97fd7c6beb4445b1215915fad41e4714368b5584866131e5fe pkgname = exciting @@ -1,27 +1,35 @@ +# Maintainer: Anton Kudelin <kudelin at protonmail dot com> + pkgname=exciting -pkgver=7 +pkgver=7.14 +_isotope=nitrogen-14 pkgrel=1 -pkgdesc="Full-potential all-electron density-functional-theory package -implementing the families of linearized augmented planewave methods." +pkgdesc="A full-potential all-electron density-functional-theory package" arch=("x86_64") url="http://exciting-code.org" license=("GPL") -depends=(gcc-fortran blas openmp openmpi) -source=("http://exciting.wdfiles.com/local--files/nitrogen/exciting.nitrogen.tar.gz") -md5sums=('8447e7b325ce3f00f90c7ab8781b889c') +depends=('scalapack' 'arpack') +source=("http://exciting.wdfiles.com/local--files/$_isotope/$pkgname.$_isotope.tar.gz" + "make.inc") +sha256sums=('a7feaffdc23881d6c0737d2f79f94d9bf073e85ea358a57196d7f7618a0a3eff' + '30503a36da77ee97fd7c6beb4445b1215915fad41e4714368b5584866131e5fe') + +prepare() { + cd "$srcdir/$pkgname/build" + cp "$srcdir/make.inc" . + sed -i 's/libs:: libbzint.a fftlib.a libarpack.a libmsec.a libfox leblaiklib.a libxc.a liblbfgs.a/libs:: libbzint.a fftlib.a libmsec.a libfox leblaiklib.a libxc.a liblbfgs.a/g' Make.common +} build() { - cd "$srcdir/exciting" - cp build/platforms/make.inc.gfortran build/make.inc - export FCCPP="cpp" - make + cd "$srcdir/$pkgname" + make mpi } package() { - cd "$srcdir/exciting" - install -d "$pkgdir/usr/bin" - cp -r bin/* "$pkgdir/usr/bin" - install -d "$pkgdir/usr/share/doc/exciting" - chmod -R 755 docs - cp -r docs/* "$pkgdir/usr/share/doc/exciting" + cd "$srcdir/$pkgname" + install -d "$pkgdir/usr/bin" + cp -r bin/* "$pkgdir/usr/bin" + install -d "$pkgdir/usr/share/doc/$pkgname" + chmod -R 755 docs + cp -r docs/* "$pkgdir/usr/share/doc/$pkgname" } diff --git a/make.inc b/make.inc new file mode 100644 index 000000000000..f93703c01587 --- /dev/null +++ b/make.inc @@ -0,0 +1,29 @@ +F90 = gfortran +F77 = $(F90) +F90_OPTS = -O3 -march=native -fopenmp -DUSEOMP -ffree-line-length-0 -fallow-argument-mismatch +F77_OPTS = $(F90_OPTS) +FCCPP = cpp +CPP_ON_OPTS = -cpp -DXS -DISO -DLIBXC +LIB_ARP = -larpack +export USE_SYS_LAPACK=true +LIB_LPK = -llapack -lblas +LIB_FFT = fftlib.a +LIB_BZINT = libbzint.a +LIB_SCLPK = -lscalapack + +LIBS = $(LIB_ARP) $(LIB_LPK) $(LIB_FFT) $(LIB_BZINT) -lgomp + +F90_DEBUGOPTS = -g -fbounds-check -fbacktrace -Wall -ffree-line-length-0 +F77_DEBUGOPTS = $(F90_DEBUGOPTS) + +MPIF90 = mpif90 +MPIF90_OPTS = $(F90_OPTS) $(CPP_ON_OPTS) -DMPI -DMPIRHO -DMPISEC +F77MT = $(F77) +F90MT = $(F90) +SMP_LIBS = $(LIBS) +SMPF90_OPTS = -fopenmp $(F90_OPTS) +SMPF77_OPTS = $(SMPF90_OPTS) + +BUILDMPI = true +LIBS_MPI = $(LIB_SCLPK) +MPIF90_CPP_OPTS += $(CPP_SCLPK) |