aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-physics/abinit')
-rw-r--r--sci-physics/abinit/ChangeLog7
-rw-r--r--sci-physics/abinit/Manifest6
-rw-r--r--sci-physics/abinit/abinit-6.8.2.ebuild211
-rw-r--r--sci-physics/abinit/metadata.xml5
4 files changed, 227 insertions, 2 deletions
diff --git a/sci-physics/abinit/ChangeLog b/sci-physics/abinit/ChangeLog
index fea065779..88370a151 100644
--- a/sci-physics/abinit/ChangeLog
+++ b/sci-physics/abinit/ChangeLog
@@ -2,6 +2,13 @@
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*abinit-6.8.2 (27 Sep 2011)
+
+ 27 Sep 2011; Honza Macháček <Hloupy.Honza@centrum.cz> +abinit-6.8.2.ebuild,
+ metadata.xml:
+ Another version bump. USE flag fftw-threads introduced, a workaround for
+ sci-libs/fftw-3.3 bug #384645 temporarily used.
+
*abinit-6.8.1 (29 Jun 2011)
29 Jun 2011; Honza Macháček <Hloupy.Honza@centrum.cz> +abinit-6.8.1.ebuild:
diff --git a/sci-physics/abinit/Manifest b/sci-physics/abinit/Manifest
index 2ee9c036a..204b963ad 100644
--- a/sci-physics/abinit/Manifest
+++ b/sci-physics/abinit/Manifest
@@ -3,7 +3,9 @@ AUX 6.2.2-change-default-directories.patch 1006 RMD160 ba252ecc7f5592f4df7627165
AUX 6.6.1-openmp.patch 19735 RMD160 6e6e42a5f030bdfb859583dd5e72ea434e980bcf SHA1 51c032ca7f52fe4e1c4afe86f2cb019166d4afbb SHA256 9568ace3732159ae395a3eef069338ded1d734becde1b8b382a58adf2f254933
DIST abinit-6.6.3.tar.gz 41161321 RMD160 f9169812cfb2dc30f752bf0ab0ffc41250ea0bbb SHA1 02c9fd6abe1b73164b804b6e0b1f829ec9fd286e SHA256 fad84d3e774e3b4ba16f2a2924e60b8ba42ab21fefd89d8ce4848f9a9e03f774
DIST abinit-6.8.1.tar.gz 43548991 RMD160 320de2b02862ba5ebf2e0ac209e4f63bf457345f SHA1 00b78334fc6f2859665a720c98cf318eed0d57b2 SHA256 6a8ff5f88ee765b8c71fc80a171c61213f1143399f3de66364d32a9560f22689
+DIST abinit-6.8.2.tar.gz 43565001 RMD160 151fcd3fa3c8aad204aa01a0877b101b7faf0550 SHA1 2b96bb175e1946c48ee3a72064b08ccc1b8dbdea SHA256 7a0e8ebfce50ae18e5c4f25f9bfd534623a41985082efead918a3878464a181c
EBUILD abinit-6.6.3.ebuild 6256 RMD160 88bf466811c42d04a57c1ddc6d3949d3ca6cdabf SHA1 3bdf27623990cb4e2131d333c6e5f690742e034a SHA256 fef385cfc374e619c12918ddcfe3c4c6e9e72eb297c1663e948eedfc2a6e675c
EBUILD abinit-6.8.1.ebuild 6256 RMD160 88bf466811c42d04a57c1ddc6d3949d3ca6cdabf SHA1 3bdf27623990cb4e2131d333c6e5f690742e034a SHA256 fef385cfc374e619c12918ddcfe3c4c6e9e72eb297c1663e948eedfc2a6e675c
-MISC ChangeLog 3210 RMD160 eeddead33ca6afe11e62929ada84041be20c4d16 SHA1 5406bff86fd67dc8cd834c303c02cb2073e9ffa8 SHA256 28f5b197338358b150b3bf8d35dcb0777efef9382bc3c9ba0f4c6dbe626a0655
-MISC metadata.xml 1225 RMD160 bebdbae077b05fe05bac5665b5b4d1f654620366 SHA1 464ff6d71e8b44df92c421a984c1f6a9cae38299 SHA256 71e7a9928f03914c9c5e6c45e6a6185a50f5c3dda7fbf791d3ca238dbee6727e
+EBUILD abinit-6.8.2.ebuild 6788 RMD160 878fed296ae0210a40280b125252e728975282d9 SHA1 7f6f7d8c37e3bc9cdcb92a62cfdd2af1cb334fec SHA256 8d122654453ee55124579bf7e62f61d9a0ce2c19ee9b811dc9083be66641585f
+MISC ChangeLog 3461 RMD160 e66ab8d631ebaa59103699d3be9bb0cd197b3048 SHA1 15bfab8b17f2492fe77395ff06e505557fa4a13b SHA256 cdb53d92104bbe7c218fb85d2f9a1252ab62987e5057ffda7b1f9d033530262f
+MISC metadata.xml 1322 RMD160 116c9176cdc79df1f425a74992f1aebcdbbb3850 SHA1 1c56aa3d3c93d58fdc9d22434970175a08c90562 SHA256 72a4b2eb56651bc52a0ebeea89515dbafcd23ac065e7d9a62a433e8a4c12d5b9
diff --git a/sci-physics/abinit/abinit-6.8.2.ebuild b/sci-physics/abinit/abinit-6.8.2.ebuild
new file mode 100644
index 000000000..cdd495fd1
--- /dev/null
+++ b/sci-physics/abinit/abinit-6.8.2.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="3"
+
+inherit autotools eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Find total energy, charge density and electronic structure using density functional theory"
+HOMEPAGE="http://www.abinit.org/"
+SRC_URI="http://ftp.abinit.org/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cuda -debug +fftw +fftw-threads +fox gsl +hdf5 mpi +netcdf python -test +threads -vdwxc"
+
+RDEPEND=">=sci-libs/bigdft-1.2.0.2
+ sci-libs/etsf_io
+ =sci-libs/libxc-1.0[fortran]
+ sci-physics/atompaw[libxc]
+ fox? ( sci-libs/fox[dom,sax,wcml,wxml] )
+ netcdf? (
+ sci-libs/netcdf[fortran]
+ hdf5? (
+ sci-libs/netcdf[fortran,hdf5]
+ )
+ )
+ hdf5? ( sci-libs/hdf5[fortran] )
+ sci-libs/wannier90
+ virtual/blas
+ virtual/lapack
+ gsl? ( sci-libs/gsl )
+ fftw? (
+ sci-libs/fftw:3.0
+ fftw-threads? ( sci-libs/fftw:3.0[threads] )
+ )
+ mpi? ( virtual/mpi )
+ python? ( dev-python/numpy )
+ cuda? ( dev-util/nvidia-cuda-sdk )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ dev-perl/Text-Markdown"
+
+S=${WORKDIR}/${P%[a-z]}
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ # Doesn't compile with gcc-4.0, only >=4.1
+ if [[ $(tc-getFC) == *gfortran ]]; then
+ if [[ $(gcc-major-version) -eq 4 ]] \
+ && [[ $(gcc-minor-version) -lt 1 ]]; then
+ die "Requires gcc-4.1 or newer"
+ fi
+ fi
+ if use fftw-threads && ! use fftw; then
+ ewarn "fftw-threads set but fftw not used, ignored"
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/6.2.2-change-default-directories.patch
+ epatch "${FILESDIR}"/6.0.3-fftw.patch
+ eautoreconf
+}
+
+src_configure() {
+ local libs="-L/usr/$(get_libdir)"
+ local modules="-I/usr/$(get_libdir)/finclude"
+ local FoX_libs="${libs} -lFoX_dom -lFoX_sax -lFoX_wcml -lFoX_wxml -lFoX_common -lFoX_utils -lFoX_fsys"
+ local trio_flavor="etsf_io"
+ use fox && trio_flavor="${trio_flavor}+fox"
+ use netcdf && trio_flavor="${trio_flavor}+netcdf"
+ local netcdff_libs="-lnetcdff"
+ use hdf5 && netcdff_libs="${netcdff_libs} -lhdf5_fortran"
+ local fft_flavor="fftw3"
+ local fft_libs="-L/usr/lib"
+ # The fftw threads support is protected by black magick.
+ # Anybody removes it, dies.
+ # New USE flag "fftw-threads" was added to control usage
+ # of the threaded fftw variant. Since fftw-3.3 has expanded
+ # the paralel options by MPI and OpenMP support, analogical
+ # USE flags should be added to select them in future;
+ # unusable with previous FFTW versions, they are postponed
+ # for now.
+ if use fftw-threads; then
+ fft_flavor="fftw3-threads"
+ if has_version '>=sci-libs/fftw-3.3'; then
+ # pkg-config files for fftw-3.3 are broken
+ # All the parallel stuff is separated
+ # from the main body of common routines,
+ # and -lfftw3 must be always included alongside.
+ # Until version 3.3 this used to be masked by
+ # .la files.
+ # Bug 384645
+ fft_libs="${fft_libs} $(pkg-config --libs fftw3_threads) $(pkg-config --libs fftw3)"
+ else
+ fft_libs="${fft_libs} $(pkg-config --libs fftw3_threads)"
+ fi
+ else
+ fft_libs="${fft_libs} $(pkg-config --libs fftw3)"
+ fi
+ if use mpi; then
+ MY_FC="mpif90"
+ MY_CC="mpicc"
+ MY_CXX="mpic++"
+ else
+ MY_FC="$(tc-getFC)"
+ MY_CC="$(tc-getCC)"
+ MY_CXX="$(tc-getCXX)"
+ fi
+ MARKDOWN=Markdown.pl econf \
+ $(use_enable debug debug enhanced) \
+ $(use_enable mpi) \
+ $(use_enable mpi mpi-io) \
+ --disable-smp \
+ $(use_enable vdwxc) \
+ $(use_enable cuda gpu) \
+ "$(use cuda && echo "--with-gpu-flavor=cuda-single")" \
+ "$(use cuda && echo "--with-gpu-prefix=/opt/cuda/")" \
+ "$(use gsl && echo "--with-math-flavor=gsl")" \
+ "$(use gsl && echo "--with-math-incs=$(pkg-config --cflags gsl)")" \
+ "$(use gsl && echo "--with-math-libs=$(pkg-config --libs gsl)")" \
+ --with-linalg-flavor="atlas" \
+ --with-linalg-libs="$(pkg-config --libs lapack)" \
+ --with-trio-flavor="${trio_flavor}" \
+ "$(use netcdf && echo "--with-netcdf-incs=-I/usr/include")" \
+ "$(use netcdf && echo "--with-netcdf-libs=$(pkg-config --libs netcdf) ${netcdff_libs}")" \
+ "$(use fox && echo "--with-fox-incs=${modules}")" \
+ "$(use fox && echo "--with-fox-libs=${FoX_libs}")" \
+ --with-etsf-io-incs="${modules}" \
+ --with-etsf-io-libs="${libs} -letsf_io -letsf_io_utils -letsf_io_low_level" \
+ --with-dft-flavor="libxc+bigdft+atompaw+wannier90" \
+ --with-libxc-incs="${modules}" \
+ --with-libxc-libs="${libs} -lxc" \
+ --with-bigdft-incs="${modules}" \
+ --with-bigdft-libs="${libs} -lpoissonsolver -lbigdft" \
+ --with-atompaw-incs="${modules}" \
+ --with-atompaw-libs="${libs} -latompaw" \
+ --with-wannier90-bins="/usr/bin" \
+ --with-wannier90-incs="${modules}" \
+ --with-wannier90-libs="${libs} -lwannier $(pkg-config --libs lapack)" \
+ "$(use fftw && echo "--with-fft-flavor=${fft_flavor}")" \
+ "$(use fftw && echo "--with-fft-incs=-I/usr/include")" \
+ "$(use fftw && echo "--with-fft-libs=${fft_libs}")" \
+ --with-timer-flavor="abinit" \
+ FC="${MY_FC}" \
+ CC="${MY_CC}" \
+ CXX="${MY_CXX}" \
+ LD="$(tc-getLD)" \
+ FCFLAGS="${FCFLAGS:- ${FFLAGS:- -O2}} ${modules} -I/usr/include"
+}
+
+src_compile() {
+ emake || die
+}
+
+src_test() {
+ einfo "The tests take quite a while, on the order of 1-2 hours"
+ einfo "on an Intel Penryn (2.5 GHz)."
+ cd "${S}"/tests
+ emake tests_min || ewarn "Minimal tests failed"
+ emake tests_paw || ewarn "PAW tests failed"
+ emake tests_gw || ewarn "GW tests failed"
+ emake tests_gw_paw || ewarn "GW-PAW tests failed"
+ emake tests tdft || ewarn "TDFT tests failed"
+ emake tests_bench || ewarn "Benchmarks failed"
+
+ local REPORT
+ for REPORT in $(find . -name report); do
+ REPORT=${REPORT#*/}
+ elog "Parameters and unusual results for ${REPORT%%/*} tests"
+ echo "Parameters and unusual results for ${REPORT%%/*} tests" >>tests_summary.txt
+ while read line; do
+ elog "${line}"
+ echo "${line}" >>tests_summary.txt
+ done \
+ < <(grep -v -e succeeded -e passed ${REPORT})
+ done
+
+ local testdir
+ find . -name "tmp-test*" -print | \
+ while read testdir; do
+ if [ -e summary_of_tests.tar ]; then
+ tar rvf summary_of_tests.tar ${testdir}
+ else tar cvf summary_of_tests.tar ${testdir}
+ fi
+ done
+
+ elog "The full test results will be installed as summary_of_tests.tar.bz2."
+ elog "Also a concise report tests_summary.txt is installed."
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "make install failed"
+
+ if use test; then
+ dodoc tests/tests_summary.txt || ewarn "Copying tests summary failed"
+ dodoc tests/summary_tests.tar || ewarn "Copying tests results failed"
+ dodoc tests/summary_of_tests.tar || ewarn "Copying tests results failed"
+ fi
+
+ dodoc KNOWN_PROBLEMS README || die "Copying doc files failed"
+}
+
+pkg_postinst() {
+ if use test; then
+ elog "The full test results will be installed as summary_tests.tar.bz2."
+ elog "Also a concise report tests_summary.txt is installed."
+ fi
+}
diff --git a/sci-physics/abinit/metadata.xml b/sci-physics/abinit/metadata.xml
index f0b9f8d02..834b78f09 100644
--- a/sci-physics/abinit/metadata.xml
+++ b/sci-physics/abinit/metadata.xml
@@ -11,6 +11,11 @@ ABINIT is a package whose main program allows one to find the total energy, char
</flag>
</use>
<use>
+ <flag name="fftw-threads">
+ Use the threaded version of sci-libs/fftw
+ </flag>
+</use>
+<use>
<flag name="fox">
Enable support for FoX Fortran XML library
</flag>