1 |
commit: 726d5118d71546b6c8a190ad39b179ca39fdeced |
2 |
Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun May 1 15:13:35 2011 +0000 |
4 |
Commit: Christoph Junghans <kleiner_otti <AT> gmx <DOT> de> |
5 |
CommitDate: Sun May 1 15:13:35 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=726d5118 |
7 |
|
8 |
[sci-chemistry/gromacs] sync with tree |
9 |
|
10 |
(Portage version: 2.1.9.42/git/Linux i686, signed Manifest commit with key C2000586) |
11 |
|
12 |
--- |
13 |
sci-chemistry/gromacs/gromacs-4.5.9999.ebuild | 27 ++++++----------- |
14 |
sci-chemistry/gromacs/gromacs-9999.ebuild | 39 +++++++++++-------------- |
15 |
2 files changed, 26 insertions(+), 40 deletions(-) |
16 |
|
17 |
diff --git a/sci-chemistry/gromacs/gromacs-4.5.9999.ebuild b/sci-chemistry/gromacs/gromacs-4.5.9999.ebuild |
18 |
index 8d3c8f8..469f604 100644 |
19 |
--- a/sci-chemistry/gromacs/gromacs-4.5.9999.ebuild |
20 |
+++ b/sci-chemistry/gromacs/gromacs-4.5.9999.ebuild |
21 |
@@ -2,17 +2,16 @@ |
22 |
# Distributed under the terms of the GNU General Public License v2 |
23 |
# $Header: $ |
24 |
|
25 |
-EAPI="3" |
26 |
+EAPI="4" |
27 |
|
28 |
LIBTOOLIZE="true" |
29 |
TEST_PV="4.0.4" |
30 |
-MANUAL_PV="4.5.3" |
31 |
+MANUAL_PV="4.5.4" |
32 |
|
33 |
inherit autotools-utils bash-completion flag-o-matic multilib toolchain-funcs |
34 |
|
35 |
SRC_URI="test? ( ftp://ftp.gromacs.org/pub/tests/gmxtest-${TEST_PV}.tgz ) |
36 |
- doc? ( |
37 |
- http://www.gromacs.org/@api/deki/files/133/=manual-${MANUAL_PV}.pdf -> gromacs-manual-${MANUAL_PV}.pdf )" |
38 |
+ doc? ( ftp://ftp.gromacs.org/pub/manual/manual-${MANUAL_PV}.pdf -> gromacs-manual-${MANUAL_PV}.pdf )" |
39 |
|
40 |
if [ "${PV%9999}" != "${PV}" ]; then |
41 |
EGIT_REPO_URI="git://git.gromacs.org/gromacs" |
42 |
@@ -29,7 +28,8 @@ LICENSE="GPL-2" |
43 |
SLOT="0" |
44 |
KEYWORDS="~alpha ~amd64 ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" |
45 |
IUSE="X altivec blas dmalloc doc -double-precision +fftw fkernels +gsl lapack |
46 |
-mpi +single-precision sse sse2 static-libs test +threads +xml zsh-completion" |
47 |
+mpi +single-precision sse2 static-libs test +threads +xml zsh-completion" |
48 |
+REQUIRED_USE="fkernels? ( !threads )" |
49 |
|
50 |
CDEPEND=" |
51 |
X? ( |
52 |
@@ -51,10 +51,6 @@ RDEPEND="${CDEPEND} |
53 |
|
54 |
RESTRICT="test" |
55 |
|
56 |
-#gromacs has gnu exec stacks for speedup |
57 |
-QA_EXECSTACK="usr/lib/libgmx.so.* |
58 |
- usr/lib/libgmx_d.so.*" |
59 |
- |
60 |
src_prepare() { |
61 |
if use mpi && use threads; then |
62 |
elog "mdrun uses only threads OR mpi, and gromacs favours the" |
63 |
@@ -96,10 +92,8 @@ src_configure() { |
64 |
|
65 |
#note for gentoo-PREFIX on apple: use --enable-apple-64bit |
66 |
|
67 |
- #fortran will gone in gromacs 5.0 anyway |
68 |
#note for gentoo-PREFIX on aix, fortran (xlf) is still much faster |
69 |
if use fkernels; then |
70 |
- use threads && eerror "You cannot compile fortran kernel with threads" |
71 |
ewarn "Fortran kernels are usually not faster than C kernels and assembly" |
72 |
ewarn "I hope, you know what are you doing..." |
73 |
fi |
74 |
@@ -126,22 +120,19 @@ src_configure() { |
75 |
fi |
76 |
|
77 |
# if we need external blas or lapack |
78 |
- use blas && export LIBS+=" $(pkg-config blas cblas --libs)" |
79 |
+ use blas && export LIBS+=" $(pkg-config blas --libs)" |
80 |
use lapack && export LIBS+=" $(pkg-config lapack --libs)" |
81 |
local sseflag="x86-64-sse" |
82 |
use x86 && sseflag="ia32-sse" |
83 |
|
84 |
- #a bug in gromacs autotools |
85 |
- use sse && append-flags -msse |
86 |
+ #missing flag in autotools (bug #339837) |
87 |
use sse2 && append-flags -msse2 |
88 |
|
89 |
for x in ${GMX_DIRS}; do |
90 |
- local suffix="" sse="sse" |
91 |
+ local suffix="" |
92 |
#if we build single and double - double is suffixed |
93 |
use double-precision && use single-precision && \ |
94 |
[ "${x}" = "double" ] && suffix="_d" |
95 |
- #double uses sse2, single sse |
96 |
- [ "${x}" = "double" ] && sse="sse2" |
97 |
myeconfargs=( |
98 |
--bindir="${EPREFIX}"/usr/bin |
99 |
--docdir="${EPREFIX}"/usr/share/doc/"${PF}" |
100 |
@@ -162,7 +153,7 @@ src_configure() { |
101 |
--disable-power6 |
102 |
--disable-ia32-sse |
103 |
--disable-x86-64-sse |
104 |
- $(use_enable $sse $sseflag) |
105 |
+ $(use_enable sse2 $sseflag) |
106 |
) |
107 |
#disable ia32-sse and x86-64-sse and enable what we really need in last line |
108 |
|
109 |
|
110 |
diff --git a/sci-chemistry/gromacs/gromacs-9999.ebuild b/sci-chemistry/gromacs/gromacs-9999.ebuild |
111 |
index a2718f0..817444e 100644 |
112 |
--- a/sci-chemistry/gromacs/gromacs-9999.ebuild |
113 |
+++ b/sci-chemistry/gromacs/gromacs-9999.ebuild |
114 |
@@ -2,9 +2,8 @@ |
115 |
# Distributed under the terms of the GNU General Public License v2 |
116 |
# $Header: $ |
117 |
|
118 |
-EAPI="3" |
119 |
+EAPI="4" |
120 |
|
121 |
-LIBTOOLIZE="true" |
122 |
TEST_PV="4.0.4" |
123 |
|
124 |
EGIT_REPO_URI="git://git.gromacs.org/gromacs" |
125 |
@@ -20,9 +19,10 @@ LICENSE="GPL-2" |
126 |
SLOT="0" |
127 |
KEYWORDS="~alpha ~amd64 ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" |
128 |
IUSE="X altivec blas doc -double-precision +fftw fkernels gsl lapack |
129 |
-mpi +single-precision sse sse2 test +threads xml zsh-completion" |
130 |
+mpi +single-precision sse2 test +threads xml zsh-completion" |
131 |
+REQUIRED_USE="fkernels? ( !threads )" |
132 |
|
133 |
-DEPEND=" |
134 |
+CDEPEND=" |
135 |
X? ( |
136 |
x11-libs/libX11 |
137 |
x11-libs/libSM |
138 |
@@ -34,16 +34,14 @@ DEPEND=" |
139 |
lapack? ( virtual/lapack ) |
140 |
mpi? ( virtual/mpi ) |
141 |
xml? ( dev-libs/libxml2:2 )" |
142 |
-RDEPEND="${DEPEND} |
143 |
+DEPEND="${CDEPEND} |
144 |
+ dev-util/pkgconfig" |
145 |
+RDEPEND="${CDEPEND} |
146 |
app-shells/tcsh" |
147 |
PDEPEND="doc? ( app-doc/gromacs-manual )" |
148 |
|
149 |
RESTRICT="test" |
150 |
|
151 |
-#gromacs has gnu exec stacks for speedup |
152 |
-QA_EXECSTACK="usr/lib/libgmx.so.* |
153 |
- usr/lib/libgmx_d.so.*" |
154 |
- |
155 |
src_prepare() { |
156 |
#add user patches from /etc/portage/patches/sci-chemistry/gromacs |
157 |
epatch_user |
158 |
@@ -88,10 +86,8 @@ src_configure() { |
159 |
|
160 |
#note for gentoo-PREFIX on apple: use --enable-apple-64bit |
161 |
|
162 |
- #fortran will gone in gromacs 5.0 anyway |
163 |
#note for gentoo-PREFIX on aix, fortran (xlf) is still much faster |
164 |
if use fkernels; then |
165 |
- use threads && eerror "You cannot compile fortran kernel with threads" |
166 |
ewarn "Fortran kernels are usually not faster than C kernels and assembly" |
167 |
ewarn "I hope, you know what are you doing..." |
168 |
fi |
169 |
@@ -117,11 +113,12 @@ src_configure() { |
170 |
elog "libmd with and without mpi support." |
171 |
fi |
172 |
|
173 |
- #go from slowest to faster acceleration |
174 |
- local acce_pre="none" |
175 |
- use fkernels && acce_pre="fortran" |
176 |
- use altivec && acce_pre="altivec" |
177 |
- use ia64 && acce_pre="ia64" |
178 |
+ #go from slowest to fasterest acceleration |
179 |
+ local acce="none" |
180 |
+ use fkernels && acce="fortran" |
181 |
+ use altivec && acce="altivec" |
182 |
+ use ia64 && acce="ia64" |
183 |
+ use sse2 && acce="sse" |
184 |
|
185 |
mycmakeargs_pre+=( |
186 |
$(cmake-utils_use X GMX_X11) |
187 |
@@ -131,25 +128,23 @@ src_configure() { |
188 |
$(cmake-utils_use threads GMX_THREADS) |
189 |
$(cmake-utils_use xml GMX_XML) |
190 |
-DGMX_DEFAULT_SUFFIX=off |
191 |
+ -DGMX_ACCELERATION="$acce" |
192 |
) |
193 |
|
194 |
for x in ${GMX_DIRS}; do |
195 |
einfo "Configuring for ${x} precision" |
196 |
- local suffix="" acce="$acce_pre" |
197 |
+ local suffix="" |
198 |
#if we build single and double - double is suffixed |
199 |
use double-precision && use single-precision && \ |
200 |
[ "${x}" = "double" ] && suffix="_d" |
201 |
- #double uses sse2, single sse |
202 |
- [ "${x}" = "float" ] && use sse && acce="sse" |
203 |
- [ "${x}" = "double" ] && use sse2 && acce="sse" |
204 |
local p |
205 |
[ "${x}" = "double" ] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF" |
206 |
- mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=OFF -DGMX_ACCELERATION="$acce" |
207 |
+ mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=OFF |
208 |
-DGMX_BINARY_SUFFIX="${suffix}" -DGMX_LIBS_SUFFIX="${suffix}" ) |
209 |
CMAKE_BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure |
210 |
use mpi || continue |
211 |
einfo "Configuring for ${x} precision with mpi" |
212 |
- mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=ON -DGMX_ACCELERATION="$acce" |
213 |
+ mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=ON |
214 |
-DGMX_BINARY_SUFFIX="_mpi${suffix}" -DGMX_LIBS_SUFFIX="_mpi${suffix}" ) |
215 |
CMAKE_BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" cmake-utils_src_configure |
216 |
done |