--- /usr/portage/local/layman/dberkholz/sci-physics/abinit/abinit-5.7.3.ebuild 2009-04-11 11:51:08.000000000 +0000 +++ /usr/portage/local/abinit/sci-physics/abinit/abinit-5.7.3-r2.ebuild 2009-04-14 11:11:02.000000000 +0000 @@ -12,16 +12,18 @@ LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~ppc ~x86" -IUSE="mpi test" +IUSE="mpi test fox gsl fftw" RDEPEND="sci-libs/bigdft sci-libs/etsf_io sci-libs/libxc - sci-libs/fox + fox? ( sci-libs/fox ) sci-libs/netcdf sci-libs/wannier90 virtual/blas virtual/lapack + gsl? ( sci-libs/gsl ) + fftw? ( sci-libs/fftw:2.1 ) mpi? ( virtual/mpi )" DEPEND="${RDEPEND}" @@ -30,19 +32,25 @@ src_prepare() { epatch "${FILESDIR}"/5.3.4-change-default-directories.patch + epatch "${FILESDIR}"/5.7.3-fftw.patch eautoreconf } src_configure() { local libs="-L/usr/$(get_libdir)" local modules="-I/usr/$(get_libdir)/finclude" + local FoX_libs="-lFoX_dom -lFoX_sax -lFoX_wcml -lFoX_wxml -lFoX_common -lFoX_utils -lFoX_fsys" econf \ $(use_enable mpi) \ + $(use_enable fox) \ + $(use_enable gsl) \ + $(use_enable fftw) \ + $(use_enable fftw fftw-threads) \ --with-linalg-libs="${libs} -lblas -llapack" \ --with-netcdf-includes="-I/usr/include" \ --with-netcdf-libs="${libs} -lnetcdff" \ --with-fox-includes="${modules}" \ - --with-fox-libs="${libs} -lwcml" \ + --with-fox-libs="${libs} ${FoX_libs}" \ --with-etsf-io-includes="${modules}" \ --with-etsf-io-libs="${libs} -letsf_io -letsf_io_low_level -letsf_io_utils" \ --with-etsf-xc-includes="${modules}" \ @@ -55,6 +63,10 @@ --with-cc-optflags="${CFLAGS}" \ --with-fc-optflags="${FCFLAGS:- ${FFLAGS:- -O2}}" \ --with-fc-ld-optlibs='-lpthread' \ + --with-fftw-includes="-I/usr/include" \ + --with-fftw-libs="-L/usr/lib -lfftw_threads -ldfftw -lrt -lm" \ + --with-gsl-includes="$(pkg-config --cflags gsl)" \ + --with-gsl-libs="$(pkg-config --libs gsl)" \ FC="${FORTRANC}" \ CC="$(tc-getCC)" \ LD="$(tc-getLD)" @@ -78,21 +90,41 @@ 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 - elog "The full test results will be installed as summary_tests.tar.gz." + local testdir + find . -name ",,test*" -print | \ + while read testdir; do + if [ -e summary_tests.tar ]; then + tar rvf summary_tests.tar ${testdir} + else tar cvf summary_tests.tar ${testdir} + fi + done + + elog "The full test results will be installed as summary_tests.tar.bz2." + elog "Also a concise report tests_summary.txt is installed." } src_install() { - emake DESTDIR="${D}" install || die + emake DESTDIR="${D}" install || die "make install failed" if use test; then - dodoc tests/summary_tests.tar.gz || die + dodoc tests/tests_summary.txt || die "Copying tests summary failed" + dodoc tests/summary_tests.tar || die "Copying tests summary failed" fi - dodoc KNOWN_PROBLEMS README || die + 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 }