1 |
commit: 7bd36f7c9752fe04b58fdb1956bbcb3421711c22 |
2 |
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Feb 12 20:49:33 2012 +0000 |
4 |
Commit: Christoph Junghans <kleiner_otti <AT> gmx <DOT> de> |
5 |
CommitDate: Sun Feb 12 20:49:33 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=7bd36f7c |
7 |
|
8 |
sci-chemistry/gromacs: clean up |
9 |
|
10 |
(Portage version: 2.2.0_alpha86/git/Linux i686, unsigned Manifest commit) |
11 |
|
12 |
--- |
13 |
sci-chemistry/gromacs/ChangeLog | 3 + |
14 |
sci-chemistry/gromacs/gromacs-4.6.9999.ebuild | 52 +++--------------------- |
15 |
2 files changed, 10 insertions(+), 45 deletions(-) |
16 |
|
17 |
diff --git a/sci-chemistry/gromacs/ChangeLog b/sci-chemistry/gromacs/ChangeLog |
18 |
index 77af425..c508a38 100644 |
19 |
--- a/sci-chemistry/gromacs/ChangeLog |
20 |
+++ b/sci-chemistry/gromacs/ChangeLog |
21 |
@@ -3,6 +3,9 @@ |
22 |
# $Header: $ |
23 |
|
24 |
12 Feb 2012; Christoph Junghans <ottxor@g.o> gromacs-4.6.9999.ebuild: |
25 |
+ sci-chemistry/gromacs: clean up |
26 |
+ |
27 |
+ 12 Feb 2012; Christoph Junghans <ottxor@g.o> gromacs-4.6.9999.ebuild: |
28 |
fixed threads and mpi |
29 |
|
30 |
05 Feb 2012; Christoph Junghans <ottxor@g.o> gromacs-4.6.9999.ebuild: |
31 |
|
32 |
diff --git a/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild b/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild |
33 |
index 0bd4bf3..9ecb639 100644 |
34 |
--- a/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild |
35 |
+++ b/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild |
36 |
@@ -53,6 +53,10 @@ RDEPEND="${CDEPEND} |
37 |
|
38 |
RESTRICT="test" |
39 |
|
40 |
+pkg_pretend() { |
41 |
+ [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs" |
42 |
+} |
43 |
+ |
44 |
pkg_setup() { |
45 |
use fkernels && fortran-2_pkg_setup |
46 |
} |
47 |
@@ -61,13 +65,6 @@ src_prepare() { |
48 |
#add user patches from /etc/portage/patches/sci-chemistry/gromacs |
49 |
epatch_user |
50 |
|
51 |
- if use mpi && use threads; then |
52 |
- elog "mdrun uses only threads OR mpi, and gromacs favours the" |
53 |
- elog "use of mpi over threads, so a mpi-version of mdrun will" |
54 |
- elog "be compiled. If you want to run mdrun on shared memory" |
55 |
- elog "machines only, you can safely disable mpi" |
56 |
- fi |
57 |
- |
58 |
GMX_DIRS="" |
59 |
use single-precision && GMX_DIRS+=" float" |
60 |
use double-precision && GMX_DIRS+=" double" |
61 |
@@ -83,21 +80,6 @@ src_prepare() { |
62 |
|
63 |
src_configure() { |
64 |
local mycmakeargs_pre=( ) |
65 |
- #from gromacs configure |
66 |
- if use fftw; then |
67 |
- mycmakeargs_pre+=("-DGMX_FFT_LIBRARY=fftw3") |
68 |
- else |
69 |
- mycmakeargs_pre+=("-DGMX_FFT_LIBRARY=fftpack") |
70 |
- ewarn "WARNING: The built-in FFTPACK routines are slow." |
71 |
- ewarn "Are you sure you don\'t want to use FFTW?" |
72 |
- ewarn "It is free and much faster..." |
73 |
- fi |
74 |
- |
75 |
- if [[ $(gcc-version) == "4.1" ]]; then |
76 |
- eerror "gcc 4.1 is not supported by gromacs" |
77 |
- eerror "please run test suite" |
78 |
- die |
79 |
- fi |
80 |
|
81 |
#note for gentoo-PREFIX on apple: use --enable-apple-64bit |
82 |
|
83 |
@@ -107,27 +89,6 @@ src_configure() { |
84 |
ewarn "I hope, you know what are you doing..." |
85 |
fi |
86 |
|
87 |
- if use double-precision ; then |
88 |
- #from gromacs manual |
89 |
- elog |
90 |
- elog "For most simulations single precision is accurate enough. In some" |
91 |
- elog "cases double precision is required to get reasonable results:" |
92 |
- elog |
93 |
- elog "-normal mode analysis, for the conjugate gradient or l-bfgs minimization" |
94 |
- elog " and the calculation and diagonalization of the Hessian " |
95 |
- elog "-calculation of the constraint force between two large groups of atoms" |
96 |
- elog "-energy conservation: this can only be done without temperature coupling and" |
97 |
- elog " without cutoffs" |
98 |
- elog |
99 |
- fi |
100 |
- |
101 |
- if use mpi ; then |
102 |
- elog "You have enabled mpi, only mdrun will make use of mpi, that is why" |
103 |
- elog "we configure/compile gromacs twice (with and without mpi) and only" |
104 |
- elog "install mdrun with mpi support. In addtion you will get libgmx and" |
105 |
- elog "libmd with and without mpi support." |
106 |
- fi |
107 |
- |
108 |
#go from slowest to fasterest acceleration |
109 |
local acce="none" |
110 |
use fkernels && acce="fortran" |
111 |
@@ -136,11 +97,11 @@ src_configure() { |
112 |
use sse2 && acce="sse" |
113 |
|
114 |
mycmakeargs_pre+=( |
115 |
+ -DGMX_FFT_LIBRARY=$(usex fftw fftw3 fftwpack) |
116 |
$(cmake-utils_use X GMX_X11) |
117 |
$(cmake-utils_use blas GMX_EXTERNAL_BLAS) |
118 |
$(cmake-utils_use gsl GMX_GSL) |
119 |
$(cmake-utils_use lapack GMX_EXTERNAL_LAPACK) |
120 |
- $(cmake-utils_use threads GMX_THREAD_MPI) |
121 |
$(cmake-utils_use openmp GMX_OPENMP) |
122 |
$(cmake-utils_use xml GMX_XML) |
123 |
-DGMX_DEFAULT_SUFFIX=off |
124 |
@@ -158,11 +119,12 @@ src_configure() { |
125 |
local p |
126 |
[[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF" |
127 |
mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=OFF |
128 |
+ $(cmake-utils_use threads GMX_THREAD_MPI) |
129 |
-DGMX_BINARY_SUFFIX="${suffix}" -DGMX_LIBS_SUFFIX="${suffix}" ) |
130 |
CMAKE_BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure |
131 |
use mpi || continue |
132 |
einfo "Configuring for ${x} precision with mpi" |
133 |
- mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=ON |
134 |
+ mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_THREAD_MPI=OFF -DGMX_MPI=ON |
135 |
-DGMX_BINARY_SUFFIX="_mpi${suffix}" -DGMX_LIBS_SUFFIX="_mpi${suffix}" ) |
136 |
CMAKE_BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure |
137 |
done |