aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDongxu Li <dongxuli2011@gmail.com>2011-04-26 14:38:21 -0400
committerDongxu Li <dongxuli2011@gmail.com>2011-04-26 14:38:21 -0400
commitf55378a9416f3bf62066e40e484e44f45407a300 (patch)
tree16b53ec9cef519d357690b1bae7dbffa65c52f1e /sci-physics/abinit
parent[sci-physics/espresso] live ebuild update (diff)
downloadsci-f55378a9416f3bf62066e40e484e44f45407a300.tar.gz
sci-f55378a9416f3bf62066e40e484e44f45407a300.tar.bz2
sci-f55378a9416f3bf62066e40e484e44f45407a300.zip
sci-physics/abinit: version bump to 6.6.2
Diffstat (limited to 'sci-physics/abinit')
-rw-r--r--sci-physics/abinit/ChangeLog3
-rw-r--r--sci-physics/abinit/Manifest16
-rw-r--r--sci-physics/abinit/abinit-6.6.2.ebuild221
-rw-r--r--sci-physics/abinit/metadata.xml23
4 files changed, 251 insertions, 12 deletions
diff --git a/sci-physics/abinit/ChangeLog b/sci-physics/abinit/ChangeLog
index 78e3079c8..62cefbe2b 100644
--- a/sci-physics/abinit/ChangeLog
+++ b/sci-physics/abinit/ChangeLog
@@ -4,6 +4,9 @@
*abinit-6.6.1 (07 Mar 2011)
+ 26 Apr 2011; Dongxu Li <dongxuli2011@gmail.com> +abinit-6.6.2.ebuild +metadata.xml:
+ Version bump to 6.6.2. Cleaned up old versions for numerous quality control issues.
+
09 Apr 2011; Dongxu Li <dongxuli2011@gmail.com>
abinit-6.6.1.ebuild:
Simple fix of a building issue due to FFTW. Disabled fftw-threads.
diff --git a/sci-physics/abinit/Manifest b/sci-physics/abinit/Manifest
index 2dfef96c8..3ff0423b2 100644
--- a/sci-physics/abinit/Manifest
+++ b/sci-physics/abinit/Manifest
@@ -1,15 +1,7 @@
AUX 6.0.3-fftw.patch 571 RMD160 b15b2905fd46a1c0f6fcc99c317b1b52a327ef12 SHA1 b518c2db591d93a425598e780d1edd971fe38e0d SHA256 ad8e1810dcdd19a23baf7d951ce0c7af1b47e19e934c5cc6cb598431cfd2e21c
-AUX 6.0.3-libxc-flags.patch 1674 RMD160 6f81e21f8a33f16c9cd270acabf9f756650c1be2 SHA1 53caa98d3719d556289d1db7b4bea1897abbabaa SHA256 a36af15f2b1682011365b7261adc86f654513243d2ebf8c514c287fec7f18022
AUX 6.2.2-change-default-directories.patch 1006 RMD160 ba252ecc7f5592f4df762716582c6e331a5e994f SHA1 4d79a7a261211c44692c09e63197261bfdb2c06e SHA256 8865966dd0d94b00443faae62b58e9938a5ba5d15bc32b59f79f815922f91c44
-AUX 6.2.2-configure-fortran-calls.patch 1056 RMD160 0adc386a28545d89b2aabc8faec72dd2e1b81565 SHA1 05037e1fea8f6afedb17df9563e9cbe1bb85146a SHA256 2cc4d875090856cc6a653df67aa1d46dea0b5bf76585bc73735079a33bddca48
-AUX 6.2.2-long-message.patch 856 RMD160 78f68e28061f1611120e065aa9cc7dde5d55a13c SHA1 443528ca06c89f6b8df49813b3a9735e4f0631c8 SHA256 0e8e2b85ed366a8fe279298bbc47409d08268b94f48bb18f9d71a0367c900c54
-AUX 6.2.2-non-plugin-libs.patch 5341 RMD160 1dffa7d14a8b0711ae9f681df073bf0355983300 SHA1 db2b48bdd983e7d9b4be3e4bb2181237337a3a6d SHA256 5ca6435a11ee07db148c8f542307fa0d473455e6c4fb6194b73176bb66aaabd1
-AUX 6.4.2-openmp.patch 131318 RMD160 782f451384b916e9d5b990769a47b162412fc7e4 SHA1 e002581dcfeb2a3c0214cdc302dd9be9f014dc4a SHA256 5fed737e0a8758c4fe389df16391c7a99e2546416225aec89fe05b36ca937fc4
AUX 6.6.1-openmp.patch 19735 RMD160 6e6e42a5f030bdfb859583dd5e72ea434e980bcf SHA1 51c032ca7f52fe4e1c4afe86f2cb019166d4afbb SHA256 9568ace3732159ae395a3eef069338ded1d734becde1b8b382a58adf2f254933
-DIST abinit-6.4.2.tar.gz 42499278 RMD160 2673b3490f84fa3ec341d68adbf8a5e36ed9afc9 SHA1 88d15b7ab9598daac448748bfc0756808d2b75cf SHA256 4655fdc15237eb55cbca511c4ae606a42dee7b093b119cc472912404ebdb7a41
-DIST abinit-6.4.3.tar.gz 42502489 RMD160 5d1b4d03079570f29bc1195c6ac12ace3d5e8426 SHA1 463030fa2c91c25a7c3a519990b33819c55924ce SHA256 a2abceb5f38923829d3232f370d947b4c0a45912941690075aa97a72afdf81a8
-DIST abinit-6.6.1.tar.gz 41106793 RMD160 fb5dc06e06aa229e7e036f50376b4eca6400e79b SHA1 f81d2eec5aea403671ec071d0bc91a116a303492 SHA256 12a0d1b0c85dc0fdc47f8ac0213077de22f53a7bfb5b4b849cecd19a90ac4fca
-EBUILD abinit-6.4.2.ebuild 6671 RMD160 fa2fee9d5a35a130c03aa8f38a9993d20f7ef5df SHA1 d6107590dd8191c3bb6a27ea6ce8535afc6356c7 SHA256 2eb6d7fdff190a0fdf57c922ef0375444a82a21e8727246228e673228a215574
-EBUILD abinit-6.4.3.ebuild 6936 RMD160 38bdb6145e4dea71a9b9f08628955cb2a47f562c SHA1 f063b38dbd871c36751f23301990e27c636d121e SHA256 44e53c19079ae9b74cb79df6889ea759a6e8e4f93c61f4a1f868e94dad3ee819
-EBUILD abinit-6.6.1.ebuild 6580 RMD160 1e756d01fbc1756d7dda254a3ae4d7d1471419e7 SHA1 d157cc6d86afedca3ab5feefde995c36a28f7bf0 SHA256 dd6cca76f72d5388ec00e619ba1a611217505161f260d4914bf3063d1b1ed685
-MISC ChangeLog 1817 RMD160 0ddd6477da1d5842c931ceb5788e563e6cfd8651 SHA1 50e15f86e8ddafd6cd02df73ee8606dce26251dc SHA256 fd74bd7de9df0874a4ce3b06ef3a05a1fa64fe9a4d887b35ac7bfc98b2ca35af
+DIST abinit-6.6.2.tar.gz 41103295 RMD160 d231811cb393c4cd1a51447f924715b8f617f56f SHA1 b3710bad16535a0eac6d7924b2a0d44b871de71d SHA256 c2d8e132591bbf96fa2f868fae4e39df92050b63090023ef561a163ca568a05b
+EBUILD abinit-6.6.2.ebuild 6687 RMD160 c97b33c623d0854b0131277e32b8ee3b635d4e07 SHA1 ab45057fb6a95f7cf45dbe9f2c1fc03c5480e4ad SHA256 c393f67f67848286201298860df317625313501bf735fdfda3cb4e8793893125
+MISC ChangeLog 1990 RMD160 92c66e6040697743b23cbf1dc75d569387bc7c0b SHA1 39c9682bde0f628299b5c1327a30623a9de71fea SHA256 f671f6c97dab6f4fd1036300247676d11cc6ba9dd1c4334a375acb62b912ba78
+MISC metadata.xml 1225 RMD160 bebdbae077b05fe05bac5665b5b4d1f654620366 SHA1 464ff6d71e8b44df92c421a984c1f6a9cae38299 SHA256 71e7a9928f03914c9c5e6c45e6a6185a50f5c3dda7fbf791d3ca238dbee6727e
diff --git a/sci-physics/abinit/abinit-6.6.2.ebuild b/sci-physics/abinit/abinit-6.6.2.ebuild
new file mode 100644
index 000000000..12fab3820
--- /dev/null
+++ b/sci-physics/abinit/abinit-6.6.2.ebuild
@@ -0,0 +1,221 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="3"
+
+inherit autotools eutils 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 +fox gsl +hdf5 mpi +netcdf python -smp +threads -test -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
+ threads? ( sci-libs/fftw:3.0[threads] )
+ )
+ mpi? ( virtual/mpi )
+ python? ( dev-python/numpy )
+ x86? (
+ cuda? ( dev-util/nvidia-cuda-sdk )
+ )
+ amd64? (
+ cuda? ( dev-util/nvidia-cuda-sdk )
+ )
+ "
+
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ dev-perl/Text-Markdown"
+
+#WANT_AUTOCONF="latest"
+#WANT_AUTOMAKE="latest"
+
+S=${WORKDIR}/${P%[a-z]}
+
+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 smp; then
+ ewarn "OpenMP support mostly broken. Apparently some developers \
+ have used OpenMP semaphors !$ as comment delimiters. Not yet solved \
+ upstream, patch incomplete."
+ if use mpi && has_version sys-cluster/openmpi; then
+ ewarn "Combined with openMPI, OpenMP support is especially likely to crash."
+ fi
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/6.2.2-change-default-directories.patch
+ epatch "${FILESDIR}"/6.0.3-fftw.patch
+ epatch "${FILESDIR}"/6.6.1-openmp.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="-lfftw3"
+ fft_libs="${fft_libs} $(pkg-config --libs fftw3)"
+ #fft_flavor="fftw3-threads" doesn't build for me
+ #if use threads; then
+ # fft_libs="${fft_libs} $(pkg-config --libs fftw3_threads)"
+ # fft_flavor="fftw3-threads"
+ #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
+ if use smp; then
+ MY_FC="${MY_FC} -fopenmp"
+ MY_CC="${MY_CC} -fopenmp"
+ MY_CXX="${MY_CXX} -fopenmp"
+ fi
+ #enable bindings for ab6 header and libraries
+ # --enable-bindings
+ #--with-fc-version=f90 --enable-bindings \
+ local my_cuda
+ if use cuda; then
+ if use x86 || use amd64; then
+ my_cuda="--enable-gpu --with-gpu-flavor=cuda-single --with-gpu-prefix=/opt/cuda/"
+ fi
+ fi
+ MARKDOWN=Markdown.pl econf \
+ $(use_enable debug debug enhanced) \
+ $(use_enable mpi) \
+ $(use_enable mpi mpi-io) \
+ $(use_enable smp) \
+ $(use_enable vdwxc) \
+ "$(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" \
+ "${my_cuda}"
+}
+
+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
new file mode 100644
index 000000000..f0b9f8d02
--- /dev/null
+++ b/sci-physics/abinit/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ABINIT is a package whose main program allows one to find the total energy, charge density and electronic structure of systems made of electrons and nuclei (molecules and periodic solids) within Density Functional Theory (DFT), using pseudopotentials and a planewave basis. ABINIT also includes options to optimize the geometry according to the DFT forces and stresses, or to perform molecular dynamics simulations using these forces, or to generate dynamical matrices, Born effective charges, and dielectric tensors. Excited states can be computed within the Time-Dependent Density Functional Theory (for molecules), or within Many-Body Perturbation Theory (the GW approximation). In addition to the main ABINIT code, different utility programs are provided.
+</longdescription>
+<use>
+ <flag name="cuda">
+ Enable support for nVidia CUDA
+ </flag>
+</use>
+<use>
+ <flag name="fox">
+ Enable support for FoX Fortran XML library
+ </flag>
+</use>
+<use>
+ <flag name="vdwxc">
+ Activate van der Waals exchange-correlation
+ </flag>
+</use>
+</pkgmetadata>