Gentoo Archives: gentoo-commits

From: Alexey Shvetsov <alexxy@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/
Date: Mon, 11 Jul 2016 18:38:05
Message-Id: 1468262153.3b2013b913db53e99b3599ce383153ad8604ddf6.alexxy@gentoo
1 commit: 3b2013b913db53e99b3599ce383153ad8604ddf6
2 Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jul 11 18:35:53 2016 +0000
4 Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
5 CommitDate: Mon Jul 11 18:35:53 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b2013b9
7
8 sci-chemistry/gromacs: Clean up old version
9
10 Package-Manager: portage-2.3.0
11
12 sci-chemistry/gromacs/Manifest | 8 -
13 sci-chemistry/gromacs/gromacs-5.0.4-r1.ebuild | 284 --------------------------
14 sci-chemistry/gromacs/gromacs-5.0.5.ebuild | 284 --------------------------
15 sci-chemistry/gromacs/gromacs-5.0.6.ebuild | 284 --------------------------
16 sci-chemistry/gromacs/gromacs-5.1.1.ebuild | 269 ------------------------
17 sci-chemistry/gromacs/gromacs-5.1.ebuild | 269 ------------------------
18 6 files changed, 1398 deletions(-)
19
20 diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
21 index 350f1c8..ae53fba 100644
22 --- a/sci-chemistry/gromacs/Manifest
23 +++ b/sci-chemistry/gromacs/Manifest
24 @@ -1,14 +1,6 @@
25 DIST gromacs-5.0.4.tar.gz 26342095 SHA256 78068eeccc0b950018ddb45c41280e53c8bedae4639dca48e17c940f8896b23b SHA512 bc62b623bf71dcaa948aaf7563a3d3afa973da0702062848a20323db202e862dcee413197dacd1472866ccb40fce7709e283177b1c6c49514064f23e6c46b5ee WHIRLPOOL d8458d3d563e015e830622ae0c924e896765a6329ffe4cb1a31c7aef3c804f392d29e3f1db5617051e85058403422f7d69a160a6c7cc810564696d88f9d50bd4
26 -DIST gromacs-5.0.5.tar.gz 26343524 SHA256 952c9d14879a12d03362b2233e47c51385dc99325bdde5223a2942938739bf4e SHA512 b45b2da5de48b0aa272b6d8583fd717762512fbd291ac35b414d23c430bf7b6db470f64e641728658e94784de9ddcde04242cfba09ff47931e01b85b8ca8fd73 WHIRLPOOL cc1f5f60d70780f8694acb16c96634d2aa8a16ff3d52be5ed4572dd37f80d9591f8060a0256f3e0f4a55069247398b8b52ad05efed691a0ab8619bc77aa64f76
27 -DIST gromacs-5.0.6.tar.gz 26351063 SHA256 e07e950c4cd6cb84b83b145b70a15c25338ad6a7d7d1a0a83cdbd51cad954952 SHA512 5bd11d2ab79cc94c1ecf10bb05c239f7a4aed426ba3da0e536076e5145ff854889f9f0808d87a8ce007d86fce8eff9b6a809ae5fb68478528ea405c335dbffb2 WHIRLPOOL e5898fa247016a4c52e7ddc77ba03f0d39df2b863607a79f4b88f7029a2467e22cd84a507c18b52b4015619341699bbede28939be485613ac145b499a7d0998d
28 DIST gromacs-5.0.7.tar.gz 26358119 SHA256 23bc5ae28e0e274965966f0a00e44ec6ffbc28c5cd2d6b64a0aa0a2bc59472ec SHA512 612dba608fe6fd3a6fd69d1edeb97ec2975361ab44ea5219990901cecafbbe542a2c8bc6acc3f89b7fdcda77ab1b0762977ddc48cc1523155f7033e4e000660f WHIRLPOOL 26292f8751c2238f4fd9a63cb64888c2d236237dc140f08b45997b87b917b096d3d7c8451e5e0633e71cd770d7e7336dbbd3056777e290d0232a902ee4018e4b
29 -DIST gromacs-5.1.1.tar.gz 26551710 SHA256 9316fd0be320e2dd8c048f905df5be115e1b230c4ca4f3a7ef5892a1fc0bc212 SHA512 52404b4134cfbc867553a6b3f968500e3fc85b103abef6a7de9d0a9bf53c12ad1b908c35f9eed9376965db4a250c87cffe44d8c67247512c04ee84e7d1e07074 WHIRLPOOL 7a82e2cf6a73d4083ed4f1105dee4e392eaeb7e60e97a054a15e6a505e8a124d396005912b6c40acda53608cdd19ef2422c37b182733b4fe412e74defd7489b2
30 DIST gromacs-5.1.2.tar.gz 26562718 SHA256 39d6f1d7ae8ba38cea6089da40676bfa4049a49903d21551abc030992a58f304 SHA512 ddd29bba97eaf8c32f7f5daa441c1aac85222881a9cf7757f55ef7f1a15f8f45cdc600eb90059053205d71652281c85601e107ff5928425afdb0c13e8ef1de69 WHIRLPOOL 12f217e480bd04cd0cfb68c22345cfe2cd77f9417f0f873ff61aeea734aa33d61810db4e1539cd265f1ffcf2df123353592c6176aa8dce236b64de74a97a76e0
31 -DIST gromacs-5.1.tar.gz 26546875 SHA256 996b6061971e11942252de36b67b5cf35f02ce14adf80db8a3f079fc686c2743 SHA512 9655bd387773fa3ab0b7316854552a63945255ef02c5d9d1f98b32213b6642532b6bed88b06354d46d0ed235d6dc39e57a987a6585fb463e5aba80f366268301 WHIRLPOOL e5b4e90897c82a016911291f14daef41aa846143eae1cf5e6b9d552afe9ecbd3663d7df6350f5edd4778fa3a479c18b22efcabd9d49e1f4c304a3d39e35eaac4
32 DIST regressiontests-5.0.4.tar.gz 65193251 SHA256 89ad9bc067035ac8f340319b538c446983d937b910067e871911d7afe2ecb3f0 SHA512 747725fa28c1c9525596bdeeb8809e45268e19036c11dac67d043aa1c51748688ca37eb6014eb7e819eb927a8b9ca2631d0ace4cdff8ed491b08c316c530ab65 WHIRLPOOL e15ccab0a0beefac41aeff11e2e596e971167f1590eed159ff82c4a8e3aec1d234287be597026951904ecfe6099f30ef3bcd48f2098b9f5201bde62e15fbc4f9
33 -DIST regressiontests-5.0.5.tar.gz 65204335 SHA256 e48b9934de89c23a63c9adc8ba9a5aa397cf5a4d1746165d833c556d5ce54833 SHA512 1a1d1a3398ba5d3cc9f68e0f401437ccbdf3265f3ea1100b3b0d314d61ccd467ce3e8492ee09a645c5aaf9c1ca0acdf5ed6213a61bbd689833f3ca002bd5c79b WHIRLPOOL 882c9d8fa45720a5a71811db898aa33b9323bfe60340e8c4f4e2ef537f02efb531c0f3a721ead0e98bdb96f1e9d71df24d1d0faae448ab3da096c694e2a9b593
34 -DIST regressiontests-5.0.6.tar.gz 65203643 SHA256 fd0a2408250dfc088ac9b401bc8702b8ba398a81db56c214d55f68f838d7c079 SHA512 dec41fbaa93784fb6438887eeef9f523add06032ae9801b83c492f5924872cd9b6a17e07d61cd7d8f999193d46384112e4c8046f4b2a3c28eb0c08f11c1ad8c6 WHIRLPOOL e6a8e99abc3b59be0f246769de0ebdef528caa24b930999dfbe0167a58696a68a31d0b819d2503e312977f0ec4d1ee2acb60e8eb691fab45e608250f2dfde728
35 DIST regressiontests-5.0.7.tar.gz 65204051 SHA256 831c5f52b941826842a5312e3c6cd74a6410938bc5876d3f32d53215d64fb084 SHA512 2e93c84f62772eaf6facd45db67f51f751b4fa80923c71bc4fb293b33361b1314d714020bd8d50a1d0859aeedd67ce76f593e82ef31372128cbb8555eb6446b1 WHIRLPOOL b050f80946a76e752d53ccadd378ec0869f3221706a29f87d262a46fb11941b600d27b5388a5311a4fde53d60560f907150f884212e2d49a3df4b2519d1ceb3e
36 -DIST regressiontests-5.1.1.tar.gz 66711961 SHA256 2d51c57c6d584c4a6637b4b546eaf4b1f1713df10fe694544a82cc208a88cd78 SHA512 df865f0c900d52463cecc5482fee1c76d0c6a7f2dcb6ec657e03d1acf5ef8c60292781e6bbd43b9ebf2aab5a91782f474cef122ef118043c47eb3579656f75a6 WHIRLPOOL dd0b16ffdbd2e6eab141d327ed8922b3f038c80d414823c8d9f2e5e52cb5b820b177ec9f7a07dd794a29371eaa287a602bbd1bde9c9e895abd30c8da14f14226
37 DIST regressiontests-5.1.2.tar.gz 66704132 SHA256 3e4704308da282e2e8e2550f6acae029353bf42ede4b1eccb20b157e399f3cf7 SHA512 b53fb36d5ce00361998ca9eb2121efc0d616e628ad81bf08c7fdc2cc43929cbc2e528cdd8260036235960ad96363b496aadd345d55fc100cdf02d680b2cca996 WHIRLPOOL 0859db2e0e51d56752f17d6021c2e5f6a6b820236aff731dd18335b3bde94899985c96bbe98f62c9144d8ff88fcc7e6f3091cf78618d7734345cfe71f0f6a026
38 -DIST regressiontests-5.1.tar.gz 66707378 SHA256 c2d751a503d5e19962198f565edb29ea2aa67f863dce02e93b82b08a02487eca SHA512 1896f967362a1a3ae1ff13b405f4633754f97ad366c01b4b3b52368a01dae70e3b71cb171bba05c7d566fe8c3c4fcf8ce6538a6ff130143606fa2302b2e714c3 WHIRLPOOL 95b77a324a26ddc97f215ab7abc60a4d72f4fe39eaa43d14431d42d70875de71bcc9a8af90cceb4deaacead7c98e744b5200f867fb3c14bd6f2c1ff725825b8b
39
40 diff --git a/sci-chemistry/gromacs/gromacs-5.0.4-r1.ebuild b/sci-chemistry/gromacs/gromacs-5.0.4-r1.ebuild
41 deleted file mode 100644
42 index b5d7896..0000000
43 --- a/sci-chemistry/gromacs/gromacs-5.0.4-r1.ebuild
44 +++ /dev/null
45 @@ -1,284 +0,0 @@
46 -# Copyright 1999-2015 Gentoo Foundation
47 -# Distributed under the terms of the GNU General Public License v2
48 -# $Id$
49 -
50 -EAPI=5
51 -
52 -CMAKE_MAKEFILE_GENERATOR="ninja"
53 -
54 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo toolchain-funcs
55 -
56 -if [[ $PV = *9999* ]]; then
57 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
58 - https://gerrit.gromacs.org/gromacs.git
59 - git://github.com/gromacs/gromacs.git
60 - http://repo.or.cz/r/gromacs.git"
61 - EGIT_BRANCH="release-5-0"
62 - inherit git-r3
63 - KEYWORDS=""
64 -else
65 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
66 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
67 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
68 -fi
69 -
70 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
71 -
72 -DESCRIPTION="The ultimate molecular dynamics simulation package"
73 -HOMEPAGE="http://www.gromacs.org/"
74 -
75 -# see COPYING for details
76 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
77 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
78 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
79 -SLOT="0/${PV}"
80 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack +make-symlinks mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
81 -
82 -CDEPEND="
83 - X? (
84 - x11-libs/libX11
85 - x11-libs/libSM
86 - x11-libs/libICE
87 - )
88 - blas? ( virtual/blas )
89 - boost? ( >=dev-libs/boost-1.55 )
90 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
91 - fftw? ( sci-libs/fftw:3.0 )
92 - lapack? ( virtual/lapack )
93 - mkl? ( sci-libs/mkl )
94 - mpi? ( virtual/mpi )
95 - "
96 -DEPEND="${CDEPEND}
97 - virtual/pkgconfig
98 - doc? (
99 - app-doc/doxygen
100 - dev-texlive/texlive-latex
101 - dev-texlive/texlive-latexextra
102 - media-gfx/imagemagick
103 - )"
104 -RDEPEND="${CDEPEND}"
105 -
106 -REQUIRED_USE="
107 - || ( single-precision double-precision )
108 - cuda? ( single-precision )
109 - mkl? ( !blas !fftw !lapack )"
110 -
111 -DOCS=( AUTHORS README )
112 -
113 -if [[ ${PV} != *9999 ]]; then
114 - S="${WORKDIR}/${PN}-${PV/_/-}"
115 -fi
116 -
117 -pkg_pretend() {
118 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
119 - use openmp && ! tc-has-openmp && \
120 - die "Please switch to an openmp compatible compiler"
121 -}
122 -
123 -src_unpack() {
124 - if [[ ${PV} != *9999 ]]; then
125 - default
126 - else
127 - git-r3_src_unpack
128 - if use test; then
129 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
130 - EGIT_BRANCH="master" EGIT_COMMIT="master" \
131 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
132 - git-r3_src_unpack
133 - fi
134 - fi
135 -}
136 -
137 -src_prepare() {
138 - #notes/todos
139 - # -on apple: there is framework support
140 -
141 - cmake-utils_src_prepare
142 -
143 - use cuda && cuda_src_prepare
144 -
145 - GMX_DIRS=""
146 - use single-precision && GMX_DIRS+=" float"
147 - use double-precision && GMX_DIRS+=" double"
148 -
149 - if use test; then
150 - for x in ${GMX_DIRS}; do
151 - mkdir -p "${WORKDIR}/${P}_${x}" || die
152 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
153 - done
154 - fi
155 -
156 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
157 -}
158 -
159 -src_configure() {
160 - local mycmakeargs_pre=( ) extra fft_opts=( )
161 -
162 - #go from slowest to fastest acceleration
163 - local acce="None"
164 - use cpu_flags_x86_sse2 && acce="SSE2"
165 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
166 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
167 - use cpu_flags_x86_avx && acce="AVX_256"
168 - use cpu_flags_x86_avx2 && acce="AVX2_256"
169 -
170 - #to create man pages, build tree binaries are executed (bug #398437)
171 - [[ ${CHOST} = *-darwin* ]] && \
172 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
173 -
174 - if use fftw; then
175 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
176 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
177 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
178 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
179 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
180 - )
181 - elif use mkl; then
182 - local bits=$(get_libdir)
183 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
184 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
185 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
186 - )
187 - else
188 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
189 - fi
190 -
191 - mycmakeargs_pre+=(
192 - "${fft_opts[@]}"
193 - $(cmake-utils_use X GMX_X11)
194 - $(cmake-utils_use blas GMX_EXTERNAL_BLAS)
195 - $(cmake-utils_use lapack GMX_EXTERNAL_LAPACK)
196 - $(cmake-utils_use openmp GMX_OPENMP)
197 - $(cmake-utils_use offensive GMX_COOL_QUOTES)
198 - $(cmake-utils_use boost GMX_EXTERNAL_BOOST)
199 - $(cmake-utils_use tng GMX_USE_TNG)
200 - $(cmake-utils_use doc GMX_BUILD_MANUAL)
201 - $(cmake-utils_use make-symlinks GMX_SYMLINK_OLD_BINARY_NAMES)
202 - -DGMX_DEFAULT_SUFFIX=off
203 - -DGMX_SIMD="$acce"
204 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
205 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
206 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
207 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
208 - -DBUILD_TESTING=OFF
209 - -DGMX_BUILD_UNITTESTS=OFF
210 - ${extra}
211 - )
212 -
213 - for x in ${GMX_DIRS}; do
214 - einfo "Configuring for ${x} precision"
215 - local suffix=""
216 - #if we build single and double - double is suffixed
217 - use double-precision && use single-precision && \
218 - [[ ${x} = "double" ]] && suffix="_d"
219 - local p
220 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
221 - local cuda=( "-DGMX_GPU=OFF" )
222 - [[ ${x} = "float" ]] && use cuda && \
223 - cuda=( -DGMX_GPU=ON )
224 - mycmakeargs=(
225 - ${mycmakeargs_pre[@]} ${p}
226 - -DGMX_MPI=OFF
227 - $(cmake-utils_use threads GMX_THREAD_MPI)
228 - "${cuda[@]}"
229 - -DGMX_OPENMM=OFF
230 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
231 - -DGMX_BINARY_SUFFIX="${suffix}"
232 - -DGMX_LIBS_SUFFIX="${suffix}"
233 - )
234 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
235 - [[ ${CHOST} != *-darwin* ]] || \
236 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
237 - use mpi || continue
238 - einfo "Configuring for ${x} precision with mpi"
239 - mycmakeargs=(
240 - ${mycmakeargs_pre[@]} ${p}
241 - -DGMX_THREAD_MPI=OFF
242 - -DGMX_MPI=ON ${cuda}
243 - -DGMX_OPENMM=OFF
244 - -DGMX_BUILD_MDRUN_ONLY=ON
245 - -DBUILD_SHARED_LIBS=OFF
246 - -DGMX_BUILD_MANUAL=OFF
247 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
248 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
249 - )
250 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
251 - [[ ${CHOST} != *-darwin* ]] || \
252 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
253 - done
254 -}
255 -
256 -src_compile() {
257 - for x in ${GMX_DIRS}; do
258 - einfo "Compiling for ${x} precision"
259 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
260 - cmake-utils_src_compile
261 - # generate bash completion, not 100% necessary for
262 - # rel ebuilds as bundled
263 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
264 - cmake-utils_src_compile completion
265 - # not 100% necessary for rel ebuilds as available from website
266 - if use doc; then
267 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
268 - cmake-utils_src_compile manual
269 - fi
270 - use mpi || continue
271 - einfo "Compiling for ${x} precision with mpi"
272 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
273 - cmake-utils_src_compile
274 - done
275 -}
276 -
277 -src_test() {
278 - for x in ${GMX_DIRS}; do
279 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
280 - cmake-utils_src_make check
281 - done
282 -}
283 -
284 -src_install() {
285 - for x in ${GMX_DIRS}; do
286 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
287 - cmake-utils_src_install
288 - if use doc; then
289 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
290 - fi
291 - #release ebuild does this automatically
292 - if [[ $PV = *9999* ]]; then
293 - cp "${WORKDIR}/${P}_${x}"/src/programs/completion/gmx-completion.bash "${ED}/usr/bin" || die
294 - echo "complete -o nospace -F _gmx_compl gmx" > "${ED}/usr/bin/gmx-completion-gmx.bash" || die
295 - fi
296 - use mpi || continue
297 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
298 - cmake-utils_src_install
299 - done
300 -
301 - if use tng; then
302 - insinto /usr/include/tng
303 - doins src/external/tng_io/include/tng/*h
304 - fi
305 - # drop unneeded stuff
306 - rm "${ED}"usr/bin/GMXRC* || die
307 - #concatenate all gmx-completion*, starting with gmx-completion.bash (fct defs)
308 - #little hacckery as some gmx-completion* newlines ,so cat won't work
309 - for x in "${ED}"usr/bin/gmx-completion{,?*}.bash ; do
310 - echo $(<${x})
311 - done > "${T}"/gmx-bashcomp || die
312 - newbashcomp "${T}"/gmx-bashcomp gmx
313 - bashcomp_alias gmx mdrun
314 - rm "${ED}"usr/bin/gmx-completion{,?*}.bash || die
315 - if use double-precision && use single-precision; then
316 - bashcomp_alias gmx gmx_d
317 - bashcomp_alias gmx mdrun_d
318 - fi
319 - readme.gentoo_create_doc
320 -}
321 -
322 -pkg_postinst() {
323 - einfo
324 - einfo "Please read and cite:"
325 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
326 - einfo "http://dx.doi.org/10.1021/ct700301q"
327 - einfo
328 - readme.gentoo_print_elog
329 -}
330
331 diff --git a/sci-chemistry/gromacs/gromacs-5.0.5.ebuild b/sci-chemistry/gromacs/gromacs-5.0.5.ebuild
332 deleted file mode 100644
333 index b5d7896..0000000
334 --- a/sci-chemistry/gromacs/gromacs-5.0.5.ebuild
335 +++ /dev/null
336 @@ -1,284 +0,0 @@
337 -# Copyright 1999-2015 Gentoo Foundation
338 -# Distributed under the terms of the GNU General Public License v2
339 -# $Id$
340 -
341 -EAPI=5
342 -
343 -CMAKE_MAKEFILE_GENERATOR="ninja"
344 -
345 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo toolchain-funcs
346 -
347 -if [[ $PV = *9999* ]]; then
348 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
349 - https://gerrit.gromacs.org/gromacs.git
350 - git://github.com/gromacs/gromacs.git
351 - http://repo.or.cz/r/gromacs.git"
352 - EGIT_BRANCH="release-5-0"
353 - inherit git-r3
354 - KEYWORDS=""
355 -else
356 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
357 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
358 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
359 -fi
360 -
361 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
362 -
363 -DESCRIPTION="The ultimate molecular dynamics simulation package"
364 -HOMEPAGE="http://www.gromacs.org/"
365 -
366 -# see COPYING for details
367 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
368 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
369 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
370 -SLOT="0/${PV}"
371 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack +make-symlinks mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
372 -
373 -CDEPEND="
374 - X? (
375 - x11-libs/libX11
376 - x11-libs/libSM
377 - x11-libs/libICE
378 - )
379 - blas? ( virtual/blas )
380 - boost? ( >=dev-libs/boost-1.55 )
381 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
382 - fftw? ( sci-libs/fftw:3.0 )
383 - lapack? ( virtual/lapack )
384 - mkl? ( sci-libs/mkl )
385 - mpi? ( virtual/mpi )
386 - "
387 -DEPEND="${CDEPEND}
388 - virtual/pkgconfig
389 - doc? (
390 - app-doc/doxygen
391 - dev-texlive/texlive-latex
392 - dev-texlive/texlive-latexextra
393 - media-gfx/imagemagick
394 - )"
395 -RDEPEND="${CDEPEND}"
396 -
397 -REQUIRED_USE="
398 - || ( single-precision double-precision )
399 - cuda? ( single-precision )
400 - mkl? ( !blas !fftw !lapack )"
401 -
402 -DOCS=( AUTHORS README )
403 -
404 -if [[ ${PV} != *9999 ]]; then
405 - S="${WORKDIR}/${PN}-${PV/_/-}"
406 -fi
407 -
408 -pkg_pretend() {
409 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
410 - use openmp && ! tc-has-openmp && \
411 - die "Please switch to an openmp compatible compiler"
412 -}
413 -
414 -src_unpack() {
415 - if [[ ${PV} != *9999 ]]; then
416 - default
417 - else
418 - git-r3_src_unpack
419 - if use test; then
420 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
421 - EGIT_BRANCH="master" EGIT_COMMIT="master" \
422 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
423 - git-r3_src_unpack
424 - fi
425 - fi
426 -}
427 -
428 -src_prepare() {
429 - #notes/todos
430 - # -on apple: there is framework support
431 -
432 - cmake-utils_src_prepare
433 -
434 - use cuda && cuda_src_prepare
435 -
436 - GMX_DIRS=""
437 - use single-precision && GMX_DIRS+=" float"
438 - use double-precision && GMX_DIRS+=" double"
439 -
440 - if use test; then
441 - for x in ${GMX_DIRS}; do
442 - mkdir -p "${WORKDIR}/${P}_${x}" || die
443 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
444 - done
445 - fi
446 -
447 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
448 -}
449 -
450 -src_configure() {
451 - local mycmakeargs_pre=( ) extra fft_opts=( )
452 -
453 - #go from slowest to fastest acceleration
454 - local acce="None"
455 - use cpu_flags_x86_sse2 && acce="SSE2"
456 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
457 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
458 - use cpu_flags_x86_avx && acce="AVX_256"
459 - use cpu_flags_x86_avx2 && acce="AVX2_256"
460 -
461 - #to create man pages, build tree binaries are executed (bug #398437)
462 - [[ ${CHOST} = *-darwin* ]] && \
463 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
464 -
465 - if use fftw; then
466 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
467 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
468 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
469 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
470 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
471 - )
472 - elif use mkl; then
473 - local bits=$(get_libdir)
474 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
475 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
476 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
477 - )
478 - else
479 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
480 - fi
481 -
482 - mycmakeargs_pre+=(
483 - "${fft_opts[@]}"
484 - $(cmake-utils_use X GMX_X11)
485 - $(cmake-utils_use blas GMX_EXTERNAL_BLAS)
486 - $(cmake-utils_use lapack GMX_EXTERNAL_LAPACK)
487 - $(cmake-utils_use openmp GMX_OPENMP)
488 - $(cmake-utils_use offensive GMX_COOL_QUOTES)
489 - $(cmake-utils_use boost GMX_EXTERNAL_BOOST)
490 - $(cmake-utils_use tng GMX_USE_TNG)
491 - $(cmake-utils_use doc GMX_BUILD_MANUAL)
492 - $(cmake-utils_use make-symlinks GMX_SYMLINK_OLD_BINARY_NAMES)
493 - -DGMX_DEFAULT_SUFFIX=off
494 - -DGMX_SIMD="$acce"
495 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
496 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
497 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
498 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
499 - -DBUILD_TESTING=OFF
500 - -DGMX_BUILD_UNITTESTS=OFF
501 - ${extra}
502 - )
503 -
504 - for x in ${GMX_DIRS}; do
505 - einfo "Configuring for ${x} precision"
506 - local suffix=""
507 - #if we build single and double - double is suffixed
508 - use double-precision && use single-precision && \
509 - [[ ${x} = "double" ]] && suffix="_d"
510 - local p
511 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
512 - local cuda=( "-DGMX_GPU=OFF" )
513 - [[ ${x} = "float" ]] && use cuda && \
514 - cuda=( -DGMX_GPU=ON )
515 - mycmakeargs=(
516 - ${mycmakeargs_pre[@]} ${p}
517 - -DGMX_MPI=OFF
518 - $(cmake-utils_use threads GMX_THREAD_MPI)
519 - "${cuda[@]}"
520 - -DGMX_OPENMM=OFF
521 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
522 - -DGMX_BINARY_SUFFIX="${suffix}"
523 - -DGMX_LIBS_SUFFIX="${suffix}"
524 - )
525 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
526 - [[ ${CHOST} != *-darwin* ]] || \
527 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
528 - use mpi || continue
529 - einfo "Configuring for ${x} precision with mpi"
530 - mycmakeargs=(
531 - ${mycmakeargs_pre[@]} ${p}
532 - -DGMX_THREAD_MPI=OFF
533 - -DGMX_MPI=ON ${cuda}
534 - -DGMX_OPENMM=OFF
535 - -DGMX_BUILD_MDRUN_ONLY=ON
536 - -DBUILD_SHARED_LIBS=OFF
537 - -DGMX_BUILD_MANUAL=OFF
538 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
539 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
540 - )
541 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
542 - [[ ${CHOST} != *-darwin* ]] || \
543 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
544 - done
545 -}
546 -
547 -src_compile() {
548 - for x in ${GMX_DIRS}; do
549 - einfo "Compiling for ${x} precision"
550 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
551 - cmake-utils_src_compile
552 - # generate bash completion, not 100% necessary for
553 - # rel ebuilds as bundled
554 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
555 - cmake-utils_src_compile completion
556 - # not 100% necessary for rel ebuilds as available from website
557 - if use doc; then
558 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
559 - cmake-utils_src_compile manual
560 - fi
561 - use mpi || continue
562 - einfo "Compiling for ${x} precision with mpi"
563 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
564 - cmake-utils_src_compile
565 - done
566 -}
567 -
568 -src_test() {
569 - for x in ${GMX_DIRS}; do
570 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
571 - cmake-utils_src_make check
572 - done
573 -}
574 -
575 -src_install() {
576 - for x in ${GMX_DIRS}; do
577 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
578 - cmake-utils_src_install
579 - if use doc; then
580 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
581 - fi
582 - #release ebuild does this automatically
583 - if [[ $PV = *9999* ]]; then
584 - cp "${WORKDIR}/${P}_${x}"/src/programs/completion/gmx-completion.bash "${ED}/usr/bin" || die
585 - echo "complete -o nospace -F _gmx_compl gmx" > "${ED}/usr/bin/gmx-completion-gmx.bash" || die
586 - fi
587 - use mpi || continue
588 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
589 - cmake-utils_src_install
590 - done
591 -
592 - if use tng; then
593 - insinto /usr/include/tng
594 - doins src/external/tng_io/include/tng/*h
595 - fi
596 - # drop unneeded stuff
597 - rm "${ED}"usr/bin/GMXRC* || die
598 - #concatenate all gmx-completion*, starting with gmx-completion.bash (fct defs)
599 - #little hacckery as some gmx-completion* newlines ,so cat won't work
600 - for x in "${ED}"usr/bin/gmx-completion{,?*}.bash ; do
601 - echo $(<${x})
602 - done > "${T}"/gmx-bashcomp || die
603 - newbashcomp "${T}"/gmx-bashcomp gmx
604 - bashcomp_alias gmx mdrun
605 - rm "${ED}"usr/bin/gmx-completion{,?*}.bash || die
606 - if use double-precision && use single-precision; then
607 - bashcomp_alias gmx gmx_d
608 - bashcomp_alias gmx mdrun_d
609 - fi
610 - readme.gentoo_create_doc
611 -}
612 -
613 -pkg_postinst() {
614 - einfo
615 - einfo "Please read and cite:"
616 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
617 - einfo "http://dx.doi.org/10.1021/ct700301q"
618 - einfo
619 - readme.gentoo_print_elog
620 -}
621
622 diff --git a/sci-chemistry/gromacs/gromacs-5.0.6.ebuild b/sci-chemistry/gromacs/gromacs-5.0.6.ebuild
623 deleted file mode 100644
624 index b5d7896..0000000
625 --- a/sci-chemistry/gromacs/gromacs-5.0.6.ebuild
626 +++ /dev/null
627 @@ -1,284 +0,0 @@
628 -# Copyright 1999-2015 Gentoo Foundation
629 -# Distributed under the terms of the GNU General Public License v2
630 -# $Id$
631 -
632 -EAPI=5
633 -
634 -CMAKE_MAKEFILE_GENERATOR="ninja"
635 -
636 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo toolchain-funcs
637 -
638 -if [[ $PV = *9999* ]]; then
639 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
640 - https://gerrit.gromacs.org/gromacs.git
641 - git://github.com/gromacs/gromacs.git
642 - http://repo.or.cz/r/gromacs.git"
643 - EGIT_BRANCH="release-5-0"
644 - inherit git-r3
645 - KEYWORDS=""
646 -else
647 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
648 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
649 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
650 -fi
651 -
652 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
653 -
654 -DESCRIPTION="The ultimate molecular dynamics simulation package"
655 -HOMEPAGE="http://www.gromacs.org/"
656 -
657 -# see COPYING for details
658 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
659 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
660 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
661 -SLOT="0/${PV}"
662 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack +make-symlinks mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
663 -
664 -CDEPEND="
665 - X? (
666 - x11-libs/libX11
667 - x11-libs/libSM
668 - x11-libs/libICE
669 - )
670 - blas? ( virtual/blas )
671 - boost? ( >=dev-libs/boost-1.55 )
672 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
673 - fftw? ( sci-libs/fftw:3.0 )
674 - lapack? ( virtual/lapack )
675 - mkl? ( sci-libs/mkl )
676 - mpi? ( virtual/mpi )
677 - "
678 -DEPEND="${CDEPEND}
679 - virtual/pkgconfig
680 - doc? (
681 - app-doc/doxygen
682 - dev-texlive/texlive-latex
683 - dev-texlive/texlive-latexextra
684 - media-gfx/imagemagick
685 - )"
686 -RDEPEND="${CDEPEND}"
687 -
688 -REQUIRED_USE="
689 - || ( single-precision double-precision )
690 - cuda? ( single-precision )
691 - mkl? ( !blas !fftw !lapack )"
692 -
693 -DOCS=( AUTHORS README )
694 -
695 -if [[ ${PV} != *9999 ]]; then
696 - S="${WORKDIR}/${PN}-${PV/_/-}"
697 -fi
698 -
699 -pkg_pretend() {
700 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
701 - use openmp && ! tc-has-openmp && \
702 - die "Please switch to an openmp compatible compiler"
703 -}
704 -
705 -src_unpack() {
706 - if [[ ${PV} != *9999 ]]; then
707 - default
708 - else
709 - git-r3_src_unpack
710 - if use test; then
711 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
712 - EGIT_BRANCH="master" EGIT_COMMIT="master" \
713 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
714 - git-r3_src_unpack
715 - fi
716 - fi
717 -}
718 -
719 -src_prepare() {
720 - #notes/todos
721 - # -on apple: there is framework support
722 -
723 - cmake-utils_src_prepare
724 -
725 - use cuda && cuda_src_prepare
726 -
727 - GMX_DIRS=""
728 - use single-precision && GMX_DIRS+=" float"
729 - use double-precision && GMX_DIRS+=" double"
730 -
731 - if use test; then
732 - for x in ${GMX_DIRS}; do
733 - mkdir -p "${WORKDIR}/${P}_${x}" || die
734 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
735 - done
736 - fi
737 -
738 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
739 -}
740 -
741 -src_configure() {
742 - local mycmakeargs_pre=( ) extra fft_opts=( )
743 -
744 - #go from slowest to fastest acceleration
745 - local acce="None"
746 - use cpu_flags_x86_sse2 && acce="SSE2"
747 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
748 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
749 - use cpu_flags_x86_avx && acce="AVX_256"
750 - use cpu_flags_x86_avx2 && acce="AVX2_256"
751 -
752 - #to create man pages, build tree binaries are executed (bug #398437)
753 - [[ ${CHOST} = *-darwin* ]] && \
754 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
755 -
756 - if use fftw; then
757 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
758 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
759 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
760 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
761 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
762 - )
763 - elif use mkl; then
764 - local bits=$(get_libdir)
765 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
766 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
767 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
768 - )
769 - else
770 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
771 - fi
772 -
773 - mycmakeargs_pre+=(
774 - "${fft_opts[@]}"
775 - $(cmake-utils_use X GMX_X11)
776 - $(cmake-utils_use blas GMX_EXTERNAL_BLAS)
777 - $(cmake-utils_use lapack GMX_EXTERNAL_LAPACK)
778 - $(cmake-utils_use openmp GMX_OPENMP)
779 - $(cmake-utils_use offensive GMX_COOL_QUOTES)
780 - $(cmake-utils_use boost GMX_EXTERNAL_BOOST)
781 - $(cmake-utils_use tng GMX_USE_TNG)
782 - $(cmake-utils_use doc GMX_BUILD_MANUAL)
783 - $(cmake-utils_use make-symlinks GMX_SYMLINK_OLD_BINARY_NAMES)
784 - -DGMX_DEFAULT_SUFFIX=off
785 - -DGMX_SIMD="$acce"
786 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
787 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
788 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
789 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
790 - -DBUILD_TESTING=OFF
791 - -DGMX_BUILD_UNITTESTS=OFF
792 - ${extra}
793 - )
794 -
795 - for x in ${GMX_DIRS}; do
796 - einfo "Configuring for ${x} precision"
797 - local suffix=""
798 - #if we build single and double - double is suffixed
799 - use double-precision && use single-precision && \
800 - [[ ${x} = "double" ]] && suffix="_d"
801 - local p
802 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
803 - local cuda=( "-DGMX_GPU=OFF" )
804 - [[ ${x} = "float" ]] && use cuda && \
805 - cuda=( -DGMX_GPU=ON )
806 - mycmakeargs=(
807 - ${mycmakeargs_pre[@]} ${p}
808 - -DGMX_MPI=OFF
809 - $(cmake-utils_use threads GMX_THREAD_MPI)
810 - "${cuda[@]}"
811 - -DGMX_OPENMM=OFF
812 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
813 - -DGMX_BINARY_SUFFIX="${suffix}"
814 - -DGMX_LIBS_SUFFIX="${suffix}"
815 - )
816 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
817 - [[ ${CHOST} != *-darwin* ]] || \
818 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
819 - use mpi || continue
820 - einfo "Configuring for ${x} precision with mpi"
821 - mycmakeargs=(
822 - ${mycmakeargs_pre[@]} ${p}
823 - -DGMX_THREAD_MPI=OFF
824 - -DGMX_MPI=ON ${cuda}
825 - -DGMX_OPENMM=OFF
826 - -DGMX_BUILD_MDRUN_ONLY=ON
827 - -DBUILD_SHARED_LIBS=OFF
828 - -DGMX_BUILD_MANUAL=OFF
829 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
830 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
831 - )
832 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
833 - [[ ${CHOST} != *-darwin* ]] || \
834 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
835 - done
836 -}
837 -
838 -src_compile() {
839 - for x in ${GMX_DIRS}; do
840 - einfo "Compiling for ${x} precision"
841 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
842 - cmake-utils_src_compile
843 - # generate bash completion, not 100% necessary for
844 - # rel ebuilds as bundled
845 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
846 - cmake-utils_src_compile completion
847 - # not 100% necessary for rel ebuilds as available from website
848 - if use doc; then
849 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
850 - cmake-utils_src_compile manual
851 - fi
852 - use mpi || continue
853 - einfo "Compiling for ${x} precision with mpi"
854 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
855 - cmake-utils_src_compile
856 - done
857 -}
858 -
859 -src_test() {
860 - for x in ${GMX_DIRS}; do
861 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
862 - cmake-utils_src_make check
863 - done
864 -}
865 -
866 -src_install() {
867 - for x in ${GMX_DIRS}; do
868 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
869 - cmake-utils_src_install
870 - if use doc; then
871 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
872 - fi
873 - #release ebuild does this automatically
874 - if [[ $PV = *9999* ]]; then
875 - cp "${WORKDIR}/${P}_${x}"/src/programs/completion/gmx-completion.bash "${ED}/usr/bin" || die
876 - echo "complete -o nospace -F _gmx_compl gmx" > "${ED}/usr/bin/gmx-completion-gmx.bash" || die
877 - fi
878 - use mpi || continue
879 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
880 - cmake-utils_src_install
881 - done
882 -
883 - if use tng; then
884 - insinto /usr/include/tng
885 - doins src/external/tng_io/include/tng/*h
886 - fi
887 - # drop unneeded stuff
888 - rm "${ED}"usr/bin/GMXRC* || die
889 - #concatenate all gmx-completion*, starting with gmx-completion.bash (fct defs)
890 - #little hacckery as some gmx-completion* newlines ,so cat won't work
891 - for x in "${ED}"usr/bin/gmx-completion{,?*}.bash ; do
892 - echo $(<${x})
893 - done > "${T}"/gmx-bashcomp || die
894 - newbashcomp "${T}"/gmx-bashcomp gmx
895 - bashcomp_alias gmx mdrun
896 - rm "${ED}"usr/bin/gmx-completion{,?*}.bash || die
897 - if use double-precision && use single-precision; then
898 - bashcomp_alias gmx gmx_d
899 - bashcomp_alias gmx mdrun_d
900 - fi
901 - readme.gentoo_create_doc
902 -}
903 -
904 -pkg_postinst() {
905 - einfo
906 - einfo "Please read and cite:"
907 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
908 - einfo "http://dx.doi.org/10.1021/ct700301q"
909 - einfo
910 - readme.gentoo_print_elog
911 -}
912
913 diff --git a/sci-chemistry/gromacs/gromacs-5.1.1.ebuild b/sci-chemistry/gromacs/gromacs-5.1.1.ebuild
914 deleted file mode 100644
915 index 031dfca..0000000
916 --- a/sci-chemistry/gromacs/gromacs-5.1.1.ebuild
917 +++ /dev/null
918 @@ -1,269 +0,0 @@
919 -# Copyright 1999-2015 Gentoo Foundation
920 -# Distributed under the terms of the GNU General Public License v2
921 -# $Id$
922 -
923 -EAPI=5
924 -
925 -CMAKE_MAKEFILE_GENERATOR="ninja"
926 -
927 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo toolchain-funcs
928 -
929 -if [[ $PV = *9999* ]]; then
930 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
931 - https://gerrit.gromacs.org/gromacs.git
932 - git://github.com/gromacs/gromacs.git
933 - http://repo.or.cz/r/gromacs.git"
934 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
935 - inherit git-r3
936 - KEYWORDS=""
937 -else
938 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
939 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
940 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
941 -fi
942 -
943 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
944 -
945 -DESCRIPTION="The ultimate molecular dynamics simulation package"
946 -HOMEPAGE="http://www.gromacs.org/"
947 -
948 -# see COPYING for details
949 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
950 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
951 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
952 -SLOT="0/${PV}"
953 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
954 -
955 -CDEPEND="
956 - X? (
957 - x11-libs/libX11
958 - x11-libs/libSM
959 - x11-libs/libICE
960 - )
961 - blas? ( virtual/blas )
962 - boost? ( >=dev-libs/boost-1.55 )
963 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
964 - fftw? ( sci-libs/fftw:3.0 )
965 - lapack? ( virtual/lapack )
966 - mkl? ( sci-libs/mkl )
967 - mpi? ( virtual/mpi )
968 - "
969 -DEPEND="${CDEPEND}
970 - virtual/pkgconfig
971 - doc? (
972 - app-doc/doxygen
973 - dev-texlive/texlive-latex
974 - dev-texlive/texlive-latexextra
975 - media-gfx/imagemagick
976 - )"
977 -RDEPEND="${CDEPEND}"
978 -
979 -REQUIRED_USE="
980 - || ( single-precision double-precision )
981 - cuda? ( single-precision )
982 - mkl? ( !blas !fftw !lapack )"
983 -
984 -DOCS=( AUTHORS README )
985 -
986 -if [[ ${PV} != *9999 ]]; then
987 - S="${WORKDIR}/${PN}-${PV/_/-}"
988 -fi
989 -
990 -pkg_pretend() {
991 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
992 - use openmp && ! tc-has-openmp && \
993 - die "Please switch to an openmp compatible compiler"
994 -}
995 -
996 -src_unpack() {
997 - if [[ ${PV} != *9999 ]]; then
998 - default
999 - else
1000 - git-r3_src_unpack
1001 - if use test; then
1002 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
1003 - EGIT_BRANCH="${EGIT_BRANCH}" \
1004 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
1005 - git-r3_src_unpack
1006 - fi
1007 - fi
1008 -}
1009 -
1010 -src_prepare() {
1011 - #notes/todos
1012 - # -on apple: there is framework support
1013 -
1014 - cmake-utils_src_prepare
1015 -
1016 - use cuda && cuda_src_prepare
1017 -
1018 - GMX_DIRS=""
1019 - use single-precision && GMX_DIRS+=" float"
1020 - use double-precision && GMX_DIRS+=" double"
1021 -
1022 - if use test; then
1023 - for x in ${GMX_DIRS}; do
1024 - mkdir -p "${WORKDIR}/${P}_${x}" || die
1025 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
1026 - done
1027 - fi
1028 -
1029 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
1030 -}
1031 -
1032 -src_configure() {
1033 - local mycmakeargs_pre=( ) extra fft_opts=( )
1034 -
1035 - #go from slowest to fastest acceleration
1036 - local acce="None"
1037 - use cpu_flags_x86_sse2 && acce="SSE2"
1038 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
1039 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
1040 - use cpu_flags_x86_avx && acce="AVX_256"
1041 - use cpu_flags_x86_avx2 && acce="AVX2_256"
1042 -
1043 - #to create man pages, build tree binaries are executed (bug #398437)
1044 - [[ ${CHOST} = *-darwin* ]] && \
1045 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
1046 -
1047 - if use fftw; then
1048 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
1049 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
1050 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1051 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
1052 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
1053 - )
1054 - elif use mkl; then
1055 - local bits=$(get_libdir)
1056 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1057 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
1058 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
1059 - )
1060 - else
1061 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
1062 - fi
1063 -
1064 - mycmakeargs_pre+=(
1065 - "${fft_opts[@]}"
1066 - $(cmake-utils_use X GMX_X11)
1067 - $(cmake-utils_use blas GMX_EXTERNAL_BLAS)
1068 - $(cmake-utils_use lapack GMX_EXTERNAL_LAPACK)
1069 - $(cmake-utils_use openmp GMX_OPENMP)
1070 - $(cmake-utils_use offensive GMX_COOL_QUOTES)
1071 - $(cmake-utils_use boost GMX_EXTERNAL_BOOST)
1072 - $(cmake-utils_use tng GMX_USE_TNG)
1073 - $(cmake-utils_use doc GMX_BUILD_MANUAL)
1074 - -DGMX_DEFAULT_SUFFIX=off
1075 - -DGMX_SIMD="$acce"
1076 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
1077 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
1078 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
1079 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
1080 - -DBUILD_TESTING=OFF
1081 - -DGMX_BUILD_UNITTESTS=OFF
1082 - ${extra}
1083 - )
1084 -
1085 - for x in ${GMX_DIRS}; do
1086 - einfo "Configuring for ${x} precision"
1087 - local suffix=""
1088 - #if we build single and double - double is suffixed
1089 - use double-precision && use single-precision && \
1090 - [[ ${x} = "double" ]] && suffix="_d"
1091 - local p
1092 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
1093 - local cuda=( "-DGMX_GPU=OFF" )
1094 - [[ ${x} = "float" ]] && use cuda && \
1095 - cuda=( -DGMX_GPU=ON )
1096 - mycmakeargs=(
1097 - ${mycmakeargs_pre[@]} ${p}
1098 - -DGMX_MPI=OFF
1099 - $(cmake-utils_use threads GMX_THREAD_MPI)
1100 - "${cuda[@]}"
1101 - -DGMX_OPENMM=OFF
1102 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
1103 - -DGMX_BINARY_SUFFIX="${suffix}"
1104 - -DGMX_LIBS_SUFFIX="${suffix}"
1105 - )
1106 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
1107 - [[ ${CHOST} != *-darwin* ]] || \
1108 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
1109 - use mpi || continue
1110 - einfo "Configuring for ${x} precision with mpi"
1111 - mycmakeargs=(
1112 - ${mycmakeargs_pre[@]} ${p}
1113 - -DGMX_THREAD_MPI=OFF
1114 - -DGMX_MPI=ON ${cuda}
1115 - -DGMX_OPENMM=OFF
1116 - -DGMX_BUILD_MDRUN_ONLY=ON
1117 - -DBUILD_SHARED_LIBS=OFF
1118 - -DGMX_BUILD_MANUAL=OFF
1119 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
1120 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
1121 - )
1122 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
1123 - [[ ${CHOST} != *-darwin* ]] || \
1124 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
1125 - done
1126 -}
1127 -
1128 -src_compile() {
1129 - for x in ${GMX_DIRS}; do
1130 - einfo "Compiling for ${x} precision"
1131 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1132 - cmake-utils_src_compile
1133 - # not 100% necessary for rel ebuilds as available from website
1134 - if use doc; then
1135 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1136 - cmake-utils_src_compile manual
1137 - fi
1138 - use mpi || continue
1139 - einfo "Compiling for ${x} precision with mpi"
1140 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
1141 - cmake-utils_src_compile
1142 - done
1143 -}
1144 -
1145 -src_test() {
1146 - for x in ${GMX_DIRS}; do
1147 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1148 - cmake-utils_src_make check
1149 - done
1150 -}
1151 -
1152 -src_install() {
1153 - for x in ${GMX_DIRS}; do
1154 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
1155 - cmake-utils_src_install
1156 - if use doc; then
1157 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
1158 - fi
1159 - use mpi || continue
1160 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
1161 - cmake-utils_src_install
1162 - done
1163 -
1164 - if use tng; then
1165 - insinto /usr/include/tng
1166 - doins src/external/tng_io/include/tng/*h
1167 - fi
1168 - # drop unneeded stuff
1169 - rm "${ED}"usr/bin/GMXRC* || die
1170 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
1171 - local n=${x##*/gmx-completion-}
1172 - n="${n%.bash}"
1173 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
1174 - newbashcomp "${T}"/"${n}" "${n}"
1175 - done
1176 - rm "${ED}"usr/bin/gmx-completion*.bash || die
1177 - readme.gentoo_create_doc
1178 -}
1179 -
1180 -pkg_postinst() {
1181 - einfo
1182 - einfo "Please read and cite:"
1183 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
1184 - einfo "http://dx.doi.org/10.1021/ct700301q"
1185 - einfo
1186 - readme.gentoo_print_elog
1187 -}
1188
1189 diff --git a/sci-chemistry/gromacs/gromacs-5.1.ebuild b/sci-chemistry/gromacs/gromacs-5.1.ebuild
1190 deleted file mode 100644
1191 index 031dfca..0000000
1192 --- a/sci-chemistry/gromacs/gromacs-5.1.ebuild
1193 +++ /dev/null
1194 @@ -1,269 +0,0 @@
1195 -# Copyright 1999-2015 Gentoo Foundation
1196 -# Distributed under the terms of the GNU General Public License v2
1197 -# $Id$
1198 -
1199 -EAPI=5
1200 -
1201 -CMAKE_MAKEFILE_GENERATOR="ninja"
1202 -
1203 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo toolchain-funcs
1204 -
1205 -if [[ $PV = *9999* ]]; then
1206 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
1207 - https://gerrit.gromacs.org/gromacs.git
1208 - git://github.com/gromacs/gromacs.git
1209 - http://repo.or.cz/r/gromacs.git"
1210 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
1211 - inherit git-r3
1212 - KEYWORDS=""
1213 -else
1214 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
1215 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
1216 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
1217 -fi
1218 -
1219 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
1220 -
1221 -DESCRIPTION="The ultimate molecular dynamics simulation package"
1222 -HOMEPAGE="http://www.gromacs.org/"
1223 -
1224 -# see COPYING for details
1225 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
1226 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
1227 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
1228 -SLOT="0/${PV}"
1229 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
1230 -
1231 -CDEPEND="
1232 - X? (
1233 - x11-libs/libX11
1234 - x11-libs/libSM
1235 - x11-libs/libICE
1236 - )
1237 - blas? ( virtual/blas )
1238 - boost? ( >=dev-libs/boost-1.55 )
1239 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
1240 - fftw? ( sci-libs/fftw:3.0 )
1241 - lapack? ( virtual/lapack )
1242 - mkl? ( sci-libs/mkl )
1243 - mpi? ( virtual/mpi )
1244 - "
1245 -DEPEND="${CDEPEND}
1246 - virtual/pkgconfig
1247 - doc? (
1248 - app-doc/doxygen
1249 - dev-texlive/texlive-latex
1250 - dev-texlive/texlive-latexextra
1251 - media-gfx/imagemagick
1252 - )"
1253 -RDEPEND="${CDEPEND}"
1254 -
1255 -REQUIRED_USE="
1256 - || ( single-precision double-precision )
1257 - cuda? ( single-precision )
1258 - mkl? ( !blas !fftw !lapack )"
1259 -
1260 -DOCS=( AUTHORS README )
1261 -
1262 -if [[ ${PV} != *9999 ]]; then
1263 - S="${WORKDIR}/${PN}-${PV/_/-}"
1264 -fi
1265 -
1266 -pkg_pretend() {
1267 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
1268 - use openmp && ! tc-has-openmp && \
1269 - die "Please switch to an openmp compatible compiler"
1270 -}
1271 -
1272 -src_unpack() {
1273 - if [[ ${PV} != *9999 ]]; then
1274 - default
1275 - else
1276 - git-r3_src_unpack
1277 - if use test; then
1278 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
1279 - EGIT_BRANCH="${EGIT_BRANCH}" \
1280 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
1281 - git-r3_src_unpack
1282 - fi
1283 - fi
1284 -}
1285 -
1286 -src_prepare() {
1287 - #notes/todos
1288 - # -on apple: there is framework support
1289 -
1290 - cmake-utils_src_prepare
1291 -
1292 - use cuda && cuda_src_prepare
1293 -
1294 - GMX_DIRS=""
1295 - use single-precision && GMX_DIRS+=" float"
1296 - use double-precision && GMX_DIRS+=" double"
1297 -
1298 - if use test; then
1299 - for x in ${GMX_DIRS}; do
1300 - mkdir -p "${WORKDIR}/${P}_${x}" || die
1301 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
1302 - done
1303 - fi
1304 -
1305 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
1306 -}
1307 -
1308 -src_configure() {
1309 - local mycmakeargs_pre=( ) extra fft_opts=( )
1310 -
1311 - #go from slowest to fastest acceleration
1312 - local acce="None"
1313 - use cpu_flags_x86_sse2 && acce="SSE2"
1314 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
1315 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
1316 - use cpu_flags_x86_avx && acce="AVX_256"
1317 - use cpu_flags_x86_avx2 && acce="AVX2_256"
1318 -
1319 - #to create man pages, build tree binaries are executed (bug #398437)
1320 - [[ ${CHOST} = *-darwin* ]] && \
1321 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
1322 -
1323 - if use fftw; then
1324 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
1325 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
1326 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1327 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
1328 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
1329 - )
1330 - elif use mkl; then
1331 - local bits=$(get_libdir)
1332 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1333 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
1334 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
1335 - )
1336 - else
1337 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
1338 - fi
1339 -
1340 - mycmakeargs_pre+=(
1341 - "${fft_opts[@]}"
1342 - $(cmake-utils_use X GMX_X11)
1343 - $(cmake-utils_use blas GMX_EXTERNAL_BLAS)
1344 - $(cmake-utils_use lapack GMX_EXTERNAL_LAPACK)
1345 - $(cmake-utils_use openmp GMX_OPENMP)
1346 - $(cmake-utils_use offensive GMX_COOL_QUOTES)
1347 - $(cmake-utils_use boost GMX_EXTERNAL_BOOST)
1348 - $(cmake-utils_use tng GMX_USE_TNG)
1349 - $(cmake-utils_use doc GMX_BUILD_MANUAL)
1350 - -DGMX_DEFAULT_SUFFIX=off
1351 - -DGMX_SIMD="$acce"
1352 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
1353 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
1354 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
1355 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
1356 - -DBUILD_TESTING=OFF
1357 - -DGMX_BUILD_UNITTESTS=OFF
1358 - ${extra}
1359 - )
1360 -
1361 - for x in ${GMX_DIRS}; do
1362 - einfo "Configuring for ${x} precision"
1363 - local suffix=""
1364 - #if we build single and double - double is suffixed
1365 - use double-precision && use single-precision && \
1366 - [[ ${x} = "double" ]] && suffix="_d"
1367 - local p
1368 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
1369 - local cuda=( "-DGMX_GPU=OFF" )
1370 - [[ ${x} = "float" ]] && use cuda && \
1371 - cuda=( -DGMX_GPU=ON )
1372 - mycmakeargs=(
1373 - ${mycmakeargs_pre[@]} ${p}
1374 - -DGMX_MPI=OFF
1375 - $(cmake-utils_use threads GMX_THREAD_MPI)
1376 - "${cuda[@]}"
1377 - -DGMX_OPENMM=OFF
1378 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
1379 - -DGMX_BINARY_SUFFIX="${suffix}"
1380 - -DGMX_LIBS_SUFFIX="${suffix}"
1381 - )
1382 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
1383 - [[ ${CHOST} != *-darwin* ]] || \
1384 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
1385 - use mpi || continue
1386 - einfo "Configuring for ${x} precision with mpi"
1387 - mycmakeargs=(
1388 - ${mycmakeargs_pre[@]} ${p}
1389 - -DGMX_THREAD_MPI=OFF
1390 - -DGMX_MPI=ON ${cuda}
1391 - -DGMX_OPENMM=OFF
1392 - -DGMX_BUILD_MDRUN_ONLY=ON
1393 - -DBUILD_SHARED_LIBS=OFF
1394 - -DGMX_BUILD_MANUAL=OFF
1395 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
1396 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
1397 - )
1398 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
1399 - [[ ${CHOST} != *-darwin* ]] || \
1400 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
1401 - done
1402 -}
1403 -
1404 -src_compile() {
1405 - for x in ${GMX_DIRS}; do
1406 - einfo "Compiling for ${x} precision"
1407 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1408 - cmake-utils_src_compile
1409 - # not 100% necessary for rel ebuilds as available from website
1410 - if use doc; then
1411 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1412 - cmake-utils_src_compile manual
1413 - fi
1414 - use mpi || continue
1415 - einfo "Compiling for ${x} precision with mpi"
1416 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
1417 - cmake-utils_src_compile
1418 - done
1419 -}
1420 -
1421 -src_test() {
1422 - for x in ${GMX_DIRS}; do
1423 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1424 - cmake-utils_src_make check
1425 - done
1426 -}
1427 -
1428 -src_install() {
1429 - for x in ${GMX_DIRS}; do
1430 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
1431 - cmake-utils_src_install
1432 - if use doc; then
1433 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
1434 - fi
1435 - use mpi || continue
1436 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
1437 - cmake-utils_src_install
1438 - done
1439 -
1440 - if use tng; then
1441 - insinto /usr/include/tng
1442 - doins src/external/tng_io/include/tng/*h
1443 - fi
1444 - # drop unneeded stuff
1445 - rm "${ED}"usr/bin/GMXRC* || die
1446 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
1447 - local n=${x##*/gmx-completion-}
1448 - n="${n%.bash}"
1449 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
1450 - newbashcomp "${T}"/"${n}" "${n}"
1451 - done
1452 - rm "${ED}"usr/bin/gmx-completion*.bash || die
1453 - readme.gentoo_create_doc
1454 -}
1455 -
1456 -pkg_postinst() {
1457 - einfo
1458 - einfo "Please read and cite:"
1459 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
1460 - einfo "http://dx.doi.org/10.1021/ct700301q"
1461 - einfo
1462 - readme.gentoo_print_elog
1463 -}