summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO16
-rw-r--r--PKGBUILD40
-rw-r--r--make.inc29
3 files changed, 61 insertions, 24 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8054796b6f66..9b40a67e119f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -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
diff --git a/PKGBUILD b/PKGBUILD
index 773c4fa8b869..192ab55fa15a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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)