Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/
Date: Fri, 11 Jan 2019 12:01:02
Message-Id: 1547207854.4e81ca7f2ecb846aa9df25b6d179e1826fe5bde3.asturm@gentoo
1 commit: 4e81ca7f2ecb846aa9df25b6d179e1826fe5bde3
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 5 21:20:54 2019 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Fri Jan 11 11:57:34 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e81ca7f
7
8 sci-chemistry/gromacs: Drop 5.1.3 and 5.1.9999
9
10 Never updated to latest available point release in Gentoo, 5.1.3 is from 2016.
11
12 Package-Manager: Portage-2.3.54, Repoman-2.3.12
13 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
14
15 sci-chemistry/gromacs/Manifest | 2 -
16 sci-chemistry/gromacs/gromacs-5.1.3.ebuild | 267 --------------------------
17 sci-chemistry/gromacs/gromacs-5.1.9999.ebuild | 267 --------------------------
18 sci-chemistry/gromacs/metadata.xml | 1 -
19 4 files changed, 537 deletions(-)
20
21 diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
22 index 412eb6bbdb7..4d0e90e75ae 100644
23 --- a/sci-chemistry/gromacs/Manifest
24 +++ b/sci-chemistry/gromacs/Manifest
25 @@ -3,10 +3,8 @@ DIST gromacs-2016.5.tar.gz 27369491 BLAKE2B 4a8bf1ae3e298ac2e26ec476130720dc3ef0
26 DIST gromacs-2018.3.tar.gz 29915626 BLAKE2B 6e6eeafecdd923a25b4a2a78a8e89f793639b57ffbd63f19d133d8474302f9a381041f138a509dadb42b36e25fe508729e860efb6b0c75cdbf01d924b0a8fd83 SHA512 3c4d6eb3942d7b54d01c94c6f6f5ae706e0f5d4f9901ea11a56fde4df97b1a9112007f2cb13feea0f19f30c89f57ae80ff53a8f5203b8cdff103aa903cd0dc8f
27 DIST gromacs-2018.4.tar.gz 29918276 BLAKE2B daf3f91e47bab61befee4ecd91e4885835fc5ded408462c239c824567e64b5710fb252456c6be2bf0e4ce1a2119747fca9d8fb0532286bb93d6ccdd289fe57ab SHA512 8ef0b90b2c266bb706c8fdba12e763de9c21aad197c1c71f48c06378644a734a3694172804db6c916a4974a9832b128512f2445d0b72783811e64edd22d27955
28 DIST gromacs-2019.tar.gz 33428725 BLAKE2B 307838a5ee1a85554d6f2ef8cd9c9dd2f3d9cacd32c534545c23483b5f3a1c7d027bfbdf224b90661cd8cd3fb85c0c99c66cbd619698245a0cb45ebd512dec5d SHA512 54b11530e8ff671461e3ae9418d991fe242957943c944798cddf6efe740eee670a562cd5201dbba68b045f4bafd3afa2dc8de27e0643c7def4e05eaf0ccb5769
29 -DIST gromacs-5.1.3.tar.gz 27095702 BLAKE2B b7fd8fa10e8c4f4368ac551338c59374dc35f85c9fdae5d64eec62929b8f04ea724a084959b3618cd8a151bf3e0a0c84c8f75de953722effca82a4928941ce73 SHA512 9ab26e1b2268f8d567b89b2d99d0b75b937b28edceaec56d17ca3243c76faa31255ffc0c45d762c7c693fe500b00e36ad43b80572d1d7f92dc87f9d2d98c0ba6
30 DIST regressiontests-2016.2.tar.gz 67095329 BLAKE2B fec8a663845ad67374c8a230d1590fa9e5079460198f41cee3b788aaa1c72e8ec9dcda48bc68a594f15003d11bf6617d46cc1a09c16b7a333587b43904a16ba6 SHA512 e0aceb56d1f38a7e6ab9fdaac5063fd20c5b3a162ffb6eddd0e6dc7dff9b724bfe31363493a9437e9f9d5421a534b375960fcb31e903a4901a0fa94ed8511294
31 DIST regressiontests-2016.5.tar.gz 67641413 BLAKE2B 4fcd30c198f3acbbabf1104c040d9a686de49536a97dbeb14732bfa0ed3cf37aa61b1b0f45393668985b993d1f1862a8985e416af819cf9793f5964f3e4f43cc SHA512 31764fd99cc4185d61de5d4443ee482c27b13533451a24aa0e4899997ce275a63685424eafacae38b1a3ffd4ce0d5ebe02a90348953b04c104f91376f0edfdff
32 DIST regressiontests-2018.3.tar.gz 67857855 BLAKE2B acd7a05ae79d1b4eb47d0c68a3fec9ee19f028a5019f39c37a033f48cf6da2a468375180ad6ceca9ac4f685a8bead38550663a47d6427b51f84c32a5c810e5f0 SHA512 57980d49efe6dcc3b3d14b5913a30c68fc1de5b679ef986fec1a149c76f67139b0299c3ee2825451461294fab5f345c7ad4f42e90f8991b81aafe9c369f3ff0b
33 DIST regressiontests-2018.4.tar.gz 67860326 BLAKE2B 0160f701a8fa14ba4f175f4fca9894104bc5cc6aa5f02ac57200fd5a8f74a29b595df609e704cb70fcd9a03529bcf758fb4547e35557a45c0546d819c2681983 SHA512 baaac0c918684216ada5254a7c3a1f5b3ea00b1a63d6085d569095139b2a0c9de4ed330d4694f7eaedab729ed5dcea547390781b3d2f7c2ffdf02e0541a90efe
34 DIST regressiontests-2019.tar.gz 67597618 BLAKE2B fb950d8518cf1e28db5ebb99bdda8d269c5e43dd49a117bdaae9f00857abc7c096766fb90ff1d2d95a12a875ba2e243b707bfc81a45d07fc8b340a154cf2ad0f SHA512 081e56d052c0a0d021a8a1566f802911e261e1f2b5b2141350fe2372bcad0844042f26121167ed31a31490bd4e042068690c4905fcbc80b539686a074621fc5e
35 -DIST regressiontests-5.1.3.tar.gz 66994083 BLAKE2B 7009f65ad0138664ac84e57f8bc7cce5d18a59f99943e56b6642583120bfce279e005ac0bacd2db8904ea477a48e2b938c64de46a65fa5d08fce6009d53583c3 SHA512 486e86eb3b75bae822abe82dac4e1098aa13723bd04214021f835a2f0b847303f015a9ececc33aa5ae63d31a2eeae07e512f22464b6c0e26d1286b0781578022
36
37 diff --git a/sci-chemistry/gromacs/gromacs-5.1.3.ebuild b/sci-chemistry/gromacs/gromacs-5.1.3.ebuild
38 deleted file mode 100644
39 index 0b84b86b413..00000000000
40 --- a/sci-chemistry/gromacs/gromacs-5.1.3.ebuild
41 +++ /dev/null
42 @@ -1,267 +0,0 @@
43 -# Copyright 1999-2018 Gentoo Authors
44 -# Distributed under the terms of the GNU General Public License v2
45 -
46 -EAPI=6
47 -
48 -CMAKE_MAKEFILE_GENERATOR="ninja"
49 -
50 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
51 -
52 -if [[ $PV = *9999* ]]; then
53 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
54 - https://gerrit.gromacs.org/gromacs.git
55 - https://github.com/gromacs/gromacs.git
56 - http://repo.or.cz/r/gromacs.git"
57 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
58 - inherit git-r3
59 -else
60 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
61 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
62 - KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
63 -fi
64 -
65 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
66 -
67 -DESCRIPTION="The ultimate molecular dynamics simulation package"
68 -HOMEPAGE="http://www.gromacs.org/"
69 -
70 -# see COPYING for details
71 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
72 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
73 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
74 -SLOT="0/${PV}"
75 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
76 -
77 -CDEPEND="
78 - X? (
79 - x11-libs/libX11
80 - x11-libs/libSM
81 - x11-libs/libICE
82 - )
83 - blas? ( virtual/blas )
84 - boost? ( >=dev-libs/boost-1.55 )
85 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
86 - fftw? ( sci-libs/fftw:3.0 )
87 - lapack? ( virtual/lapack )
88 - mkl? ( sci-libs/mkl )
89 - mpi? ( virtual/mpi )
90 - "
91 -DEPEND="${CDEPEND}
92 - virtual/pkgconfig
93 - doc? (
94 - app-doc/doxygen
95 - dev-texlive/texlive-latex
96 - dev-texlive/texlive-latexextra
97 - media-gfx/imagemagick
98 - )"
99 -RDEPEND="${CDEPEND}"
100 -
101 -REQUIRED_USE="
102 - || ( single-precision double-precision )
103 - cuda? ( single-precision )
104 - mkl? ( !blas !fftw !lapack )"
105 -
106 -DOCS=( AUTHORS README )
107 -
108 -if [[ ${PV} != *9999 ]]; then
109 - S="${WORKDIR}/${PN}-${PV/_/-}"
110 -fi
111 -
112 -pkg_pretend() {
113 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
114 - use openmp && ! tc-has-openmp && \
115 - die "Please switch to an openmp compatible compiler"
116 -}
117 -
118 -src_unpack() {
119 - if [[ ${PV} != *9999 ]]; then
120 - default
121 - else
122 - git-r3_src_unpack
123 - if use test; then
124 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
125 - EGIT_BRANCH="${EGIT_BRANCH}" \
126 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
127 - git-r3_src_unpack
128 - fi
129 - fi
130 -}
131 -
132 -src_prepare() {
133 - #notes/todos
134 - # -on apple: there is framework support
135 -
136 - cmake-utils_src_prepare
137 -
138 - use cuda && cuda_src_prepare
139 -
140 - GMX_DIRS=""
141 - use single-precision && GMX_DIRS+=" float"
142 - use double-precision && GMX_DIRS+=" double"
143 -
144 - if use test; then
145 - for x in ${GMX_DIRS}; do
146 - mkdir -p "${WORKDIR}/${P}_${x}" || die
147 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
148 - done
149 - fi
150 -
151 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
152 -}
153 -
154 -src_configure() {
155 - local mycmakeargs_pre=( ) extra fft_opts=( )
156 -
157 - #go from slowest to fastest acceleration
158 - local acce="None"
159 - use cpu_flags_x86_sse2 && acce="SSE2"
160 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
161 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
162 - use cpu_flags_x86_avx && acce="AVX_256"
163 - use cpu_flags_x86_avx2 && acce="AVX2_256"
164 -
165 - #to create man pages, build tree binaries are executed (bug #398437)
166 - [[ ${CHOST} = *-darwin* ]] && \
167 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
168 -
169 - if use fftw; then
170 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
171 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
172 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
173 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
174 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
175 - )
176 - elif use mkl; then
177 - local bits=$(get_libdir)
178 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
179 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
180 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
181 - )
182 - else
183 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
184 - fi
185 -
186 - mycmakeargs_pre+=(
187 - "${fft_opts[@]}"
188 - -DGMX_X11=$(usex X)
189 - -DGMX_EXTERNAL_BLAS=$(usex blas)
190 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
191 - -DGMX_OPENMP=$(usex openmp)
192 - -DGMX_COOL_QUOTES=$(usex offensive)
193 - -DGMX_EXTERNAL_BOOST=$(usex boost)
194 - -DGMX_USE_TNG=$(usex tng)
195 - -DGMX_BUILD_MANUAL=$(usex doc)
196 - -DGMX_DEFAULT_SUFFIX=off
197 - -DGMX_SIMD="$acce"
198 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
199 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
200 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
201 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
202 - -DBUILD_TESTING=$(usex test)
203 - -DGMX_BUILD_UNITTESTS=$(usex test)
204 - ${extra}
205 - )
206 -
207 - for x in ${GMX_DIRS}; do
208 - einfo "Configuring for ${x} precision"
209 - local suffix=""
210 - #if we build single and double - double is suffixed
211 - use double-precision && use single-precision && \
212 - [[ ${x} = "double" ]] && suffix="_d"
213 - local p
214 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
215 - local cuda=( "-DGMX_GPU=OFF" )
216 - [[ ${x} = "float" ]] && use cuda && \
217 - cuda=( -DGMX_GPU=ON )
218 - mycmakeargs=(
219 - ${mycmakeargs_pre[@]} ${p}
220 - -DGMX_MPI=OFF
221 - -DGMX_THREAD_MPI=$(usex threads)
222 - "${cuda[@]}"
223 - -DGMX_OPENMM=OFF
224 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
225 - -DGMX_BINARY_SUFFIX="${suffix}"
226 - -DGMX_LIBS_SUFFIX="${suffix}"
227 - )
228 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
229 - [[ ${CHOST} != *-darwin* ]] || \
230 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
231 - use mpi || continue
232 - einfo "Configuring for ${x} precision with mpi"
233 - mycmakeargs=(
234 - ${mycmakeargs_pre[@]} ${p}
235 - -DGMX_THREAD_MPI=OFF
236 - -DGMX_MPI=ON ${cuda}
237 - -DGMX_OPENMM=OFF
238 - -DGMX_BUILD_MDRUN_ONLY=ON
239 - -DBUILD_SHARED_LIBS=OFF
240 - -DGMX_BUILD_MANUAL=OFF
241 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
242 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
243 - )
244 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
245 - [[ ${CHOST} != *-darwin* ]] || \
246 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
247 - done
248 -}
249 -
250 -src_compile() {
251 - for x in ${GMX_DIRS}; do
252 - einfo "Compiling for ${x} precision"
253 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
254 - cmake-utils_src_compile
255 - # not 100% necessary for rel ebuilds as available from website
256 - if use doc; then
257 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
258 - cmake-utils_src_compile manual
259 - fi
260 - use mpi || continue
261 - einfo "Compiling for ${x} precision with mpi"
262 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
263 - cmake-utils_src_compile
264 - done
265 -}
266 -
267 -src_test() {
268 - for x in ${GMX_DIRS}; do
269 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
270 - cmake-utils_src_make check
271 - done
272 -}
273 -
274 -src_install() {
275 - for x in ${GMX_DIRS}; do
276 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
277 - cmake-utils_src_install
278 - if use doc; then
279 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
280 - fi
281 - use mpi || continue
282 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
283 - cmake-utils_src_install
284 - done
285 -
286 - if use tng; then
287 - insinto /usr/include/tng
288 - doins src/external/tng_io/include/tng/*h
289 - fi
290 - # drop unneeded stuff
291 - rm "${ED}"usr/bin/GMXRC* || die
292 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
293 - local n=${x##*/gmx-completion-}
294 - n="${n%.bash}"
295 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
296 - newbashcomp "${T}"/"${n}" "${n}"
297 - done
298 - rm "${ED}"usr/bin/gmx-completion*.bash || die
299 - readme.gentoo_create_doc
300 -}
301 -
302 -pkg_postinst() {
303 - einfo
304 - einfo "Please read and cite:"
305 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
306 - einfo "https://dx.doi.org/10.1021/ct700301q"
307 - einfo
308 - readme.gentoo_print_elog
309 -}
310
311 diff --git a/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild b/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild
312 deleted file mode 100644
313 index 0b84b86b413..00000000000
314 --- a/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild
315 +++ /dev/null
316 @@ -1,267 +0,0 @@
317 -# Copyright 1999-2018 Gentoo Authors
318 -# Distributed under the terms of the GNU General Public License v2
319 -
320 -EAPI=6
321 -
322 -CMAKE_MAKEFILE_GENERATOR="ninja"
323 -
324 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
325 -
326 -if [[ $PV = *9999* ]]; then
327 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
328 - https://gerrit.gromacs.org/gromacs.git
329 - https://github.com/gromacs/gromacs.git
330 - http://repo.or.cz/r/gromacs.git"
331 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
332 - inherit git-r3
333 -else
334 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
335 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
336 - KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
337 -fi
338 -
339 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
340 -
341 -DESCRIPTION="The ultimate molecular dynamics simulation package"
342 -HOMEPAGE="http://www.gromacs.org/"
343 -
344 -# see COPYING for details
345 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
346 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
347 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
348 -SLOT="0/${PV}"
349 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
350 -
351 -CDEPEND="
352 - X? (
353 - x11-libs/libX11
354 - x11-libs/libSM
355 - x11-libs/libICE
356 - )
357 - blas? ( virtual/blas )
358 - boost? ( >=dev-libs/boost-1.55 )
359 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
360 - fftw? ( sci-libs/fftw:3.0 )
361 - lapack? ( virtual/lapack )
362 - mkl? ( sci-libs/mkl )
363 - mpi? ( virtual/mpi )
364 - "
365 -DEPEND="${CDEPEND}
366 - virtual/pkgconfig
367 - doc? (
368 - app-doc/doxygen
369 - dev-texlive/texlive-latex
370 - dev-texlive/texlive-latexextra
371 - media-gfx/imagemagick
372 - )"
373 -RDEPEND="${CDEPEND}"
374 -
375 -REQUIRED_USE="
376 - || ( single-precision double-precision )
377 - cuda? ( single-precision )
378 - mkl? ( !blas !fftw !lapack )"
379 -
380 -DOCS=( AUTHORS README )
381 -
382 -if [[ ${PV} != *9999 ]]; then
383 - S="${WORKDIR}/${PN}-${PV/_/-}"
384 -fi
385 -
386 -pkg_pretend() {
387 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
388 - use openmp && ! tc-has-openmp && \
389 - die "Please switch to an openmp compatible compiler"
390 -}
391 -
392 -src_unpack() {
393 - if [[ ${PV} != *9999 ]]; then
394 - default
395 - else
396 - git-r3_src_unpack
397 - if use test; then
398 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
399 - EGIT_BRANCH="${EGIT_BRANCH}" \
400 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
401 - git-r3_src_unpack
402 - fi
403 - fi
404 -}
405 -
406 -src_prepare() {
407 - #notes/todos
408 - # -on apple: there is framework support
409 -
410 - cmake-utils_src_prepare
411 -
412 - use cuda && cuda_src_prepare
413 -
414 - GMX_DIRS=""
415 - use single-precision && GMX_DIRS+=" float"
416 - use double-precision && GMX_DIRS+=" double"
417 -
418 - if use test; then
419 - for x in ${GMX_DIRS}; do
420 - mkdir -p "${WORKDIR}/${P}_${x}" || die
421 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
422 - done
423 - fi
424 -
425 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
426 -}
427 -
428 -src_configure() {
429 - local mycmakeargs_pre=( ) extra fft_opts=( )
430 -
431 - #go from slowest to fastest acceleration
432 - local acce="None"
433 - use cpu_flags_x86_sse2 && acce="SSE2"
434 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
435 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
436 - use cpu_flags_x86_avx && acce="AVX_256"
437 - use cpu_flags_x86_avx2 && acce="AVX2_256"
438 -
439 - #to create man pages, build tree binaries are executed (bug #398437)
440 - [[ ${CHOST} = *-darwin* ]] && \
441 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
442 -
443 - if use fftw; then
444 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
445 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
446 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
447 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
448 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
449 - )
450 - elif use mkl; then
451 - local bits=$(get_libdir)
452 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
453 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
454 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
455 - )
456 - else
457 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
458 - fi
459 -
460 - mycmakeargs_pre+=(
461 - "${fft_opts[@]}"
462 - -DGMX_X11=$(usex X)
463 - -DGMX_EXTERNAL_BLAS=$(usex blas)
464 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
465 - -DGMX_OPENMP=$(usex openmp)
466 - -DGMX_COOL_QUOTES=$(usex offensive)
467 - -DGMX_EXTERNAL_BOOST=$(usex boost)
468 - -DGMX_USE_TNG=$(usex tng)
469 - -DGMX_BUILD_MANUAL=$(usex doc)
470 - -DGMX_DEFAULT_SUFFIX=off
471 - -DGMX_SIMD="$acce"
472 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
473 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
474 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
475 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
476 - -DBUILD_TESTING=$(usex test)
477 - -DGMX_BUILD_UNITTESTS=$(usex test)
478 - ${extra}
479 - )
480 -
481 - for x in ${GMX_DIRS}; do
482 - einfo "Configuring for ${x} precision"
483 - local suffix=""
484 - #if we build single and double - double is suffixed
485 - use double-precision && use single-precision && \
486 - [[ ${x} = "double" ]] && suffix="_d"
487 - local p
488 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
489 - local cuda=( "-DGMX_GPU=OFF" )
490 - [[ ${x} = "float" ]] && use cuda && \
491 - cuda=( -DGMX_GPU=ON )
492 - mycmakeargs=(
493 - ${mycmakeargs_pre[@]} ${p}
494 - -DGMX_MPI=OFF
495 - -DGMX_THREAD_MPI=$(usex threads)
496 - "${cuda[@]}"
497 - -DGMX_OPENMM=OFF
498 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
499 - -DGMX_BINARY_SUFFIX="${suffix}"
500 - -DGMX_LIBS_SUFFIX="${suffix}"
501 - )
502 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
503 - [[ ${CHOST} != *-darwin* ]] || \
504 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
505 - use mpi || continue
506 - einfo "Configuring for ${x} precision with mpi"
507 - mycmakeargs=(
508 - ${mycmakeargs_pre[@]} ${p}
509 - -DGMX_THREAD_MPI=OFF
510 - -DGMX_MPI=ON ${cuda}
511 - -DGMX_OPENMM=OFF
512 - -DGMX_BUILD_MDRUN_ONLY=ON
513 - -DBUILD_SHARED_LIBS=OFF
514 - -DGMX_BUILD_MANUAL=OFF
515 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
516 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
517 - )
518 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
519 - [[ ${CHOST} != *-darwin* ]] || \
520 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
521 - done
522 -}
523 -
524 -src_compile() {
525 - for x in ${GMX_DIRS}; do
526 - einfo "Compiling for ${x} precision"
527 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
528 - cmake-utils_src_compile
529 - # not 100% necessary for rel ebuilds as available from website
530 - if use doc; then
531 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
532 - cmake-utils_src_compile manual
533 - fi
534 - use mpi || continue
535 - einfo "Compiling for ${x} precision with mpi"
536 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
537 - cmake-utils_src_compile
538 - done
539 -}
540 -
541 -src_test() {
542 - for x in ${GMX_DIRS}; do
543 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
544 - cmake-utils_src_make check
545 - done
546 -}
547 -
548 -src_install() {
549 - for x in ${GMX_DIRS}; do
550 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
551 - cmake-utils_src_install
552 - if use doc; then
553 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
554 - fi
555 - use mpi || continue
556 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
557 - cmake-utils_src_install
558 - done
559 -
560 - if use tng; then
561 - insinto /usr/include/tng
562 - doins src/external/tng_io/include/tng/*h
563 - fi
564 - # drop unneeded stuff
565 - rm "${ED}"usr/bin/GMXRC* || die
566 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
567 - local n=${x##*/gmx-completion-}
568 - n="${n%.bash}"
569 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
570 - newbashcomp "${T}"/"${n}" "${n}"
571 - done
572 - rm "${ED}"usr/bin/gmx-completion*.bash || die
573 - readme.gentoo_create_doc
574 -}
575 -
576 -pkg_postinst() {
577 - einfo
578 - einfo "Please read and cite:"
579 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
580 - einfo "https://dx.doi.org/10.1021/ct700301q"
581 - einfo
582 - readme.gentoo_print_elog
583 -}
584
585 diff --git a/sci-chemistry/gromacs/metadata.xml b/sci-chemistry/gromacs/metadata.xml
586 index dce564d8220..493fbfa5be6 100644
587 --- a/sci-chemistry/gromacs/metadata.xml
588 +++ b/sci-chemistry/gromacs/metadata.xml
589 @@ -14,7 +14,6 @@
590 <flag name="opencl">Enable opencl non-bonded kernels</flag>
591 <flag name="double-precision">More precise calculations at the expense of speed</flag>
592 <flag name="single-precision">Single precision version of gromacs (default)</flag>
593 - <flag name="boost">Enable external boost library</flag>
594 <flag name="hwloc">Enable HWLoc lib support</flag>
595 <flag name="tng">Enable new trajectory format - tng</flag>
596 <flag name="lmfit">Use external <pkg>sci-libs/lmfit</pkg></flag>