aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/bigdft')
-rw-r--r--sci-libs/bigdft/ChangeLog11
-rw-r--r--sci-libs/bigdft/Manifest1
-rw-r--r--sci-libs/bigdft/bigdft-1.7_pre12.ebuild142
-rw-r--r--sci-libs/bigdft/files/bigdft-1.7-dev.12-libxc_dir_include.patch50
-rw-r--r--sci-libs/bigdft/files/bigdft-1.7-dev.12-nolib_mods.patch25
-rw-r--r--sci-libs/bigdft/files/bigdft-1.7-dev.12-tests.tar.bz2bin0 -> 22103 bytes
6 files changed, 228 insertions, 1 deletions
diff --git a/sci-libs/bigdft/ChangeLog b/sci-libs/bigdft/ChangeLog
index 1f24f098c..82de595f0 100644
--- a/sci-libs/bigdft/ChangeLog
+++ b/sci-libs/bigdft/ChangeLog
@@ -1,9 +1,18 @@
# ChangeLog for sci-libs/bigdft
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
<<<<<<< HEAD
+*bigdft-1.7_pre12 (17 Jan 2013)
+
+ 17 Jan 2013; Honza Macháček <Hloupy.Honza@centrum.cz>
+ +bigdft-1.7_pre12.ebuild, +files/bigdft-1.7-dev.12-libxc_dir_include.patch,
+ +files/bigdft-1.7-dev.12-nolib_mods.patch,
+ +files/bigdft-1.7-dev.12-tests.tar.bz2:
+ New version 1.7-dev.12 (1.7_pre12) from the Abinit site added; used by
+ sci-physics/abinit-7.0.4 but apparently segfaults it.
+
*bigdft-1.6_pre1-r4 (01 Sep 2012)
01 Sep 2012; Honza Macháček <Hloupy.Honza@centrum.cz>
diff --git a/sci-libs/bigdft/Manifest b/sci-libs/bigdft/Manifest
index 5f1f645ce..39acfb0cf 100644
--- a/sci-libs/bigdft/Manifest
+++ b/sci-libs/bigdft/Manifest
@@ -1,2 +1,3 @@
DIST bigdft-1.6-tuto.1.tar.gz 7510733 SHA256 32020c7e58b36fe1f58a47ef02af99bd0da81c6da7d6f15e89b8075494d39d87 SHA512 48684413b0807b5dcee4b97b5b83d9a839c44043801b923c5f0ce7c8a92024cfee64c1065d4d2ffc67cb249cfcd485680b5526aaaedba06e6a88ccc52ba290f2 WHIRLPOOL d6efcc6f9ded331c42e8e3b13a9260e2acd922c4fa0bf303455e33924a930df6aa01abec897c1d190d5016a5bb3781c491e8a17d500e5485717989bddd4f579d
DIST bigdft-1.6.0.tar.gz 8876759 SHA256 2d3212ef5f1ebc10fe7c627397ac6282ad41e1433ec6e66905f9d39a302913c0 SHA512 facbb78d126885dd04fed6451aa9cd1f5c755055e146cda1d2d4e90e3310fc3066b661635477db96d5b143ffaaa3ebb01107681437fd9965f3c764cf1b034361 WHIRLPOOL 97bc6c28296a92b09139e3a65266daa583011620fad5aed208e0e48627ab1d9c0ef9993d6c4c3cce5696d5c707bcdfb4b8ca7e64379909b3cf073206e32f9572
+DIST bigdft-1.7-dev.12.tar.gz 8904633 SHA256 2f899f287dd508dc616fb798cc9d01d1c79951dc68c277fb0ce19ea0ad690332 SHA512 35efe93edd7e6fb08abe919c59913c173f23e17a50104ad92e510dba5ba35ba8117012249d620896affc8acc05c9d85c6c61a411bc903750db6593456e9e8142 WHIRLPOOL 94a8d6d25fe82f3f1b89d15b4e23293d018bfb66c96fd1061a09e6352fb6811e79a15161bd3ca92e5f544253c8fa9f919d41fe069635ac07f33e21cc70878719
diff --git a/sci-libs/bigdft/bigdft-1.7_pre12.ebuild b/sci-libs/bigdft/bigdft-1.7_pre12.ebuild
new file mode 100644
index 000000000..de32f986b
--- /dev/null
+++ b/sci-libs/bigdft/bigdft-1.7_pre12.ebuild
@@ -0,0 +1,142 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+
+inherit autotools-utils eutils flag-o-matic fortran-2 toolchain-funcs
+
+REAL_P="${P/_pre/-dev.}"
+
+DESCRIPTION="A DFT electronic structure code using a wavelet basis set"
+HOMEPAGE="http://inac.cea.fr/L_Sim/BigDFT/"
+SRC_URI="http://forge.abinit.org/fallbacks/${REAL_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux"
+IUSE="cuda doc etsf_io mpi netcdf openmp opencl test"
+
+RDEPEND="
+ =sci-libs/libxc-1*[fortran]
+ virtual/blas
+ virtual/fortran
+ virtual/lapack
+ dev-libs/libyaml
+ mpi? ( virtual/mpi )
+ cuda? ( dev-util/nvidia-cuda-sdk )
+ opencl? (
+ || (
+ dev-util/nvidia-cuda-sdk
+ dev-util/amdstream
+ )
+ )
+ etsf_io? ( sci-libs/etsf_io )
+ netcdf? ( || (
+ sci-libs/netcdf[fortran]
+ sci-libs/netcdf-fortran
+ )
+ )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig
+ >=sys-devel/autoconf-2.59
+ doc? ( virtual/latex-base )
+ app-arch/tar
+ app-arch/bzip2"
+
+S="${WORKDIR}/${REAL_P}"
+
+DOCS=( README INSTALL ChangeLog AUTHORS NEWS )
+
+FORTRAN_STANDARD=90
+
+pkg_setup() {
+ # fortran-2.eclass does not handle mpi wrappers
+ if use mpi; then
+ export FC="mpif90"
+ export F77="mpif77"
+ export CC="mpicc"
+ else
+ tc-export FC F77 CC
+ fi
+
+ fortran-2_pkg_setup
+ if use openmp; then
+ tc-has-openmp || \
+ die "Please select an openmp capable compiler like gcc[openmp]"
+ fi
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/"${REAL_P}"-libxc_dir_include.patch \
+ "${FILESDIR}"/"${REAL_P}"-nolib_mods.patch
+ tar -xjf "${FILESDIR}"/"${REAL_P}"-tests.tar.bz2 -C "${S}"/tests/DFT/postSCF/
+ eautoreconf
+}
+
+src_configure() {
+ local openmp=""
+ use openmp && openmp="-fopenmp"
+ local modules="${EPREFIX}/usr/$(get_libdir)/finclude"
+ local netcdff_libs="-lnetcdff"
+ filter-flags '-m*' '-O*' "-pipe"
+ local nvcflags="${CFLAGS}"
+ _filter-var nvcflags '-m*' '-O*' "-pipe"
+ local myeconfargs=(
+ $(use_enable mpi)
+ --enable-optimised-convolution
+ --enable-pseudo
+ --enable-libbigdft
+ --enable-binaries
+ --disable-minima-hopping
+ --disable-internal-libyaml
+ --enable-internal-libabinit
+ --with-moduledir="${modules}"
+ --with-ext-linalg="$(pkg-config --libs-only-l lapack) \
+ $(pkg-config --libs-only-l blas)"
+ --with-ext-linalg-path="$(pkg-config --libs-only-L lapack) \
+ $(pkg-config --libs-only-L blas)"
+ --enable-libxc
+ --disable-internal-libxc
+ --with-libxc-include="${modules}"
+ $(use_enable cuda cuda-gpu)
+ $(use_with cuda cuda-path /opt/cuda)
+ $(use_with cuda nvcc-flags "${nvcflags}")
+ $(use_enable opencl)
+ $(use_with etsf_io etsf-io)
+ "$(use etsf_io && echo "--with-netcdf-libs=$(pkg-config --libs netcdf) ${netcdff_libs}")"
+ FCFLAGS="${FCFLAGS:- ${FFLAGS:- -O2}} ${openmp} -I${modules}"
+ LD="$(tc-getLD)"
+ CPP="$(tc-getCPP)"
+ )
+ autotools-utils_src_configure
+}
+
+src_compile() {
+ #autotools-utils_src_compile() expanded
+ _check_build_dir
+ pushd "${AUTOTOOLS_BUILD_DIR}" > /dev/null
+ emake -j1
+ sed -i -e's%\$(top_builddir)/[^ ]*/lib\([^ /$-]*\)\.a%-l\1%g' bigdft.pc
+ popd > /dev/null
+
+ #autotools-utils_src_compile
+ use doc && autotools-utils_src_compile doc
+}
+
+src_test() {
+ if use test; then
+ #autotools-utils_src_test() expanded
+ _check_build_dir
+ pushd "${BUILD_DIR}" > /dev/null || die
+ # Run default src_test as defined in ebuild.sh
+ cd tests
+ emake -j1 check
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install HAVE_LIBXC=1
+}
diff --git a/sci-libs/bigdft/files/bigdft-1.7-dev.12-libxc_dir_include.patch b/sci-libs/bigdft/files/bigdft-1.7-dev.12-libxc_dir_include.patch
new file mode 100644
index 000000000..9084d08e5
--- /dev/null
+++ b/sci-libs/bigdft/files/bigdft-1.7-dev.12-libxc_dir_include.patch
@@ -0,0 +1,50 @@
+--- configure.ac.orig 2011-11-23 14:02:15.000000000 +0000
++++ configure.ac 2011-11-23 14:09:19.000000000 +0000
+@@ -743,14 +743,17 @@
+ ac_build_libxc="no"
+ AC_ARG_ENABLE(libxc, AS_HELP_STRING([--without-libxc], [Do not link with libXC library (default = yes).]), ac_use_libxc=$enableval, ac_use_libxc="yes")
+ AC_ARG_ENABLE(internal-libxc, AS_HELP_STRING([--disable-internal-libxc], [Do not build and link with internal libXC library (default = yes).]), ac_internal_libxc=$enableval, ac_internal_libxc="yes")
+-AC_ARG_WITH(libxc-path, AS_HELP_STRING([--with-libxc-path], [Give the path for an external libXC library, lib and module files (default = None).]),
++AC_ARG_WITH(libxc-path, AS_HELP_STRING([--with-libxc-path], [Give the path for an external libXC library, lib files (default = None).]),
+ ac_libxc_dir=$withval, ac_libxc_dir=)
++AC_ARG_WITH(libxc-include, AS_HELP_STRING([--with-libxc-include], [Give the path for an external libXC library module files (default = None).]),
++ ac_libxc_dir_include=$withval, ac_libxc_dir_include=)
+ if test x"$ac_use_libxc" = x"yes" ; then
+ ac_build_libxc=$ac_internal_libxc
+ if test "$ac_internal_libxc" = "yes" ; then
+ ac_build_libxc="yes"
+ ac_use_libxc="yes"
+ ac_libxc_dir="$top_builddir"/libxc-1.1.0/src
++ ac_libxc_dir_include="$ac_libxc_dir"/include
+ AC_SUBST(LIBXC_DIR, "\$(top_builddir)"/libxc-1.1.0/src)
+ AC_SUBST(LIBXC_INCLUDE, "-I\$(top_builddir)"/libxc-1.1.0/src)
+ LDFLAGS="$LDFLAGS -L\$(top_builddir)/libxc-1.1.0/src/.libs"
+@@ -758,6 +761,9 @@
+ else
+ if test -n "$ac_libxc_dir" ; then
+ LDFLAGS="$LDFLAGS -L$ac_libxc_dir/lib"
++ if test x"$ac_libxc_dir_include" = x ; then
++ ac_libxc_dir_include="$ac_libxc_dir"/include
++ fi
+
+ dnl Test the given implementation of libXC.
+ ac_libxc_libname="xc"
+@@ -766,13 +772,13 @@
+ ac_libxc_libname="dft_xc"
+ AC_CHECK_LIB($ac_libxc_libname, xc_f90_lda_vxc, withlibxc=yes, withlibxc=no)
+ fi
+- AC_CHECK_FILE($ac_libxc_dir/include/libxc_funcs_m.$ax_fc_mod_ext, funcs="yes", funcs="no")
+- AC_CHECK_FILE($ac_libxc_dir/include/xc_f90_lib_m.$ax_fc_mod_ext, lib="yes", lib="no")
+- AC_CHECK_FILE($ac_libxc_dir/include/xc_f90_types_m.$ax_fc_mod_ext, types="yes", types="no")
++ AC_CHECK_FILE($ac_libxc_dir_include/libxc_funcs_m.$ax_fc_mod_ext, funcs="yes", funcs="no")
++ AC_CHECK_FILE($ac_libxc_dir_include/xc_f90_lib_m.$ax_fc_mod_ext, lib="yes", lib="no")
++ AC_CHECK_FILE($ac_libxc_dir_include/xc_f90_types_m.$ax_fc_mod_ext, types="yes", types="no")
+ if test "$withlibxc" = "yes" -a "$funcs" = "yes" -a "$lib" = "yes" -a "$types" = "yes"; then
+ ac_use_libxc="yes"
+- AC_SUBST(LIBXC_DIR, $ac_libxc_dir/include)
+- AC_SUBST(LIBXC_INCLUDE, "-I"$ac_libxc_dir/include)
++ AC_SUBST(LIBXC_DIR, $ac_libxc_dir_include)
++ AC_SUBST(LIBXC_INCLUDE, "-I"$ac_libxc_dir_include)
+ LIBXC_LIBS="-l"$ac_libxc_libname
+ fi
+ else
diff --git a/sci-libs/bigdft/files/bigdft-1.7-dev.12-nolib_mods.patch b/sci-libs/bigdft/files/bigdft-1.7-dev.12-nolib_mods.patch
new file mode 100644
index 000000000..8137a48ab
--- /dev/null
+++ b/sci-libs/bigdft/files/bigdft-1.7-dev.12-nolib_mods.patch
@@ -0,0 +1,25 @@
+diff -Naurp bigdft-1.7-dev.12.orig/src/Makefile.am bigdft-1.7-dev.12/src/Makefile.am
+--- bigdft-1.7-dev.12.orig/src/Makefile.am 2012-07-16 07:46:11.000000000 +0000
++++ bigdft-1.7-dev.12/src/Makefile.am 2013-01-09 14:09:58.198905489 +0000
+@@ -45,6 +45,9 @@ EXTRA_DIST = \
+ # -------------
+ if BUILD_LIB_BIGDFT
+ lib_bigdft = libbigdft.a libdft_common.a
++else
++lib_bigdft =
++endif
+ PS_SOURCES = PSolver/Build_Kernel.f90 \
+ PSolver/xcenergy.f90 \
+ PSolver/3Dgradient.f90 \
+@@ -53,11 +56,6 @@ PS_SOURCES = PSolver/Build_Kernel.f90 \
+ PSolver/wofz.f90 \
+ lib/fft/fft3d.f90
+ PS_MODULES = PSolver/Poisson_Solver.f90
+-else
+-lib_bigdft =
+-PS_SOURCES =
+-PS_MODULES =
+-endif
+ if BUILD_BINARIES
+ binaries_sources = bigdft memguess splsad NEB frequencies MDanalysis $(minima_hopping_sources) bart abscalc BigDFT2Wannier WaCo
+ local_binaries = test_forces
diff --git a/sci-libs/bigdft/files/bigdft-1.7-dev.12-tests.tar.bz2 b/sci-libs/bigdft/files/bigdft-1.7-dev.12-tests.tar.bz2
new file mode 100644
index 000000000..d74c56176
--- /dev/null
+++ b/sci-libs/bigdft/files/bigdft-1.7-dev.12-tests.tar.bz2
Binary files differ