aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHonza Macháček <Hloupy.Honza@centrum.cz>2011-06-29 17:27:45 +0200
committerHonza Macháček <Hloupy.Honza@centrum.cz>2011-06-29 17:27:45 +0200
commit79939872cb3e7fcc5666f22abedf59d937ea9dfe (patch)
treed9909a8140034e90d8b0c6e68d7f5898c17cc4a2 /sci-physics
parentRestored the support for threaded fftw. Works for me. NEVER DISABLE FEATURES ... (diff)
downloadsci-79939872cb3e7fcc5666f22abedf59d937ea9dfe.tar.gz
sci-79939872cb3e7fcc5666f22abedf59d937ea9dfe.tar.bz2
sci-79939872cb3e7fcc5666f22abedf59d937ea9dfe.zip
Yet another quick version bump, no improvement to the ebuild. Compiles well for me but has problems testing. The fault may be just in my openmpi installation but use with caution.
Diffstat (limited to 'sci-physics')
-rw-r--r--sci-physics/abinit/ChangeLog7
-rw-r--r--sci-physics/abinit/Manifest4
-rw-r--r--sci-physics/abinit/abinit-6.8.1.ebuild196
3 files changed, 206 insertions, 1 deletions
diff --git a/sci-physics/abinit/ChangeLog b/sci-physics/abinit/ChangeLog
index 237af8e05..fea065779 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.1 (29 Jun 2011)
+
+ 29 Jun 2011; Honza Macháček <Hloupy.Honza@centrum.cz> +abinit-6.8.1.ebuild:
+ Yet another quick version bump, no improvement to the ebuild. Compiles well
+ for me but has problems testing. The fault may be just in my openmpi
+ installation but use with caution.
+
29 Jun 2011; Honza Macháček <Hloupy.Honza@centrum.cz> abinit-6.6.3.ebuild:
Restored the support for threaded fftw. Works for me. NEVER DISABLE FEATURES
FOR OTHERS.
diff --git a/sci-physics/abinit/Manifest b/sci-physics/abinit/Manifest
index 291920bf4..2ee9c036a 100644
--- a/sci-physics/abinit/Manifest
+++ b/sci-physics/abinit/Manifest
@@ -2,6 +2,8 @@ AUX 6.0.3-fftw.patch 571 RMD160 b15b2905fd46a1c0f6fcc99c317b1b52a327ef12 SHA1 b5
AUX 6.2.2-change-default-directories.patch 1006 RMD160 ba252ecc7f5592f4df762716582c6e331a5e994f SHA1 4d79a7a261211c44692c09e63197261bfdb2c06e SHA256 8865966dd0d94b00443faae62b58e9938a5ba5d15bc32b59f79f815922f91c44
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
EBUILD abinit-6.6.3.ebuild 6256 RMD160 88bf466811c42d04a57c1ddc6d3949d3ca6cdabf SHA1 3bdf27623990cb4e2131d333c6e5f690742e034a SHA256 fef385cfc374e619c12918ddcfe3c4c6e9e72eb297c1663e948eedfc2a6e675c
-MISC ChangeLog 2914 RMD160 35ec89514eb6b3ed9bc8b6140330d5f825bacacd SHA1 a61a1e71602c5a765a79d9ccb4e1c1356d5c7c9a SHA256 5de5705c57a3ee875a7f27d186ee21152d65d333a5a22842987b6065a0d34fcf
+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
diff --git a/sci-physics/abinit/abinit-6.8.1.ebuild b/sci-physics/abinit/abinit-6.8.1.ebuild
new file mode 100644
index 000000000..3799d0578
--- /dev/null
+++ b/sci-physics/abinit/abinit-6.8.1.ebuild
@@ -0,0 +1,196 @@
+# 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 +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
+ 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
+}
+
+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"
+ # Since now, fftw threads support is protected by black magick.
+ # Anybody removes it again, dies.
+ # If it does not work FOR YOU, disable the "threads" USE flag
+ # for the package at YOUR box. If YOU want it disabled selectively
+ # for fftw use in abinit, you may consider adding a special USE flag
+ # for that. NEVER REMOVE AN OPTION FOR OTHERS, at least if there is
+ # anybody it works for.
+ 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
+ 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
+}