Gentoo Archives: gentoo-commits

From: Christoph Junghans <ottxor@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
Date: Wed, 13 Jul 2016 17:07:19
Message-Id: 1468429624.ab729bfefd782d9a22fb11f00b5de82e5cde502c.ottxor@gentoo
1 commit: ab729bfefd782d9a22fb11f00b5de82e5cde502c
2 Author: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jul 13 17:07:04 2016 +0000
4 Commit: Christoph Junghans <ottxor <AT> gentoo <DOT> org>
5 CommitDate: Wed Jul 13 17:07:04 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=ab729bfe
7
8 sci-chemistry/gromacs: moved to gx86
9
10 .../files/gromacs-4.5.7-cmake-cpp-asm.patch | 43 ----
11 sci-chemistry/gromacs/gromacs-2016.9999.ebuild | 266 -------------------
12 sci-chemistry/gromacs/gromacs-2016_rc1.ebuild | 266 -------------------
13 sci-chemistry/gromacs/gromacs-4.6.9999.ebuild | 263 -------------------
14 sci-chemistry/gromacs/gromacs-5.0.9999.ebuild | 284 ---------------------
15 sci-chemistry/gromacs/gromacs-5.1.9999.ebuild | 269 -------------------
16 sci-chemistry/gromacs/gromacs-9999.ebuild | 266 -------------------
17 sci-chemistry/gromacs/metadata.xml | 28 --
18 8 files changed, 1685 deletions(-)
19
20 diff --git a/sci-chemistry/gromacs/files/gromacs-4.5.7-cmake-cpp-asm.patch b/sci-chemistry/gromacs/files/gromacs-4.5.7-cmake-cpp-asm.patch
21 deleted file mode 100644
22 index f39921f..0000000
23 --- a/sci-chemistry/gromacs/files/gromacs-4.5.7-cmake-cpp-asm.patch
24 +++ /dev/null
25 @@ -1,43 +0,0 @@
26 -diff -Naur gromacs-4.5.7.orig/cmake/CMakeASM-ATTInformation.cmake gromacs-4.5.7/cmake/CMakeASM-ATTInformation.cmake
27 ---- gromacs-4.5.7.orig/cmake/CMakeASM-ATTInformation.cmake 1969-12-31 17:00:00.000000000 -0700
28 -+++ gromacs-4.5.7/cmake/CMakeASM-ATTInformation.cmake 2013-05-03 10:47:52.779868731 -0600
29 -@@ -0,0 +1,13 @@
30 -+
31 -+# This a modified version of CMakeASMInformation.cmake coming with cmake 2.8.6, which
32 -+# supports .S files
33 -+
34 -+# support for AT&T syntax assemblers, e.g. GNU as
35 -+
36 -+SET(ASM_DIALECT "-ATT")
37 -+SET(CMAKE_ASM${ASM_DIALECT}_SOURCE_FILE_EXTENSIONS S;s;asm)
38 -+
39 -+SET(CMAKE_ASM${ASM_DIALECT}_COMPILE_OBJECT "<CMAKE_ASM${ASM_DIALECT}_COMPILER> <FLAGS> -o <OBJECT> <SOURCE>")
40 -+
41 -+INCLUDE(CMakeASMInformation)
42 -+SET(ASM_DIALECT)
43 -diff -Naur gromacs-4.5.7.orig/src/gmxlib/CMakeLists.txt gromacs-4.5.7/src/gmxlib/CMakeLists.txt
44 ---- gromacs-4.5.7.orig/src/gmxlib/CMakeLists.txt 2013-05-03 10:46:29.029305075 -0600
45 -+++ gromacs-4.5.7/src/gmxlib/CMakeLists.txt 2013-05-03 10:50:34.630582295 -0600
46 -@@ -47,18 +47,18 @@
47 - if(GMX_IA32_ASM)
48 - file(GLOB GMX_SSEKERNEL_C_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*.c)
49 - if(GMX_ASM_USEASM_NASM)
50 -- file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*intel_syntax*.s)
51 -+ file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*intel_syntax*.S)
52 - else()
53 -- file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_ia32_${SSETYPE}/*asm.s)
54 -+ file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_ia32_${SSETYPE}/*${SSETYPE}.S nonbonded/nb_kernel_ia32_${SSETYPE}/*asm.S)
55 - endif()
56 - endif(GMX_IA32_ASM)
57 -
58 - if(GMX_X86_64_ASM)
59 - file(GLOB GMX_SSEKERNEL_C_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*.c)
60 - if(GMX_ASM_USEASM_NASM)
61 -- file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*intel_syntax*.s)
62 -+ file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*intel_syntax*.S)
63 - else()
64 -- file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*${SSETYPE}.s nonbonded/nb_kernel_x86_64_${SSETYPE}/*asm.s)
65 -+ file(GLOB GMX_SSEKERNEL_ASM_SRC nonbonded/nb_kernel_x86_64_${SSETYPE}/*${SSETYPE}.S nonbonded/nb_kernel_x86_64_${SSETYPE}/*asm.S)
66 - endif()
67 - endif(GMX_X86_64_ASM)
68 -
69
70 diff --git a/sci-chemistry/gromacs/gromacs-2016.9999.ebuild b/sci-chemistry/gromacs/gromacs-2016.9999.ebuild
71 deleted file mode 100644
72 index 1ca0343..0000000
73 --- a/sci-chemistry/gromacs/gromacs-2016.9999.ebuild
74 +++ /dev/null
75 @@ -1,266 +0,0 @@
76 -# Copyright 1999-2016 Gentoo Foundation
77 -# Distributed under the terms of the GNU General Public License v2
78 -# $Id$
79 -
80 -EAPI=6
81 -
82 -CMAKE_MAKEFILE_GENERATOR="ninja"
83 -
84 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
85 -
86 -if [[ $PV = *9999* ]]; then
87 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
88 - https://gerrit.gromacs.org/gromacs.git
89 - git://github.com/gromacs/gromacs.git
90 - http://repo.or.cz/r/gromacs.git"
91 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
92 - inherit git-r3
93 - KEYWORDS=""
94 -else
95 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
96 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV/_/-}.tar.gz )"
97 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
98 -fi
99 -
100 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
101 -
102 -DESCRIPTION="The ultimate molecular dynamics simulation package"
103 -HOMEPAGE="http://www.gromacs.org/"
104 -
105 -# see COPYING for details
106 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
107 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
108 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
109 -SLOT="0/${PV}"
110 -IUSE="X blas cuda +doc -double-precision +fftw +hwloc lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
111 -
112 -CDEPEND="
113 - X? (
114 - x11-libs/libX11
115 - x11-libs/libSM
116 - x11-libs/libICE
117 - )
118 - blas? ( virtual/blas )
119 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
120 - fftw? ( sci-libs/fftw:3.0 )
121 - hwloc? ( sys-apps/hwloc )
122 - lapack? ( virtual/lapack )
123 - mkl? ( sci-libs/mkl )
124 - mpi? ( virtual/mpi )
125 - "
126 -DEPEND="${CDEPEND}
127 - virtual/pkgconfig
128 - doc? (
129 - app-doc/doxygen
130 - dev-texlive/texlive-latex
131 - dev-texlive/texlive-latexextra
132 - media-gfx/imagemagick
133 - )"
134 -RDEPEND="${CDEPEND}"
135 -
136 -REQUIRED_USE="
137 - || ( single-precision double-precision )
138 - cuda? ( single-precision )
139 - mkl? ( !blas !fftw !lapack )"
140 -
141 -DOCS=( AUTHORS README )
142 -
143 -if [[ ${PV} != *9999 ]]; then
144 - S="${WORKDIR}/${PN}-${PV/_/-}"
145 -fi
146 -
147 -pkg_pretend() {
148 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
149 - use openmp && ! tc-has-openmp && \
150 - die "Please switch to an openmp compatible compiler"
151 -}
152 -
153 -src_unpack() {
154 - if [[ ${PV} != *9999 ]]; then
155 - default
156 - else
157 - git-r3_src_unpack
158 - if use test; then
159 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
160 - EGIT_BRANCH="${EGIT_BRANCH}" \
161 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
162 - git-r3_src_unpack
163 - fi
164 - fi
165 -}
166 -
167 -src_prepare() {
168 - #notes/todos
169 - # -on apple: there is framework support
170 -
171 - cmake-utils_src_prepare
172 -
173 - use cuda && cuda_src_prepare
174 -
175 - GMX_DIRS=""
176 - use single-precision && GMX_DIRS+=" float"
177 - use double-precision && GMX_DIRS+=" double"
178 -
179 - if use test; then
180 - for x in ${GMX_DIRS}; do
181 - mkdir -p "${WORKDIR}/${P}_${x}" || die
182 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
183 - done
184 - fi
185 -
186 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
187 -}
188 -
189 -src_configure() {
190 - local mycmakeargs_pre=( ) extra fft_opts=( )
191 -
192 - #go from slowest to fastest acceleration
193 - local acce="None"
194 - use cpu_flags_x86_sse2 && acce="SSE2"
195 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
196 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
197 - use cpu_flags_x86_avx && acce="AVX_256"
198 - use cpu_flags_x86_avx2 && acce="AVX2_256"
199 -
200 - #to create man pages, build tree binaries are executed (bug #398437)
201 - [[ ${CHOST} = *-darwin* ]] && \
202 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
203 -
204 - if use fftw; then
205 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
206 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
207 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
208 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
209 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
210 - )
211 - elif use mkl; then
212 - local bits=$(get_libdir)
213 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
214 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
215 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
216 - )
217 - else
218 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
219 - fi
220 -
221 - mycmakeargs_pre+=(
222 - "${fft_opts[@]}"
223 - -DGMX_X11=$(usex X)
224 - -DGMX_EXTERNAL_BLAS=$(usex blas)
225 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
226 - -DGMX_OPENMP=$(usex openmp)
227 - -DGMX_COOL_QUOTES=$(usex offensive)
228 - -DGMX_USE_TNG=$(usex tng)
229 - -DGMX_BUILD_MANUAL=$(usex doc)
230 - -DGMX_HWLOC=$(usex hwloc)
231 - -DGMX_DEFAULT_SUFFIX=off
232 - -DGMX_SIMD="$acce"
233 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
234 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
235 - -DBUILD_TESTING=OFF
236 - -DGMX_BUILD_UNITTESTS=OFF
237 - ${extra}
238 - )
239 -
240 - for x in ${GMX_DIRS}; do
241 - einfo "Configuring for ${x} precision"
242 - local suffix=""
243 - #if we build single and double - double is suffixed
244 - use double-precision && use single-precision && \
245 - [[ ${x} = "double" ]] && suffix="_d"
246 - local p
247 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
248 - local cuda=( "-DGMX_GPU=OFF" )
249 - [[ ${x} = "float" ]] && use cuda && \
250 - cuda=( -DGMX_GPU=ON )
251 - mycmakeargs=(
252 - ${mycmakeargs_pre[@]} ${p}
253 - -DGMX_MPI=OFF
254 - -DGMX_THREAD_MPI=$(usex threads)
255 - "${cuda[@]}"
256 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
257 - -DGMX_BINARY_SUFFIX="${suffix}"
258 - -DGMX_LIBS_SUFFIX="${suffix}"
259 - )
260 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
261 - [[ ${CHOST} != *-darwin* ]] || \
262 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
263 - use mpi || continue
264 - einfo "Configuring for ${x} precision with mpi"
265 - mycmakeargs=(
266 - ${mycmakeargs_pre[@]} ${p}
267 - -DGMX_THREAD_MPI=OFF
268 - -DGMX_MPI=ON ${cuda}
269 - -DGMX_OPENMM=OFF
270 - -DGMX_BUILD_MDRUN_ONLY=ON
271 - -DBUILD_SHARED_LIBS=OFF
272 - -DGMX_BUILD_MANUAL=OFF
273 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
274 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
275 - )
276 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
277 - [[ ${CHOST} != *-darwin* ]] || \
278 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
279 - done
280 -}
281 -
282 -src_compile() {
283 - for x in ${GMX_DIRS}; do
284 - einfo "Compiling for ${x} precision"
285 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
286 - cmake-utils_src_compile
287 - # not 100% necessary for rel ebuilds as available from website
288 - if use doc; then
289 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
290 - cmake-utils_src_compile manual
291 - fi
292 - use mpi || continue
293 - einfo "Compiling for ${x} precision with mpi"
294 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
295 - cmake-utils_src_compile
296 - done
297 -}
298 -
299 -src_test() {
300 - for x in ${GMX_DIRS}; do
301 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
302 - cmake-utils_src_make check
303 - done
304 -}
305 -
306 -src_install() {
307 - for x in ${GMX_DIRS}; do
308 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
309 - cmake-utils_src_install
310 - if use doc; then
311 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
312 - fi
313 - use mpi || continue
314 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
315 - cmake-utils_src_install
316 - done
317 -
318 - if use tng; then
319 - insinto /usr/include/tng
320 - doins src/external/tng_io/include/tng/*h
321 - fi
322 - # drop unneeded stuff
323 - rm "${ED}"usr/bin/GMXRC* || die
324 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
325 - local n=${x##*/gmx-completion-}
326 - n="${n%.bash}"
327 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
328 - newbashcomp "${T}"/"${n}" "${n}"
329 - done
330 - rm "${ED}"usr/bin/gmx-completion*.bash || die
331 - readme.gentoo_create_doc
332 -}
333 -
334 -pkg_postinst() {
335 - einfo
336 - einfo "Please read and cite:"
337 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
338 - einfo "http://dx.doi.org/10.1021/ct700301q"
339 - einfo
340 - readme.gentoo_print_elog
341 -}
342
343 diff --git a/sci-chemistry/gromacs/gromacs-2016_rc1.ebuild b/sci-chemistry/gromacs/gromacs-2016_rc1.ebuild
344 deleted file mode 100644
345 index 1ca0343..0000000
346 --- a/sci-chemistry/gromacs/gromacs-2016_rc1.ebuild
347 +++ /dev/null
348 @@ -1,266 +0,0 @@
349 -# Copyright 1999-2016 Gentoo Foundation
350 -# Distributed under the terms of the GNU General Public License v2
351 -# $Id$
352 -
353 -EAPI=6
354 -
355 -CMAKE_MAKEFILE_GENERATOR="ninja"
356 -
357 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
358 -
359 -if [[ $PV = *9999* ]]; then
360 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
361 - https://gerrit.gromacs.org/gromacs.git
362 - git://github.com/gromacs/gromacs.git
363 - http://repo.or.cz/r/gromacs.git"
364 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
365 - inherit git-r3
366 - KEYWORDS=""
367 -else
368 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
369 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV/_/-}.tar.gz )"
370 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
371 -fi
372 -
373 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
374 -
375 -DESCRIPTION="The ultimate molecular dynamics simulation package"
376 -HOMEPAGE="http://www.gromacs.org/"
377 -
378 -# see COPYING for details
379 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
380 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
381 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
382 -SLOT="0/${PV}"
383 -IUSE="X blas cuda +doc -double-precision +fftw +hwloc lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
384 -
385 -CDEPEND="
386 - X? (
387 - x11-libs/libX11
388 - x11-libs/libSM
389 - x11-libs/libICE
390 - )
391 - blas? ( virtual/blas )
392 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
393 - fftw? ( sci-libs/fftw:3.0 )
394 - hwloc? ( sys-apps/hwloc )
395 - lapack? ( virtual/lapack )
396 - mkl? ( sci-libs/mkl )
397 - mpi? ( virtual/mpi )
398 - "
399 -DEPEND="${CDEPEND}
400 - virtual/pkgconfig
401 - doc? (
402 - app-doc/doxygen
403 - dev-texlive/texlive-latex
404 - dev-texlive/texlive-latexextra
405 - media-gfx/imagemagick
406 - )"
407 -RDEPEND="${CDEPEND}"
408 -
409 -REQUIRED_USE="
410 - || ( single-precision double-precision )
411 - cuda? ( single-precision )
412 - mkl? ( !blas !fftw !lapack )"
413 -
414 -DOCS=( AUTHORS README )
415 -
416 -if [[ ${PV} != *9999 ]]; then
417 - S="${WORKDIR}/${PN}-${PV/_/-}"
418 -fi
419 -
420 -pkg_pretend() {
421 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
422 - use openmp && ! tc-has-openmp && \
423 - die "Please switch to an openmp compatible compiler"
424 -}
425 -
426 -src_unpack() {
427 - if [[ ${PV} != *9999 ]]; then
428 - default
429 - else
430 - git-r3_src_unpack
431 - if use test; then
432 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
433 - EGIT_BRANCH="${EGIT_BRANCH}" \
434 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
435 - git-r3_src_unpack
436 - fi
437 - fi
438 -}
439 -
440 -src_prepare() {
441 - #notes/todos
442 - # -on apple: there is framework support
443 -
444 - cmake-utils_src_prepare
445 -
446 - use cuda && cuda_src_prepare
447 -
448 - GMX_DIRS=""
449 - use single-precision && GMX_DIRS+=" float"
450 - use double-precision && GMX_DIRS+=" double"
451 -
452 - if use test; then
453 - for x in ${GMX_DIRS}; do
454 - mkdir -p "${WORKDIR}/${P}_${x}" || die
455 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
456 - done
457 - fi
458 -
459 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
460 -}
461 -
462 -src_configure() {
463 - local mycmakeargs_pre=( ) extra fft_opts=( )
464 -
465 - #go from slowest to fastest acceleration
466 - local acce="None"
467 - use cpu_flags_x86_sse2 && acce="SSE2"
468 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
469 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
470 - use cpu_flags_x86_avx && acce="AVX_256"
471 - use cpu_flags_x86_avx2 && acce="AVX2_256"
472 -
473 - #to create man pages, build tree binaries are executed (bug #398437)
474 - [[ ${CHOST} = *-darwin* ]] && \
475 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
476 -
477 - if use fftw; then
478 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
479 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
480 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
481 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
482 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
483 - )
484 - elif use mkl; then
485 - local bits=$(get_libdir)
486 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
487 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
488 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
489 - )
490 - else
491 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
492 - fi
493 -
494 - mycmakeargs_pre+=(
495 - "${fft_opts[@]}"
496 - -DGMX_X11=$(usex X)
497 - -DGMX_EXTERNAL_BLAS=$(usex blas)
498 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
499 - -DGMX_OPENMP=$(usex openmp)
500 - -DGMX_COOL_QUOTES=$(usex offensive)
501 - -DGMX_USE_TNG=$(usex tng)
502 - -DGMX_BUILD_MANUAL=$(usex doc)
503 - -DGMX_HWLOC=$(usex hwloc)
504 - -DGMX_DEFAULT_SUFFIX=off
505 - -DGMX_SIMD="$acce"
506 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
507 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
508 - -DBUILD_TESTING=OFF
509 - -DGMX_BUILD_UNITTESTS=OFF
510 - ${extra}
511 - )
512 -
513 - for x in ${GMX_DIRS}; do
514 - einfo "Configuring for ${x} precision"
515 - local suffix=""
516 - #if we build single and double - double is suffixed
517 - use double-precision && use single-precision && \
518 - [[ ${x} = "double" ]] && suffix="_d"
519 - local p
520 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
521 - local cuda=( "-DGMX_GPU=OFF" )
522 - [[ ${x} = "float" ]] && use cuda && \
523 - cuda=( -DGMX_GPU=ON )
524 - mycmakeargs=(
525 - ${mycmakeargs_pre[@]} ${p}
526 - -DGMX_MPI=OFF
527 - -DGMX_THREAD_MPI=$(usex threads)
528 - "${cuda[@]}"
529 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
530 - -DGMX_BINARY_SUFFIX="${suffix}"
531 - -DGMX_LIBS_SUFFIX="${suffix}"
532 - )
533 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
534 - [[ ${CHOST} != *-darwin* ]] || \
535 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
536 - use mpi || continue
537 - einfo "Configuring for ${x} precision with mpi"
538 - mycmakeargs=(
539 - ${mycmakeargs_pre[@]} ${p}
540 - -DGMX_THREAD_MPI=OFF
541 - -DGMX_MPI=ON ${cuda}
542 - -DGMX_OPENMM=OFF
543 - -DGMX_BUILD_MDRUN_ONLY=ON
544 - -DBUILD_SHARED_LIBS=OFF
545 - -DGMX_BUILD_MANUAL=OFF
546 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
547 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
548 - )
549 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
550 - [[ ${CHOST} != *-darwin* ]] || \
551 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
552 - done
553 -}
554 -
555 -src_compile() {
556 - for x in ${GMX_DIRS}; do
557 - einfo "Compiling for ${x} precision"
558 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
559 - cmake-utils_src_compile
560 - # not 100% necessary for rel ebuilds as available from website
561 - if use doc; then
562 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
563 - cmake-utils_src_compile manual
564 - fi
565 - use mpi || continue
566 - einfo "Compiling for ${x} precision with mpi"
567 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
568 - cmake-utils_src_compile
569 - done
570 -}
571 -
572 -src_test() {
573 - for x in ${GMX_DIRS}; do
574 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
575 - cmake-utils_src_make check
576 - done
577 -}
578 -
579 -src_install() {
580 - for x in ${GMX_DIRS}; do
581 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
582 - cmake-utils_src_install
583 - if use doc; then
584 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
585 - fi
586 - use mpi || continue
587 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
588 - cmake-utils_src_install
589 - done
590 -
591 - if use tng; then
592 - insinto /usr/include/tng
593 - doins src/external/tng_io/include/tng/*h
594 - fi
595 - # drop unneeded stuff
596 - rm "${ED}"usr/bin/GMXRC* || die
597 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
598 - local n=${x##*/gmx-completion-}
599 - n="${n%.bash}"
600 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
601 - newbashcomp "${T}"/"${n}" "${n}"
602 - done
603 - rm "${ED}"usr/bin/gmx-completion*.bash || die
604 - readme.gentoo_create_doc
605 -}
606 -
607 -pkg_postinst() {
608 - einfo
609 - einfo "Please read and cite:"
610 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
611 - einfo "http://dx.doi.org/10.1021/ct700301q"
612 - einfo
613 - readme.gentoo_print_elog
614 -}
615
616 diff --git a/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild b/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild
617 deleted file mode 100644
618 index e00c4f9..0000000
619 --- a/sci-chemistry/gromacs/gromacs-4.6.9999.ebuild
620 +++ /dev/null
621 @@ -1,263 +0,0 @@
622 -# Copyright 1999-2016 Gentoo Foundation
623 -# Distributed under the terms of the GNU General Public License v2
624 -# $Id$
625 -
626 -EAPI=6
627 -
628 -TEST_PV="4.6.6"
629 -MANUAL_PV="4.6.6"
630 -
631 -CMAKE_MAKEFILE_GENERATOR="ninja"
632 -
633 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
634 -
635 -if [[ $PV = *9999* ]]; then
636 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
637 - https://gerrit.gromacs.org/gromacs.git
638 - git://github.com/gromacs/gromacs.git
639 - http://repo.or.cz/r/gromacs.git"
640 - EGIT_BRANCH="release-4-6"
641 - inherit git-r3
642 - LIVE_DEPEND="doc? (
643 - app-doc/doxygen
644 - dev-texlive/texlive-latex
645 - dev-texlive/texlive-latexextra
646 - media-gfx/imagemagick
647 - sys-apps/coreutils
648 - )"
649 - KEYWORDS=""
650 -else
651 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${P}.tar.gz
652 - doc? ( ftp://ftp.gromacs.org/pub/manual/manual-${MANUAL_PV}.pdf -> ${PN}-manual-${MANUAL_PV}.pdf )
653 - test? ( http://gerrit.gromacs.org/download/regressiontests-${TEST_PV}.tar.gz )"
654 - LIVE_DEPEND=""
655 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x86-macos"
656 -fi
657 -
658 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx"
659 -
660 -DESCRIPTION="The ultimate molecular dynamics simulation package"
661 -HOMEPAGE="http://www.gromacs.org/"
662 -
663 -# see COPYING for details
664 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
665 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
666 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
667 -SLOT="0/${PV}"
668 -IUSE="X blas cuda doc -double-precision +fftw gsl lapack mkl mpi +offensive openmp +single-precision test +threads zsh-completion ${ACCE_IUSE}"
669 -
670 -CDEPEND="
671 - X? (
672 - x11-libs/libX11
673 - x11-libs/libSM
674 - x11-libs/libICE
675 - )
676 - blas? ( virtual/blas )
677 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
678 - fftw? ( sci-libs/fftw:3.0 )
679 - gsl? ( sci-libs/gsl )
680 - lapack? ( virtual/lapack )
681 - mkl? ( sci-libs/mkl )
682 - mpi? ( virtual/mpi )"
683 -DEPEND="${CDEPEND}
684 - virtual/pkgconfig
685 - ${LIVE_DEPEND}
686 - doc? ( app-doc/doxygen )"
687 -RDEPEND="${CDEPEND}"
688 -
689 -REQUIRED_USE="
690 - || ( single-precision double-precision )
691 - cuda? ( single-precision )
692 - mkl? ( !blas !fftw !lapack )"
693 -
694 -DOCS=( AUTHORS README )
695 -HTML_DOCS=( "${ED}"/usr/share/gromacs/html/ )
696 -
697 -pkg_pretend() {
698 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
699 - use openmp && ! tc-has-openmp && \
700 - die "Please switch to an openmp compatible compiler"
701 -}
702 -
703 -src_unpack() {
704 - if [[ ${PV} != *9999 ]]; then
705 - default
706 - else
707 - git-r3_src_unpack
708 - if use doc; then
709 - EGIT_REPO_URI="git://git.gromacs.org/manual.git" \
710 - EGIT_BRANCH="release-4-6" EGIT_COMMIT="release-4-6" \
711 - EGIT_CHECKOUT_DIR="${WORKDIR}/manual"\
712 - git-r3_src_unpack
713 - fi
714 - if use test; then
715 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
716 - EGIT_BRANCH="release-4-6" EGIT_COMMIT="release-4-6" \
717 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
718 - git-r3_src_unpack
719 - fi
720 - fi
721 -}
722 -
723 -src_prepare() {
724 - #notes/todos
725 - # -on apple: there is framework support
726 -
727 - cmake-utils_src_prepare
728 -
729 - use cuda && cuda_src_prepare
730 -
731 - GMX_DIRS=""
732 - use single-precision && GMX_DIRS+=" float"
733 - use double-precision && GMX_DIRS+=" double"
734 -
735 - if use test; then
736 - for x in ${GMX_DIRS}; do
737 - mkdir -p "${WORKDIR}/${P}_${x}" || die
738 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
739 - done
740 - fi
741 -
742 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
743 -}
744 -
745 -src_configure() {
746 - local mycmakeargs_pre=( ) extra fft_opts=( )
747 -
748 - #go from slowest to fastest acceleration
749 - local acce="None"
750 - use cpu_flags_x86_sse2 && acce="SSE2"
751 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
752 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
753 - use cpu_flags_x86_avx && acce="AVX_256"
754 -
755 - #to create man pages, build tree binaries are executed (bug #398437)
756 - [[ ${CHOST} = *-darwin* ]] && \
757 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
758 -
759 - if use fftw; then
760 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
761 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
762 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
763 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
764 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
765 - )
766 - elif use mkl; then
767 - local bits=$(get_libdir)
768 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
769 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
770 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
771 - )
772 - else
773 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
774 - fi
775 -
776 - mycmakeargs_pre+=(
777 - "${fft_opts[@]}"
778 - -DGMX_X11=$(usex X)
779 - -DGMX_EXTERNAL_BLAS=$(usex blas)
780 - -DGMX_GSL=$(usex gsl)
781 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
782 - -DGMX_OPENMP=$(usex openmp)
783 - -DGMX_COOL_QUOTES=$(usex offensive)
784 - -DGMX_DEFAULT_SUFFIX=off
785 - -DGMX_ACCELERATION="$acce"
786 - -DGMXLIB="$(get_libdir)"
787 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
788 - -DGMX_PREFIX_LIBMD=ON
789 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
790 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
791 - ${extra}
792 - )
793 -
794 - for x in ${GMX_DIRS}; do
795 - einfo "Configuring for ${x} precision"
796 - local suffix=""
797 - #if we build single and double - double is suffixed
798 - use double-precision && use single-precision && \
799 - [[ ${x} = "double" ]] && suffix="_d"
800 - local p
801 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
802 - local cuda=( "-DGMX_GPU=OFF" )
803 - [[ ${x} = "float" ]] && use cuda && \
804 - cuda=( -DGMX_GPU=ON )
805 - mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_MPI=OFF
806 - -DGMX_THREAD_MPI=$(usex threads) "${cuda[@]}" -DGMX_OPENMM=OFF
807 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
808 - -DGMX_BINARY_SUFFIX="${suffix}" -DGMX_LIBS_SUFFIX="${suffix}" )
809 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
810 - use mpi || continue
811 - einfo "Configuring for ${x} precision with mpi"
812 - mycmakeargs=( ${mycmakeargs_pre[@]} ${p} -DGMX_THREAD_MPI=OFF
813 - -DGMX_MPI=ON ${cuda} -DGMX_OPENMM=OFF
814 - -DGMX_BINARY_SUFFIX="_mpi${suffix}" -DGMX_LIBS_SUFFIX="_mpi${suffix}" )
815 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
816 - done
817 -}
818 -
819 -src_compile() {
820 - for x in ${GMX_DIRS}; do
821 - einfo "Compiling for ${x} precision"
822 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
823 - cmake-utils_src_compile
824 - use mpi || continue
825 - einfo "Compiling for ${x} precision with mpi"
826 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
827 - cmake-utils_src_compile mdrun
828 - done
829 -}
830 -
831 -src_test() {
832 - for x in ${GMX_DIRS}; do
833 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
834 - cmake-utils_src_make check
835 - done
836 -}
837 -
838 -src_install() {
839 - for x in ${GMX_DIRS}; do
840 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
841 - cmake-utils_src_install
842 - #manual can only be build after gromacs was installed once in image
843 - if use doc && [[ $PV = *9999* && ! -d ${WORKDIR}/manual_build ]]; then
844 - mycmakeargs=( -DGMXBIN="${ED}"/usr/bin -DGMXSRC="${WORKDIR}/${P}" )
845 - BUILD_DIR="${WORKDIR}"/manual_build \
846 - CMAKE_USE_DIR="${WORKDIR}/manual" cmake-utils_src_configure
847 - [[ ${CHOST} = *-darwin* ]] && \
848 - export DYLD_LIBRARY_PATH="${DYLD_LIBRARY_PATH}${DYLD_LIBRARY_PATH:+:}${ED}/usr/$(get_libdir)"
849 - BUILD_DIR="${WORKDIR}"/manual_build cmake-utils_src_make
850 - [[ ${CHOST} = *-darwin* ]] && DYLD_LIBRARY_PATH="${ED}/usr/$(get_libdir)"
851 - newdoc "${WORKDIR}"/manual_build/gromacs.pdf "${PN}-manual-${PV}.pdf"
852 - fi
853 - use mpi || continue
854 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
855 - DESTDIR="${D}" cmake-utils_src_make install-mdrun
856 - done
857 -
858 - use doc && [[ $PV != *9999* ]] && dodoc "${DISTDIR}/${PN}-manual-${MANUAL_PV}.pdf"
859 - newbashcomp "${ED}"/usr/bin/completion.bash ${PN}
860 - if use zsh-completion ; then
861 - insinto /usr/share/zsh/site-functions
862 - newins "${ED}"/usr/bin/completion.zsh _${PN}
863 - fi
864 - rm -f "${ED}"usr/bin/completion.*
865 - rm -rf "${ED}"usr/share/gromacs/html
866 - rm -f "${ED}"usr/bin/g_options*
867 - rm -f "${ED}"usr/bin/GMXRC*
868 -
869 - readme.gentoo_create_doc
870 -}
871 -
872 -pkg_postinst() {
873 - einfo
874 - einfo "Please read and cite:"
875 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
876 - einfo "http://dx.doi.org/10.1021/ct700301q"
877 - if use offensive; then
878 - einfo
879 - einfo $(g_luck)
880 - einfo "For more Gromacs cool quotes (gcq) add g_luck to your .bashrc"
881 - fi
882 - einfo
883 - readme.gentoo_print_elog
884 -}
885
886 diff --git a/sci-chemistry/gromacs/gromacs-5.0.9999.ebuild b/sci-chemistry/gromacs/gromacs-5.0.9999.ebuild
887 deleted file mode 100644
888 index 5d1717e..0000000
889 --- a/sci-chemistry/gromacs/gromacs-5.0.9999.ebuild
890 +++ /dev/null
891 @@ -1,284 +0,0 @@
892 -# Copyright 1999-2016 Gentoo Foundation
893 -# Distributed under the terms of the GNU General Public License v2
894 -# $Id$
895 -
896 -EAPI=6
897 -
898 -CMAKE_MAKEFILE_GENERATOR="ninja"
899 -
900 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
901 -
902 -if [[ $PV = *9999* ]]; then
903 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
904 - https://gerrit.gromacs.org/gromacs.git
905 - git://github.com/gromacs/gromacs.git
906 - http://repo.or.cz/r/gromacs.git"
907 - EGIT_BRANCH="release-5-0"
908 - inherit git-r3
909 - KEYWORDS=""
910 -else
911 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
912 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
913 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
914 -fi
915 -
916 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
917 -
918 -DESCRIPTION="The ultimate molecular dynamics simulation package"
919 -HOMEPAGE="http://www.gromacs.org/"
920 -
921 -# see COPYING for details
922 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
923 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
924 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
925 -SLOT="0/${PV}"
926 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack +make-symlinks mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
927 -
928 -CDEPEND="
929 - X? (
930 - x11-libs/libX11
931 - x11-libs/libSM
932 - x11-libs/libICE
933 - )
934 - blas? ( virtual/blas )
935 - boost? ( >=dev-libs/boost-1.55 )
936 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
937 - fftw? ( sci-libs/fftw:3.0 )
938 - lapack? ( virtual/lapack )
939 - mkl? ( sci-libs/mkl )
940 - mpi? ( virtual/mpi )
941 - "
942 -DEPEND="${CDEPEND}
943 - virtual/pkgconfig
944 - doc? (
945 - app-doc/doxygen
946 - dev-texlive/texlive-latex
947 - dev-texlive/texlive-latexextra
948 - media-gfx/imagemagick
949 - )"
950 -RDEPEND="${CDEPEND}"
951 -
952 -REQUIRED_USE="
953 - || ( single-precision double-precision )
954 - cuda? ( single-precision )
955 - mkl? ( !blas !fftw !lapack )"
956 -
957 -DOCS=( AUTHORS README )
958 -
959 -if [[ ${PV} != *9999 ]]; then
960 - S="${WORKDIR}/${PN}-${PV/_/-}"
961 -fi
962 -
963 -pkg_pretend() {
964 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
965 - use openmp && ! tc-has-openmp && \
966 - die "Please switch to an openmp compatible compiler"
967 -}
968 -
969 -src_unpack() {
970 - if [[ ${PV} != *9999 ]]; then
971 - default
972 - else
973 - git-r3_src_unpack
974 - if use test; then
975 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
976 - EGIT_BRANCH="master" EGIT_COMMIT="master" \
977 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
978 - git-r3_src_unpack
979 - fi
980 - fi
981 -}
982 -
983 -src_prepare() {
984 - #notes/todos
985 - # -on apple: there is framework support
986 -
987 - cmake-utils_src_prepare
988 -
989 - use cuda && cuda_src_prepare
990 -
991 - GMX_DIRS=""
992 - use single-precision && GMX_DIRS+=" float"
993 - use double-precision && GMX_DIRS+=" double"
994 -
995 - if use test; then
996 - for x in ${GMX_DIRS}; do
997 - mkdir -p "${WORKDIR}/${P}_${x}" || die
998 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
999 - done
1000 - fi
1001 -
1002 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
1003 -}
1004 -
1005 -src_configure() {
1006 - local mycmakeargs_pre=( ) extra fft_opts=( )
1007 -
1008 - #go from slowest to fastest acceleration
1009 - local acce="None"
1010 - use cpu_flags_x86_sse2 && acce="SSE2"
1011 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
1012 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
1013 - use cpu_flags_x86_avx && acce="AVX_256"
1014 - use cpu_flags_x86_avx2 && acce="AVX2_256"
1015 -
1016 - #to create man pages, build tree binaries are executed (bug #398437)
1017 - [[ ${CHOST} = *-darwin* ]] && \
1018 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
1019 -
1020 - if use fftw; then
1021 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
1022 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
1023 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1024 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
1025 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
1026 - )
1027 - elif use mkl; then
1028 - local bits=$(get_libdir)
1029 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1030 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
1031 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
1032 - )
1033 - else
1034 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
1035 - fi
1036 -
1037 - mycmakeargs_pre+=(
1038 - "${fft_opts[@]}"
1039 - -DGMX_X11=$(usex X)
1040 - -DGMX_EXTERNAL_BLAS=$(usex blas)
1041 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
1042 - -DGMX_OPENMP=$(usex openmp)
1043 - -DGMX_COOL_QUOTES=$(usex offensive)
1044 - -DGMX_EXTERNAL_BOOST=$(usex boost)
1045 - -DGMX_USE_TNG=$(usex tng)
1046 - -DGMX_BUILD_MANUAL=$(usex doc)
1047 - -DGMX_SYMLINK_OLD_BINARY_NAMES=$(usex make-symlinks)
1048 - -DGMX_DEFAULT_SUFFIX=off
1049 - -DGMX_SIMD="$acce"
1050 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
1051 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
1052 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
1053 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
1054 - -DBUILD_TESTING=OFF
1055 - -DGMX_BUILD_UNITTESTS=OFF
1056 - ${extra}
1057 - )
1058 -
1059 - for x in ${GMX_DIRS}; do
1060 - einfo "Configuring for ${x} precision"
1061 - local suffix=""
1062 - #if we build single and double - double is suffixed
1063 - use double-precision && use single-precision && \
1064 - [[ ${x} = "double" ]] && suffix="_d"
1065 - local p
1066 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
1067 - local cuda=( "-DGMX_GPU=OFF" )
1068 - [[ ${x} = "float" ]] && use cuda && \
1069 - cuda=( -DGMX_GPU=ON )
1070 - mycmakeargs=(
1071 - ${mycmakeargs_pre[@]} ${p}
1072 - -DGMX_MPI=OFF
1073 - -DGMX_THREAD_MPI=$(usex threads)
1074 - "${cuda[@]}"
1075 - -DGMX_OPENMM=OFF
1076 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
1077 - -DGMX_BINARY_SUFFIX="${suffix}"
1078 - -DGMX_LIBS_SUFFIX="${suffix}"
1079 - )
1080 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
1081 - [[ ${CHOST} != *-darwin* ]] || \
1082 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
1083 - use mpi || continue
1084 - einfo "Configuring for ${x} precision with mpi"
1085 - mycmakeargs=(
1086 - ${mycmakeargs_pre[@]} ${p}
1087 - -DGMX_THREAD_MPI=OFF
1088 - -DGMX_MPI=ON ${cuda}
1089 - -DGMX_OPENMM=OFF
1090 - -DGMX_BUILD_MDRUN_ONLY=ON
1091 - -DBUILD_SHARED_LIBS=OFF
1092 - -DGMX_BUILD_MANUAL=OFF
1093 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
1094 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
1095 - )
1096 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
1097 - [[ ${CHOST} != *-darwin* ]] || \
1098 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
1099 - done
1100 -}
1101 -
1102 -src_compile() {
1103 - for x in ${GMX_DIRS}; do
1104 - einfo "Compiling for ${x} precision"
1105 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1106 - cmake-utils_src_compile
1107 - # generate bash completion, not 100% necessary for
1108 - # rel ebuilds as bundled
1109 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1110 - cmake-utils_src_compile completion
1111 - # not 100% necessary for rel ebuilds as available from website
1112 - if use doc; then
1113 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1114 - cmake-utils_src_compile manual
1115 - fi
1116 - use mpi || continue
1117 - einfo "Compiling for ${x} precision with mpi"
1118 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
1119 - cmake-utils_src_compile
1120 - done
1121 -}
1122 -
1123 -src_test() {
1124 - for x in ${GMX_DIRS}; do
1125 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1126 - cmake-utils_src_make check
1127 - done
1128 -}
1129 -
1130 -src_install() {
1131 - for x in ${GMX_DIRS}; do
1132 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
1133 - cmake-utils_src_install
1134 - if use doc; then
1135 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
1136 - fi
1137 - #release ebuild does this automatically
1138 - if [[ $PV = *9999* ]]; then
1139 - cp "${WORKDIR}/${P}_${x}"/src/programs/completion/gmx-completion.bash "${ED}/usr/bin" || die
1140 - echo "complete -o nospace -F _gmx_compl gmx" > "${ED}/usr/bin/gmx-completion-gmx.bash" || die
1141 - fi
1142 - use mpi || continue
1143 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
1144 - cmake-utils_src_install
1145 - done
1146 -
1147 - if use tng; then
1148 - insinto /usr/include/tng
1149 - doins src/external/tng_io/include/tng/*h
1150 - fi
1151 - # drop unneeded stuff
1152 - rm "${ED}"usr/bin/GMXRC* || die
1153 - #concatenate all gmx-completion*, starting with gmx-completion.bash (fct defs)
1154 - #little hacckery as some gmx-completion* newlines ,so cat won't work
1155 - for x in "${ED}"usr/bin/gmx-completion{,?*}.bash ; do
1156 - echo $(<${x})
1157 - done > "${T}"/gmx-bashcomp || die
1158 - newbashcomp "${T}"/gmx-bashcomp gmx
1159 - bashcomp_alias gmx mdrun
1160 - rm "${ED}"usr/bin/gmx-completion{,?*}.bash || die
1161 - if use double-precision && use single-precision; then
1162 - bashcomp_alias gmx gmx_d
1163 - bashcomp_alias gmx mdrun_d
1164 - fi
1165 - readme.gentoo_create_doc
1166 -}
1167 -
1168 -pkg_postinst() {
1169 - einfo
1170 - einfo "Please read and cite:"
1171 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
1172 - einfo "http://dx.doi.org/10.1021/ct700301q"
1173 - einfo
1174 - readme.gentoo_print_elog
1175 -}
1176
1177 diff --git a/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild b/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild
1178 deleted file mode 100644
1179 index 9711c22..0000000
1180 --- a/sci-chemistry/gromacs/gromacs-5.1.9999.ebuild
1181 +++ /dev/null
1182 @@ -1,269 +0,0 @@
1183 -# Copyright 1999-2016 Gentoo Foundation
1184 -# Distributed under the terms of the GNU General Public License v2
1185 -# $Id$
1186 -
1187 -EAPI=6
1188 -
1189 -CMAKE_MAKEFILE_GENERATOR="ninja"
1190 -
1191 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
1192 -
1193 -if [[ $PV = *9999* ]]; then
1194 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
1195 - https://gerrit.gromacs.org/gromacs.git
1196 - git://github.com/gromacs/gromacs.git
1197 - http://repo.or.cz/r/gromacs.git"
1198 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
1199 - inherit git-r3
1200 - KEYWORDS=""
1201 -else
1202 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
1203 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV}.tar.gz )"
1204 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
1205 -fi
1206 -
1207 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
1208 -
1209 -DESCRIPTION="The ultimate molecular dynamics simulation package"
1210 -HOMEPAGE="http://www.gromacs.org/"
1211 -
1212 -# see COPYING for details
1213 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
1214 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
1215 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
1216 -SLOT="0/${PV}"
1217 -IUSE="X blas boost cuda +doc -double-precision +fftw lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
1218 -
1219 -CDEPEND="
1220 - X? (
1221 - x11-libs/libX11
1222 - x11-libs/libSM
1223 - x11-libs/libICE
1224 - )
1225 - blas? ( virtual/blas )
1226 - boost? ( >=dev-libs/boost-1.55 )
1227 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
1228 - fftw? ( sci-libs/fftw:3.0 )
1229 - lapack? ( virtual/lapack )
1230 - mkl? ( sci-libs/mkl )
1231 - mpi? ( virtual/mpi )
1232 - "
1233 -DEPEND="${CDEPEND}
1234 - virtual/pkgconfig
1235 - doc? (
1236 - app-doc/doxygen
1237 - dev-texlive/texlive-latex
1238 - dev-texlive/texlive-latexextra
1239 - media-gfx/imagemagick
1240 - )"
1241 -RDEPEND="${CDEPEND}"
1242 -
1243 -REQUIRED_USE="
1244 - || ( single-precision double-precision )
1245 - cuda? ( single-precision )
1246 - mkl? ( !blas !fftw !lapack )"
1247 -
1248 -DOCS=( AUTHORS README )
1249 -
1250 -if [[ ${PV} != *9999 ]]; then
1251 - S="${WORKDIR}/${PN}-${PV/_/-}"
1252 -fi
1253 -
1254 -pkg_pretend() {
1255 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
1256 - use openmp && ! tc-has-openmp && \
1257 - die "Please switch to an openmp compatible compiler"
1258 -}
1259 -
1260 -src_unpack() {
1261 - if [[ ${PV} != *9999 ]]; then
1262 - default
1263 - else
1264 - git-r3_src_unpack
1265 - if use test; then
1266 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
1267 - EGIT_BRANCH="${EGIT_BRANCH}" \
1268 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
1269 - git-r3_src_unpack
1270 - fi
1271 - fi
1272 -}
1273 -
1274 -src_prepare() {
1275 - #notes/todos
1276 - # -on apple: there is framework support
1277 -
1278 - cmake-utils_src_prepare
1279 -
1280 - use cuda && cuda_src_prepare
1281 -
1282 - GMX_DIRS=""
1283 - use single-precision && GMX_DIRS+=" float"
1284 - use double-precision && GMX_DIRS+=" double"
1285 -
1286 - if use test; then
1287 - for x in ${GMX_DIRS}; do
1288 - mkdir -p "${WORKDIR}/${P}_${x}" || die
1289 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
1290 - done
1291 - fi
1292 -
1293 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
1294 -}
1295 -
1296 -src_configure() {
1297 - local mycmakeargs_pre=( ) extra fft_opts=( )
1298 -
1299 - #go from slowest to fastest acceleration
1300 - local acce="None"
1301 - use cpu_flags_x86_sse2 && acce="SSE2"
1302 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
1303 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
1304 - use cpu_flags_x86_avx && acce="AVX_256"
1305 - use cpu_flags_x86_avx2 && acce="AVX2_256"
1306 -
1307 - #to create man pages, build tree binaries are executed (bug #398437)
1308 - [[ ${CHOST} = *-darwin* ]] && \
1309 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
1310 -
1311 - if use fftw; then
1312 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
1313 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
1314 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1315 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
1316 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
1317 - )
1318 - elif use mkl; then
1319 - local bits=$(get_libdir)
1320 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1321 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
1322 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
1323 - )
1324 - else
1325 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
1326 - fi
1327 -
1328 - mycmakeargs_pre+=(
1329 - "${fft_opts[@]}"
1330 - -DGMX_X11=$(usex X)
1331 - -DGMX_EXTERNAL_BLAS=$(usex blas)
1332 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
1333 - -DGMX_OPENMP=$(usex openmp)
1334 - -DGMX_COOL_QUOTES=$(usex offensive)
1335 - -DGMX_EXTERNAL_BOOST=$(usex boost)
1336 - -DGMX_USE_TNG=$(usex tng)
1337 - -DGMX_BUILD_MANUAL=$(usex doc)
1338 - -DGMX_DEFAULT_SUFFIX=off
1339 - -DGMX_SIMD="$acce"
1340 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
1341 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
1342 - -DGMX_X86_AVX_GCC_MASKLOAD_BUG=OFF
1343 - -DGMX_USE_GCC44_BUG_WORKAROUND=OFF
1344 - -DBUILD_TESTING=OFF
1345 - -DGMX_BUILD_UNITTESTS=OFF
1346 - ${extra}
1347 - )
1348 -
1349 - for x in ${GMX_DIRS}; do
1350 - einfo "Configuring for ${x} precision"
1351 - local suffix=""
1352 - #if we build single and double - double is suffixed
1353 - use double-precision && use single-precision && \
1354 - [[ ${x} = "double" ]] && suffix="_d"
1355 - local p
1356 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
1357 - local cuda=( "-DGMX_GPU=OFF" )
1358 - [[ ${x} = "float" ]] && use cuda && \
1359 - cuda=( -DGMX_GPU=ON )
1360 - mycmakeargs=(
1361 - ${mycmakeargs_pre[@]} ${p}
1362 - -DGMX_MPI=OFF
1363 - -DGMX_THREAD_MPI=$(usex threads)
1364 - "${cuda[@]}"
1365 - -DGMX_OPENMM=OFF
1366 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
1367 - -DGMX_BINARY_SUFFIX="${suffix}"
1368 - -DGMX_LIBS_SUFFIX="${suffix}"
1369 - )
1370 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
1371 - [[ ${CHOST} != *-darwin* ]] || \
1372 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
1373 - use mpi || continue
1374 - einfo "Configuring for ${x} precision with mpi"
1375 - mycmakeargs=(
1376 - ${mycmakeargs_pre[@]} ${p}
1377 - -DGMX_THREAD_MPI=OFF
1378 - -DGMX_MPI=ON ${cuda}
1379 - -DGMX_OPENMM=OFF
1380 - -DGMX_BUILD_MDRUN_ONLY=ON
1381 - -DBUILD_SHARED_LIBS=OFF
1382 - -DGMX_BUILD_MANUAL=OFF
1383 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
1384 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
1385 - )
1386 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
1387 - [[ ${CHOST} != *-darwin* ]] || \
1388 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
1389 - done
1390 -}
1391 -
1392 -src_compile() {
1393 - for x in ${GMX_DIRS}; do
1394 - einfo "Compiling for ${x} precision"
1395 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1396 - cmake-utils_src_compile
1397 - # not 100% necessary for rel ebuilds as available from website
1398 - if use doc; then
1399 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1400 - cmake-utils_src_compile manual
1401 - fi
1402 - use mpi || continue
1403 - einfo "Compiling for ${x} precision with mpi"
1404 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
1405 - cmake-utils_src_compile
1406 - done
1407 -}
1408 -
1409 -src_test() {
1410 - for x in ${GMX_DIRS}; do
1411 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1412 - cmake-utils_src_make check
1413 - done
1414 -}
1415 -
1416 -src_install() {
1417 - for x in ${GMX_DIRS}; do
1418 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
1419 - cmake-utils_src_install
1420 - if use doc; then
1421 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
1422 - fi
1423 - use mpi || continue
1424 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
1425 - cmake-utils_src_install
1426 - done
1427 -
1428 - if use tng; then
1429 - insinto /usr/include/tng
1430 - doins src/external/tng_io/include/tng/*h
1431 - fi
1432 - # drop unneeded stuff
1433 - rm "${ED}"usr/bin/GMXRC* || die
1434 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
1435 - local n=${x##*/gmx-completion-}
1436 - n="${n%.bash}"
1437 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
1438 - newbashcomp "${T}"/"${n}" "${n}"
1439 - done
1440 - rm "${ED}"usr/bin/gmx-completion*.bash || die
1441 - readme.gentoo_create_doc
1442 -}
1443 -
1444 -pkg_postinst() {
1445 - einfo
1446 - einfo "Please read and cite:"
1447 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
1448 - einfo "http://dx.doi.org/10.1021/ct700301q"
1449 - einfo
1450 - readme.gentoo_print_elog
1451 -}
1452
1453 diff --git a/sci-chemistry/gromacs/gromacs-9999.ebuild b/sci-chemistry/gromacs/gromacs-9999.ebuild
1454 deleted file mode 100644
1455 index 1ca0343..0000000
1456 --- a/sci-chemistry/gromacs/gromacs-9999.ebuild
1457 +++ /dev/null
1458 @@ -1,266 +0,0 @@
1459 -# Copyright 1999-2016 Gentoo Foundation
1460 -# Distributed under the terms of the GNU General Public License v2
1461 -# $Id$
1462 -
1463 -EAPI=6
1464 -
1465 -CMAKE_MAKEFILE_GENERATOR="ninja"
1466 -
1467 -inherit bash-completion-r1 cmake-utils cuda eutils multilib readme.gentoo-r1 toolchain-funcs
1468 -
1469 -if [[ $PV = *9999* ]]; then
1470 - EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
1471 - https://gerrit.gromacs.org/gromacs.git
1472 - git://github.com/gromacs/gromacs.git
1473 - http://repo.or.cz/r/gromacs.git"
1474 - [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:1}-${PV:2:1}"
1475 - inherit git-r3
1476 - KEYWORDS=""
1477 -else
1478 - SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
1479 - test? ( http://gerrit.gromacs.org/download/regressiontests-${PV/_/-}.tar.gz )"
1480 - KEYWORDS="~alpha ~amd64 ~arm ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
1481 -fi
1482 -
1483 -ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
1484 -
1485 -DESCRIPTION="The ultimate molecular dynamics simulation package"
1486 -HOMEPAGE="http://www.gromacs.org/"
1487 -
1488 -# see COPYING for details
1489 -# http://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
1490 -# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
1491 -LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
1492 -SLOT="0/${PV}"
1493 -IUSE="X blas cuda +doc -double-precision +fftw +hwloc lapack mkl mpi +offensive openmp +single-precision test +threads +tng ${ACCE_IUSE}"
1494 -
1495 -CDEPEND="
1496 - X? (
1497 - x11-libs/libX11
1498 - x11-libs/libSM
1499 - x11-libs/libICE
1500 - )
1501 - blas? ( virtual/blas )
1502 - cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1 )
1503 - fftw? ( sci-libs/fftw:3.0 )
1504 - hwloc? ( sys-apps/hwloc )
1505 - lapack? ( virtual/lapack )
1506 - mkl? ( sci-libs/mkl )
1507 - mpi? ( virtual/mpi )
1508 - "
1509 -DEPEND="${CDEPEND}
1510 - virtual/pkgconfig
1511 - doc? (
1512 - app-doc/doxygen
1513 - dev-texlive/texlive-latex
1514 - dev-texlive/texlive-latexextra
1515 - media-gfx/imagemagick
1516 - )"
1517 -RDEPEND="${CDEPEND}"
1518 -
1519 -REQUIRED_USE="
1520 - || ( single-precision double-precision )
1521 - cuda? ( single-precision )
1522 - mkl? ( !blas !fftw !lapack )"
1523 -
1524 -DOCS=( AUTHORS README )
1525 -
1526 -if [[ ${PV} != *9999 ]]; then
1527 - S="${WORKDIR}/${PN}-${PV/_/-}"
1528 -fi
1529 -
1530 -pkg_pretend() {
1531 - [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
1532 - use openmp && ! tc-has-openmp && \
1533 - die "Please switch to an openmp compatible compiler"
1534 -}
1535 -
1536 -src_unpack() {
1537 - if [[ ${PV} != *9999 ]]; then
1538 - default
1539 - else
1540 - git-r3_src_unpack
1541 - if use test; then
1542 - EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
1543 - EGIT_BRANCH="${EGIT_BRANCH}" \
1544 - EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
1545 - git-r3_src_unpack
1546 - fi
1547 - fi
1548 -}
1549 -
1550 -src_prepare() {
1551 - #notes/todos
1552 - # -on apple: there is framework support
1553 -
1554 - cmake-utils_src_prepare
1555 -
1556 - use cuda && cuda_src_prepare
1557 -
1558 - GMX_DIRS=""
1559 - use single-precision && GMX_DIRS+=" float"
1560 - use double-precision && GMX_DIRS+=" double"
1561 -
1562 - if use test; then
1563 - for x in ${GMX_DIRS}; do
1564 - mkdir -p "${WORKDIR}/${P}_${x}" || die
1565 - cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
1566 - done
1567 - fi
1568 -
1569 - DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
1570 -}
1571 -
1572 -src_configure() {
1573 - local mycmakeargs_pre=( ) extra fft_opts=( )
1574 -
1575 - #go from slowest to fastest acceleration
1576 - local acce="None"
1577 - use cpu_flags_x86_sse2 && acce="SSE2"
1578 - use cpu_flags_x86_sse4_1 && acce="SSE4.1"
1579 - use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
1580 - use cpu_flags_x86_avx && acce="AVX_256"
1581 - use cpu_flags_x86_avx2 && acce="AVX2_256"
1582 -
1583 - #to create man pages, build tree binaries are executed (bug #398437)
1584 - [[ ${CHOST} = *-darwin* ]] && \
1585 - extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
1586 -
1587 - if use fftw; then
1588 - fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
1589 - elif use mkl && has_version "=sci-libs/mkl-10*"; then
1590 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1591 - -DMKL_INCLUDE_DIR="${MKLROOT}/include"
1592 - -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
1593 - )
1594 - elif use mkl; then
1595 - local bits=$(get_libdir)
1596 - fft_opts=( -DGMX_FFT_LIBRARY=mkl
1597 - -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
1598 - -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
1599 - )
1600 - else
1601 - fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
1602 - fi
1603 -
1604 - mycmakeargs_pre+=(
1605 - "${fft_opts[@]}"
1606 - -DGMX_X11=$(usex X)
1607 - -DGMX_EXTERNAL_BLAS=$(usex blas)
1608 - -DGMX_EXTERNAL_LAPACK=$(usex lapack)
1609 - -DGMX_OPENMP=$(usex openmp)
1610 - -DGMX_COOL_QUOTES=$(usex offensive)
1611 - -DGMX_USE_TNG=$(usex tng)
1612 - -DGMX_BUILD_MANUAL=$(usex doc)
1613 - -DGMX_HWLOC=$(usex hwloc)
1614 - -DGMX_DEFAULT_SUFFIX=off
1615 - -DGMX_SIMD="$acce"
1616 - -DGMX_LIB_INSTALL_DIR="$(get_libdir)"
1617 - -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
1618 - -DBUILD_TESTING=OFF
1619 - -DGMX_BUILD_UNITTESTS=OFF
1620 - ${extra}
1621 - )
1622 -
1623 - for x in ${GMX_DIRS}; do
1624 - einfo "Configuring for ${x} precision"
1625 - local suffix=""
1626 - #if we build single and double - double is suffixed
1627 - use double-precision && use single-precision && \
1628 - [[ ${x} = "double" ]] && suffix="_d"
1629 - local p
1630 - [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
1631 - local cuda=( "-DGMX_GPU=OFF" )
1632 - [[ ${x} = "float" ]] && use cuda && \
1633 - cuda=( -DGMX_GPU=ON )
1634 - mycmakeargs=(
1635 - ${mycmakeargs_pre[@]} ${p}
1636 - -DGMX_MPI=OFF
1637 - -DGMX_THREAD_MPI=$(usex threads)
1638 - "${cuda[@]}"
1639 - "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
1640 - -DGMX_BINARY_SUFFIX="${suffix}"
1641 - -DGMX_LIBS_SUFFIX="${suffix}"
1642 - )
1643 - BUILD_DIR="${WORKDIR}/${P}_${x}" cmake-utils_src_configure
1644 - [[ ${CHOST} != *-darwin* ]] || \
1645 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
1646 - use mpi || continue
1647 - einfo "Configuring for ${x} precision with mpi"
1648 - mycmakeargs=(
1649 - ${mycmakeargs_pre[@]} ${p}
1650 - -DGMX_THREAD_MPI=OFF
1651 - -DGMX_MPI=ON ${cuda}
1652 - -DGMX_OPENMM=OFF
1653 - -DGMX_BUILD_MDRUN_ONLY=ON
1654 - -DBUILD_SHARED_LIBS=OFF
1655 - -DGMX_BUILD_MANUAL=OFF
1656 - -DGMX_BINARY_SUFFIX="_mpi${suffix}"
1657 - -DGMX_LIBS_SUFFIX="_mpi${suffix}"
1658 - )
1659 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake-utils_src_configure
1660 - [[ ${CHOST} != *-darwin* ]] || \
1661 - sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
1662 - done
1663 -}
1664 -
1665 -src_compile() {
1666 - for x in ${GMX_DIRS}; do
1667 - einfo "Compiling for ${x} precision"
1668 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1669 - cmake-utils_src_compile
1670 - # not 100% necessary for rel ebuilds as available from website
1671 - if use doc; then
1672 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1673 - cmake-utils_src_compile manual
1674 - fi
1675 - use mpi || continue
1676 - einfo "Compiling for ${x} precision with mpi"
1677 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
1678 - cmake-utils_src_compile
1679 - done
1680 -}
1681 -
1682 -src_test() {
1683 - for x in ${GMX_DIRS}; do
1684 - BUILD_DIR="${WORKDIR}/${P}_${x}"\
1685 - cmake-utils_src_make check
1686 - done
1687 -}
1688 -
1689 -src_install() {
1690 - for x in ${GMX_DIRS}; do
1691 - BUILD_DIR="${WORKDIR}/${P}_${x}" \
1692 - cmake-utils_src_install
1693 - if use doc; then
1694 - newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
1695 - fi
1696 - use mpi || continue
1697 - BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
1698 - cmake-utils_src_install
1699 - done
1700 -
1701 - if use tng; then
1702 - insinto /usr/include/tng
1703 - doins src/external/tng_io/include/tng/*h
1704 - fi
1705 - # drop unneeded stuff
1706 - rm "${ED}"usr/bin/GMXRC* || die
1707 - for x in "${ED}"usr/bin/gmx-completion-*.bash ; do
1708 - local n=${x##*/gmx-completion-}
1709 - n="${n%.bash}"
1710 - cat "${ED}"usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
1711 - newbashcomp "${T}"/"${n}" "${n}"
1712 - done
1713 - rm "${ED}"usr/bin/gmx-completion*.bash || die
1714 - readme.gentoo_create_doc
1715 -}
1716 -
1717 -pkg_postinst() {
1718 - einfo
1719 - einfo "Please read and cite:"
1720 - einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
1721 - einfo "http://dx.doi.org/10.1021/ct700301q"
1722 - einfo
1723 - readme.gentoo_print_elog
1724 -}
1725
1726 diff --git a/sci-chemistry/gromacs/metadata.xml b/sci-chemistry/gromacs/metadata.xml
1727 deleted file mode 100644
1728 index e98cd51..0000000
1729 --- a/sci-chemistry/gromacs/metadata.xml
1730 +++ /dev/null
1731 @@ -1,28 +0,0 @@
1732 -<?xml version="1.0" encoding="UTF-8"?>
1733 -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
1734 -<pkgmetadata>
1735 - <maintainer type="person">
1736 - <email>ottxor@g.o</email>
1737 - <name>Christoph Junghans</name>
1738 - </maintainer>
1739 - <maintainer type="person">
1740 - <email>alexxy@g.o</email>
1741 - <name>Alexey Shvetsov</name>
1742 - </maintainer>
1743 - <maintainer type="project">
1744 - <email>sci-chemistry@g.o</email>
1745 - <name>Gentoo Chemistry Project</name>
1746 - </maintainer>
1747 - <use>
1748 - <flag name="cuda">Enable cuda non-bonded kernels</flag>
1749 - <flag name="double-precision">More precise calculations at the expense of speed</flag>
1750 - <flag name="single-precision">Single precision version of gromacs (default)</flag>
1751 - <flag name="boost">Enable external boost library</flag>
1752 - <flag name="hwloc">Enable HWLoc lib support</flag>
1753 - <flag name="tng">Enable new trajectory format - tng</flag>
1754 - <flag name="make-symlinks">Create symbolic links for pre-5.0 binary names</flag>
1755 - <!-- acceleration optimization flags -->
1756 - <flag name="offensive">Enable gromacs partly offensive quotes</flag>
1757 - <flag name="mkl">Use <pkg>sci-libs/mkl</pkg> for fft, blas, lapack routines</flag>
1758 - </use>
1759 -</pkgmetadata>