aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-physics/elk/ChangeLog6
-rw-r--r--sci-physics/elk/elk-1.4.22.ebuild92
-rw-r--r--sci-physics/elk/metadata.xml10
3 files changed, 53 insertions, 55 deletions
diff --git a/sci-physics/elk/ChangeLog b/sci-physics/elk/ChangeLog
index 9a96a38d0..996267a68 100644
--- a/sci-physics/elk/ChangeLog
+++ b/sci-physics/elk/ChangeLog
@@ -1,7 +1,11 @@
# ChangeLog for sci-physics/elk
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+ 21 Feb 2013; Justin Lecher <jlec@gentoo.org> elk-1.4.22.ebuild, metadata.xml:
+ Use tc-getPKG_CONFIG from toolchain-funcs.eclass instead of plain pkg-config;
+ add missing dep on virtual/pkgconfig; cleaning of ebuild
+
*elk-1.4.22 (07 Jul 2012)
07 Jul 2012; Honza Macháček <Hloupy.Honza@centrum.cz> +elk-1.4.22.ebuild:
diff --git a/sci-physics/elk/elk-1.4.22.ebuild b/sci-physics/elk/elk-1.4.22.ebuild
index 27b3f3af5..908a24a69 100644
--- a/sci-physics/elk/elk-1.4.22.ebuild
+++ b/sci-physics/elk/elk-1.4.22.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
-EAPI="4"
+EAPI=5
-inherit eutils fortran-2 multilib toolchain-funcs
+inherit eutils flag-o-matic fortran-2 multilib toolchain-funcs
-DESCRIPTION="All-electron full-potential linearised augmented-plane wave (FP-LAPW) code with advanced features."
+DESCRIPTION="All-electron full-potential linearised augmented-plane wave (FP-LAPW)"
HOMEPAGE="http://elk.sourceforge.net/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tgz"
@@ -15,13 +15,15 @@ SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="-debug lapack libxc mpi openmp perl test"
-RDEPEND="lapack? ( virtual/blas
+RDEPEND="
+ lapack? (
+ virtual/blas
virtual/lapack )
libxc? ( =sci-libs/libxc-1*[fortran] )
mpi? ( virtual/mpi )"
DEPEND="${RDEPEND}
perl? ( dev-lang/perl )
- dev-util/pkgconfig"
+ virtual/pkgconfig"
DOCS=( README )
@@ -38,65 +40,60 @@ pkg_setup() {
tc-export FC F77 CC CXX
fi
- if use openmp; then
- FORTRAN_NEED_OPENMP=1
- fi
+ use openmp && FORTRAN_NEED_OPENMP=1
fortran-2_pkg_setup
- if use openmp; then
- export FC="${FC} -fopenmp"
- export F77="${F77} -fopenmp"
- export CC="${CC} -fopenmp"
- export CXX="${CXX} -fopenmp"
- fi
+ use openmp && append-flags -fopenmp
}
src_prepare() {
+ rm -rf src/{BLAS,LAPACK} || die
if use libxc; then
- sed -i -e's/^\(SRC_libxc =\)/#\1/' "${S}/src/Makefile"
+ sed -i -e's/^\(SRC_libxc =\)/#\1/' "${S}/src/Makefile" || die
fi
if use mpi; then
- sed -i -e's/^\(SRC_mpi =\)/#\1/' "${S}/src/Makefile"
+ sed -i -e's/^\(SRC_mpi =\)/#\1/' "${S}/src/Makefile" || die
fi
+
+ sed \
+ -e "s: -o : ${LDFLAGS} -o :g" \
+ -i src/{,eos,spacegroup}/Makefile || die
}
src_configure() {
- FCFLAGS="${FCFLAGS:- ${FFLAGS:- -O3 -funroll-loops -ffast-math}}"
- FCFLAGS="${FCFLAGS} -I/usr/include -I/usr/$(get_libdir)/finclude"
- CFLAGS="${CFLAGS:- -O3 -funroll-loops -ffast-math}"
- CXXFLAGS="${CXXFLAGS:- ${CFLAGS}}"
- export FCFLAGS CFLAGS CXXFLAGS
- echo "MAKE = make" > make.inc
- echo "F90 = $FC" >> make.inc
- echo "F90_OPTS = $FCFLAGS" >> make.inc
- echo "F77 = $FC" >> make.inc
- echo "F77_OPTS = $FCFLAGS" >> make.inc
- echo "CC = ${CC}" >> make.inc
- echo "CXX = ${CXX}" >> make.inc
- echo "CFLAGS = ${CFLAGS}" >> make.inc
- echo "CXXFLAGS = ${CXXFLAGS}" >> make.inc
- echo "LD = $(tc-getLD)" >> make.inc
- echo "AR = ar" >> make.inc
- echo "LIB_SYS = " >> make.inc
- if use lapack; then
- echo "LIB_LPK = $(pkg-config --libs lapack)" >> make.inc
- else
- echo "LIB_LPK = lapack.a blas.a" >> make.inc
- fi
- echo "LIB_FFT = fftlib.a" >> make.inc
+ append-fflags -I/usr/include -I/usr/$(get_libdir)/finclude
+
+ cat > make.inc <<- EOF
+ MAKE = make
+ F90 = $(tc-getFC)
+ F90_OPTS = ${FCFLAGS}
+ F77 = $(tc-getF77)
+ F77_OPTS = ${FFLAGS}
+ CC = $(tc-getCC)
+ CXX = $(tc-getCXX)
+ CFLAGS = ${CFLAGS}
+ CXXFLAGS = ${CXXFLAGS}
+ LD = $(tc-getLD)
+ AR = $(tc-getAR)
+ LIB_SYS =
+ LIB_LPK = $(pkg-config --libs lapack)
+ LIB_FFT = fftlib.a
+ EOF
+
if use libxc; then
echo "LIB_XC = -L/usr/$(get_libdir) -lxc" >> make.inc
echo "SRC_libxc = libxc_funcs.f90 libxc.f90 libxcifc.f90" >>make.inc
fi
}
-src_compile() {
- emake -j1 || die "make failed"
-}
+MAKEOPTS+=" -j1"
-src_test() {
- emake test
+src_compile() {
+ emake -C src fft
+ emake -C src elk
+ emake -C src/eos
+ emake -C src/spacegroup
}
src_install() {
@@ -108,8 +105,5 @@ src_install() {
dodoc $doc
done
insinto /usr/share/${P}
- doins -r species
- doins -r utilities
- doins -r examples
- doins -r tests
+ doins -r species utilities examples tests
}
diff --git a/sci-physics/elk/metadata.xml b/sci-physics/elk/metadata.xml
index 1ad6121cf..992e40730 100644
--- a/sci-physics/elk/metadata.xml
+++ b/sci-physics/elk/metadata.xml
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>sci-physics</herd>
-<longdescription lang="en">
+ <herd>sci-physics</herd>
+ <longdescription lang="en">
Elk is an all-electron full-potential linearised augmented-plane wave (FP-LAPW) code with many advanced features. Written originally at Karl-Franzens-Universität Graz as a milestone of the EXCITING EU Research and Training Network, the code is designed to be as simple as possible so that new developments in the field of density functional theory (DFT) can be added quickly and reliably. The code is freely available under the GNU General Public License.
</longdescription>
-<use>
- <flag name="libxc">
+ <use>
+ <flag name="libxc">
Use sci-libs/libxc library of exchange-correlation functionals by ETSF.
</flag>
-</use>
+ </use>
</pkgmetadata>