summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2024-03-26 12:09:02 +0100
committerAndreas Sturmlechner <asturm@gentoo.org>2024-03-26 20:59:18 +0100
commit02d7373ca997928b26914b49a9ac62dab43366f1 (patch)
tree10f4845627c7c831211821b8ab996546abfda354 /sci-chemistry
parentnet-misc/apt-cacher-ng: update EAPI 7 -> 8 (diff)
downloadgentoo-02d7373ca997928b26914b49a9ac62dab43366f1.tar.gz
gentoo-02d7373ca997928b26914b49a9ac62dab43366f1.tar.bz2
gentoo-02d7373ca997928b26914b49a9ac62dab43366f1.zip
sci-chemistry/gromacs: drop 2018.8-r2, 2019.6-r3
Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'sci-chemistry')
-rw-r--r--sci-chemistry/gromacs/Manifest6
-rw-r--r--sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch38
-rw-r--r--sci-chemistry/gromacs/gromacs-2018.8-r2.ebuild237
-rw-r--r--sci-chemistry/gromacs/gromacs-2019.6-r3.ebuild252
4 files changed, 0 insertions, 533 deletions
diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
index fc5ddbd370bd..e49864e592ec 100644
--- a/sci-chemistry/gromacs/Manifest
+++ b/sci-chemistry/gromacs/Manifest
@@ -1,21 +1,15 @@
-DIST gromacs-2018.8.tar.gz 29913703 BLAKE2B 8780032305928067fbfe1559efe9eedc4d47e27ab2f6ab54d6dba39edfcbeefbee4673d8910009048a850620b5a08ba8feb622db652c439cfa50a149ec5f0015 SHA512 6717895942f2ab7b54019511ed2aebadadde8e96d3c4b7414bb9168ffe418432d2dee330192e199f7b9d2f665c71f5d4f1ef0911aa7243d525a2ca182ef5b122
-DIST gromacs-2019.6.tar.gz 33446147 BLAKE2B adc21fb6b841b06d499607f8c0166a673645ef5af0b40bd823d0fff5ea24397e6301c5e1e0070986ae1ce1deba8a42052b66da148b071c1e21f2fe3908fee275 SHA512 7c227a9539e5775d5d128ae9e872a24181d79cdcd2852b86453597987e8d7332ecec371da65d089f6e610c54aafbccc8824ce298743383dd6240719ebee692a8
DIST gromacs-2020.7.tar.gz 29175554 BLAKE2B 98f1aa415946f8eb113febc81105f0c1b0919b96fc3c55a0ab83bf3950ff509b81eade92e645adb0bc2b407df239e20cf3f19828b6e08616437c8693c1fddcc8 SHA512 1d375c44cec38445e56cea252623b5b6c565680268999d4b6c14d6dc38759a27227655b2d29efaab9f9115d3677b446cb555e11cddafa0dc10c4827caaa2477b
DIST gromacs-2021.7.tar.gz 38028032 BLAKE2B 2dc1b15ca8692ca5cf4ad1c7a266b9e2ced064d34a63cef61fea69e48231dd0310cfd8484d29c56cdb599f795d7655959f40038ac933b46ad2841d57bf2b3646 SHA512 ca478533da3bcb377fda30682660db8eb13beef6456fac6013a1a97ec3be60b5594567412e1e2a31392e484f9a40a22da1f12336f4738cf0422ff4f3e8814609
DIST gromacs-2022.6.tar.gz 40330705 BLAKE2B fdafbd5b2a92d6022dec3e79e961fef220f1eba42850916e7cb70ef459a8d9c6ebc8c1bbe3c105f5b23161dd5c552ec00505d7c0036649b782cf52c311498743 SHA512 91217394f534ca8f78f73189059712e1c2cd354b658722f23768b12748f7bfaf1a5e95227c5ed1b69c1a9b72c3174e9600a712c157ea2f27156387efb823dd67
DIST gromacs-2023.4.tar.gz 42044149 BLAKE2B 2c13a04ddbfc167a7887d44bb6fdacde4ece4e8cf2ba920f453fc6150423c3cae39cd1afe0eebb52b9fbc72fe37fee527c83227a0f3fe21b289655b5c1cd29c5 SHA512 7913348d0da25e095b795123894f4e2007f66cf2455664edeb7bc1edc09f2e0da9911bc9501e3001278ab59917ccef838c485e6b6533c1c816c54c6dbd56350c
DIST gromacs-2024.1.tar.gz 42324773 BLAKE2B 6600c802c39bf7c36d8e388ced202504dcceb3ec018d5f48af4f55e43dd170157a9b6335ce1b20a73623d05a391787936c2ab6ee48ab031d17078256eb7153c5 SHA512 fea88fac28ec142201eec1cea984eabd9db43346254ac555954a13fdbae5a5b00281a17efc8dba8ab0ac42794e3cce41b314c5cb36fb4292a1c6d2668b2ba192
DIST gromacs-2024.tar.gz 42455653 BLAKE2B 86446c5e95f9ddaf718126c409389730ee1642f36c3e0d844eb4b3a640c275e7979581365dacb57ac66daec296bbd94be6d5c0376f7255d3d3950f6759f8d69a SHA512 d64bf3cbe579003ce37dfd3d27c68746a04360d9d5491c638f3f2bd9af2c938504b0c9710c62e85225370ddf5418e6ebc2422033e46af5eee6e4aaa53699fed7
-DIST manual-2018.8.pdf 10025023 BLAKE2B afb0a6e6a72d78df743fcb57e7c1716848589e571dd35167b957a9b407ca27978ccfb6cb9e0df9c9439b888f352501a00ba32281ed1e0b4193bd606f1d77152e SHA512 b1972f7ce965bfc9377542993c5943ea4868a8ed23a969d4203264746d6bea3a7a65c6379196ece37fd6d68ec7ec80f827bde87d1049284af7082759a124f1d5
-DIST manual-2019.6.pdf 12702376 BLAKE2B c350127bc06a9eb3dee73da39037c84daeb89500e23cb131bd19a150bf60602d4dde7611e0c6f0f344af4093e96a899303dac71b4df56fd0c44c3a48a56606b7 SHA512 dfdff67c2c1c9ce1f1c236b7686c5331b0fe86951da6c98eddd6a3e748815e0be0a9653ae4318469fcdd913c4e7c355d64a997cc80b9d9fbe6282ef6d98e61eb
DIST manual-2020.7.pdf 11850780 BLAKE2B 38594e87993badfbbcf47d6010a7f67d3c3426dab85e1462916b4d62be27b5764953f912cf2b71ee24877e0bfa27b3f74431da2da81b4977d58cb66b2cc795a3 SHA512 4f184f2c90e0bac01a48069cc546cd5b04fa5f543f90dd2d68c6d17be278152fd09456b6a6c5c8236f8fb85a174d6ec7a1c7b44d437b4e6fea5d0ada73cec0f6
DIST manual-2021.7.pdf 12256526 BLAKE2B 6f298d7dac142f66914bbc2ea7d6ca70c4aeafaf33ccf12336d5cec64b1f1097b5332c767bb411ccef706ec6184479a84bcf59bda21c4249d45d8ce3dea08e79 SHA512 197765accb8ab6c5f1cc94b2697ff1817e157d85fa231dfe36a85036076e04da2a8035de66aba4f46c6dd7f553176357b94c92e1da5d1dabc574c627deee5279
DIST manual-2022.6.pdf 13081140 BLAKE2B e7ae3f23ddc076c295be2c464fe2177d6d6848d070ee5eba2b572e996ae08adead898ec6432b123802907f64983aa4d2e17426be8d540c48d12398a479519f9e SHA512 4724888b3c33c4fa4a035d5fb2f8c51496f67e1ee312676510d5ba74bc3cc1571e71e84464585b87ad0133e8e736343ae382bf8f7b556633f86a99560213d271
DIST manual-2023.4.pdf 13572503 BLAKE2B f9985c6ceed2dd66d49c9e9817651b0250994aacb571a552dde6b82a7c02471409cc34622d216290e8ceb3934cf4f51d98d95e1c1f584d1deb5e64c3e02c4b04 SHA512 b42e53f405a8ff4387970e4a1a199452bcb11befbf492cbd78b81229db2b0991e5c0c549162937e83eec79b15c71b441474b1338ed9050fdd132ae2ba09175b6
DIST manual-2024.1.pdf 13651959 BLAKE2B d76e112d3d22e6638e733dec7db713aa65e16099e98935e0bfe8842966a51a04ca370e9afb62ad5b30f3adced1c67574a21445b61f3ce5a753e5d8680f87967e SHA512 3f1aa3433095983cf7ce5c54383bc384d25d9f3b22357e0360639f619c740df37ec0c827ccc9d48b8f93e3877315ee82f740c486b231f777e1be35e44fd823fe
DIST manual-2024.pdf 13644437 BLAKE2B 19d547686d5c5be5e1236aba648e8afb174b281802ab76e020466953ab5d2dd98701f21eb4736cb449b61960b5b7aadce6711b2b0309a41dd1997d7383bce09e SHA512 b00048651f1f81f9024ba5c4c02ad66d2b07eb7b816f0489568fb64859cac515b885a5cb4640c8b5bd7c3620655a7ebc5fc2e4e4cbb8e952ffb0c9b5815ae661
-DIST regressiontests-2018.8.tar.gz 67855469 BLAKE2B 34c9b339f6229f483afbb5192ee6ba8b8f72d5c26907a853af9c53dfece0d88739e48f6b44b78d1c010f988f9385d077285300522164f533a5861e9dda879275 SHA512 3642389d27bd1942cd0f091c940ae97b197b94856a387fe581dc516b0d4169480f16551d4ba357f9282b3337d605c286d51dd38112ac87c826dda634904836bb
-DIST regressiontests-2019.6.tar.gz 67643195 BLAKE2B 1e054e24b187946f7ea28090d4f20cf8e1d79a26253f57ba07d130e0773d8541b8a1552a38023d31a68ce8bc62d8e0af1d98609234bb3e7d3e6d567307ebb386 SHA512 eacf1c55b982515a305c29459fe80a7cd558a8481e5689962aa956148af542568b1d1ce59c6784ecb0afd4768c2b664afa21e12af2d89ae2b06b1ba61ad72036
DIST regressiontests-2020.7.tar.gz 48541487 BLAKE2B 255608b52158c6c01e7c7c4dcf075128ecf22b2f26d32e8c203de8a4bc69c60ec95f49cf8ccd64abc3073c5e8dca9d6b01daed9dfb8f67bce2dd068ed01acd05 SHA512 2458582f94f3c9f4e1454824ce3940b4f5b6cb2151d06846c42e7a9448296fd2a6df4f53be9624e0d3317d2b59f89bb5348eb8b2970d7b46ac22ca989ef3458a
DIST regressiontests-2021.7.tar.gz 48537500 BLAKE2B b0c97fa652cb9b972c50f29822f530fcaa2ec9acb6d6442114fc6446c54aade5eb1bfa153c69a7e8bf64b66e8b041d7f8e0d51e7f7b0516f9e03f3d9ad626193 SHA512 7cbead90aa6d62346dcf7c2249c3cfa179884b987a749624444d2f59d93e0322f7721143bf6eb44d26102635dc70a73546ef82d4647558b6320bfdd459074017
DIST regressiontests-2022.6.tar.gz 48615697 BLAKE2B 566adafbc36d3c1faae322fca9cf451f57245c4ceed63f90f26208025937dae0c1bbb8c372bce618f63305d0368113fecd96c7275a75d8b9c19c22a6e5aa9b96 SHA512 68aa9bedffbea37fb7703c18c3f66f607a91f16ece4bec58ced6e42a481156b2fe83760d0e40cecbdcaf87b168441b8ebde27cec30d98c89f516360ea45ddd43
diff --git a/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch b/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch
deleted file mode 100644
index cf478d52cb67..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-From 053286ff0bfb88db5c158f5f68017c4bb5d9496a Mon Sep 17 00:00:00 2001
-From: Christoph Junghans <junghans@votca.org>
-Date: Wed, 28 Apr 2021 19:44:09 -0600
-Subject: [PATCH] fix build on F34
-
-see https://gitlab.com/gromacs/gromacs/-/merge_requests/1524
----
- src/gromacs/awh/biasparams.cpp | 1 +
- src/gromacs/mdrun/minimize.cpp | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/src/gromacs/awh/biasparams.cpp b/src/gromacs/awh/biasparams.cpp
-index f4db497002..e762ea084a 100644
---- a/src/gromacs/awh/biasparams.cpp
-+++ b/src/gromacs/awh/biasparams.cpp
-@@ -49,6 +49,7 @@
- #include <cmath>
-
- #include <algorithm>
-+#include <limits>
-
- #include "gromacs/math/functions.h"
- #include "gromacs/mdtypes/awh-params.h"
-diff --git a/src/gromacs/mdrun/minimize.cpp b/src/gromacs/mdrun/minimize.cpp
-index 8550271325..495bcfdda0 100644
---- a/src/gromacs/mdrun/minimize.cpp
-+++ b/src/gromacs/mdrun/minimize.cpp
-@@ -51,6 +51,7 @@
- #include <ctime>
-
- #include <algorithm>
-+#include <limits>
- #include <vector>
-
- #include "gromacs/commandline/filenm.h"
---
-GitLab
-
diff --git a/sci-chemistry/gromacs/gromacs-2018.8-r2.ebuild b/sci-chemistry/gromacs/gromacs-2018.8-r2.ebuild
deleted file mode 100644
index e75c2a98b24b..000000000000
--- a/sci-chemistry/gromacs/gromacs-2018.8-r2.ebuild
+++ /dev/null
@@ -1,237 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-inherit bash-completion-r1 cmake cuda readme.gentoo-r1 toolchain-funcs xdg-utils
-
-SRC_URI="
- https://ftp.gromacs.org/gromacs/${PN}-${PV/_/-}.tar.gz
- doc? ( https://ftp.gromacs.org/manual/manual-${PV/_/-}.pdf )
- test? ( https://ftp.gromacs.org/regressiontests/regressiontests-${PV/_/-}.tar.gz )"
-KEYWORDS="amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
-
-DESCRIPTION="The ultimate molecular dynamics simulation package"
-HOMEPAGE="https://www.gromacs.org/"
-
-# see COPYING for details
-# https://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
-# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
-LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
-SLOT="0/${PV}"
-IUSE="X blas cuda +doc double-precision +fftw +hwloc lapack mkl mpi +offensive opencl openmp +single-precision test +threads +tng ${ACCE_IUSE}"
-
-CDEPEND="
- X? (
- x11-libs/libX11
- x11-libs/libSM
- x11-libs/libICE
- )
- blas? ( virtual/blas )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1:= )
- opencl? ( virtual/opencl )
- fftw? ( sci-libs/fftw:3.0= )
- hwloc? ( <sys-apps/hwloc-2:= )
- lapack? ( virtual/lapack )
- mkl? ( sci-libs/mkl )
- mpi? ( virtual/mpi )
- "
-BDEPEND="${CDEPEND}
- virtual/pkgconfig
- "
-RDEPEND="${CDEPEND}"
-
-REQUIRED_USE="
- || ( single-precision double-precision )
- cuda? ( single-precision )
- opencl? ( single-precision )
- cuda? ( !opencl )
- mkl? ( !blas !fftw !lapack )"
-
-DOCS=( AUTHORS README )
-
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${PN}-${PV/_/-}"
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_prepare() {
- #notes/todos
- # -on apple: there is framework support
-
- xdg_environment_reset #591952
-
- cmake_src_prepare
-
- use cuda && cuda_src_prepare
-
- GMX_DIRS=""
- use single-precision && GMX_DIRS+=" float"
- use double-precision && GMX_DIRS+=" double"
-
- if use test; then
- for x in ${GMX_DIRS}; do
- mkdir -p "${WORKDIR}/${P}_${x}" || die
- cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
- done
- fi
-
- DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
-}
-
-src_configure() {
- local mycmakeargs_pre=( ) extra fft_opts=( )
-
- #go from slowest to fastest acceleration
- local acce="None"
- use cpu_flags_x86_sse2 && acce="SSE2"
- use cpu_flags_x86_sse4_1 && acce="SSE4.1"
- use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
- use cpu_flags_x86_avx && acce="AVX_256"
- use cpu_flags_x86_avx2 && acce="AVX2_256"
-
- #to create man pages, build tree binaries are executed (bug #398437)
- [[ ${CHOST} = *-darwin* ]] && \
- extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
-
- if use fftw; then
- fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
- elif use mkl; then
- local bits=$(get_libdir)
- fft_opts=( -DGMX_FFT_LIBRARY=mkl
- -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
- -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
- )
- else
- fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
- fi
-
- mycmakeargs_pre+=(
- "${fft_opts[@]}"
- -DGMX_X11=$(usex X)
- -DGMX_EXTERNAL_BLAS=$(usex blas)
- -DGMX_EXTERNAL_LAPACK=$(usex lapack)
- -DGMX_OPENMP=$(usex openmp)
- -DGMX_COOL_QUOTES=$(usex offensive)
- -DGMX_USE_TNG=$(usex tng)
- -DGMX_HWLOC=$(usex hwloc)
- -DGMX_DEFAULT_SUFFIX=off
- -DGMX_SIMD="$acce"
- -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
- -DBUILD_TESTING=$(usex test)
- -DGMX_BUILD_UNITTESTS=$(usex test)
- ${extra}
- )
-
- for x in ${GMX_DIRS}; do
- einfo "Configuring for ${x} precision"
- local suffix=""
- #if we build single and double - double is suffixed
- use double-precision && use single-precision && \
- [[ ${x} = "double" ]] && suffix="_d"
- local p
- [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
- local cuda=( "-DGMX_GPU=OFF" )
- [[ ${x} = "float" ]] && use cuda && \
- cuda=( "-DGMX_GPU=ON" )
- local opencl=( "-DGMX_USE_OPENCL=OFF" )
- use opencl && opencl=( "-DGMX_USE_OPENCL=ON" ) cuda=( "-DGMX_GPU=ON" )
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_MPI=OFF
- -DGMX_THREAD_MPI=$(usex threads)
- "${opencl[@]}"
- "${cuda[@]}"
- "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
- -DGMX_BINARY_SUFFIX="${suffix}"
- -DGMX_LIBS_SUFFIX="${suffix}"
- )
- BUILD_DIR="${WORKDIR}/${P}_${x}" cmake_src_configure
- [[ ${CHOST} != *-darwin* ]] || \
- sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
- use mpi || continue
- einfo "Configuring for ${x} precision with mpi"
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_THREAD_MPI=OFF
- -DGMX_MPI=ON
- -DGMX_OPENMM=OFF
- -DGMX_BUILD_MDRUN_ONLY=ON
- -DBUILD_SHARED_LIBS=OFF
- -DGMX_BUILD_MANUAL=OFF
- "${opencl[@]}"
- "${cuda[@]}"
- -DGMX_BINARY_SUFFIX="_mpi${suffix}"
- -DGMX_LIBS_SUFFIX="_mpi${suffix}"
- )
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake_src_configure
- [[ ${CHOST} != *-darwin* ]] || \
- sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
- done
-}
-
-src_compile() {
- for x in ${GMX_DIRS}; do
- einfo "Compiling for ${x} precision"
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile
- use mpi || continue
- einfo "Compiling for ${x} precision with mpi"
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
- cmake_src_compile
- done
-}
-
-src_test() {
- for x in ${GMX_DIRS}; do
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile check
- done
-}
-
-src_install() {
- for x in ${GMX_DIRS}; do
- BUILD_DIR="${WORKDIR}/${P}_${x}" \
- cmake_src_install
- if use doc; then
- newdoc "${DISTDIR}/manual-${PV/_/-}.pdf" "${PN}-manual-${PV}.pdf"
- fi
- use mpi || continue
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
- cmake_src_install
- done
-
- if use tng; then
- insinto /usr/include/tng
- doins src/external/tng_io/include/tng/*h
- fi
- # drop unneeded stuff
- rm "${ED}"/usr/bin/GMXRC* || die
- for x in "${ED}"/usr/bin/gmx-completion-*.bash ; do
- local n=${x##*/gmx-completion-}
- n="${n%.bash}"
- cat "${ED}"/usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
- newbashcomp "${T}"/"${n}" "${n}"
- done
- rm "${ED}"/usr/bin/gmx-completion*.bash || die
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- einfo
- einfo "Please read and cite gromacs related papers from list:"
- einfo "https://www.gromacs.org/articles.html"
- einfo
- readme.gentoo_print_elog
-}
diff --git a/sci-chemistry/gromacs/gromacs-2019.6-r3.ebuild b/sci-chemistry/gromacs/gromacs-2019.6-r3.ebuild
deleted file mode 100644
index 10f490d71692..000000000000
--- a/sci-chemistry/gromacs/gromacs-2019.6-r3.ebuild
+++ /dev/null
@@ -1,252 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-inherit bash-completion-r1 cmake cuda readme.gentoo-r1 toolchain-funcs xdg-utils
-
-SRC_URI="
- https://ftp.gromacs.org/gromacs/${PN}-${PV/_/-}.tar.gz
- doc? ( https://ftp.gromacs.org/manual/manual-${PV/_/-}.pdf )
- test? ( https://ftp.gromacs.org/regressiontests/regressiontests-${PV/_/-}.tar.gz )"
-KEYWORDS="amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-
-ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2"
-
-DESCRIPTION="The ultimate molecular dynamics simulation package"
-HOMEPAGE="https://www.gromacs.org/"
-
-# see COPYING for details
-# https://repo.or.cz/w/gromacs.git/blob/HEAD:/COPYING
-# base, vmd plugins, fftpack from numpy, blas/lapck from netlib, memtestG80 library, mpi_thread lib
-LICENSE="LGPL-2.1 UoI-NCSA !mkl? ( !fftw? ( BSD ) !blas? ( BSD ) !lapack? ( BSD ) ) cuda? ( LGPL-3 ) threads? ( BSD )"
-SLOT="0/${PV}"
-IUSE="X blas cuda +doc double-precision +fftw +gmxapi +hwloc lapack +lmfit mkl mpi +offensive opencl openmp +single-precision test +threads +tng ${ACCE_IUSE}"
-
-CDEPEND="
- X? (
- x11-libs/libX11
- x11-libs/libSM
- x11-libs/libICE
- )
- blas? ( virtual/blas )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-6.5.14:= )
- opencl? ( virtual/opencl )
- fftw? ( sci-libs/fftw:3.0= )
- hwloc? ( sys-apps/hwloc:= )
- lapack? ( virtual/lapack )
- lmfit? ( sci-libs/lmfit:= )
- mkl? ( sci-libs/mkl )
- mpi? ( virtual/mpi )
- ${PYTHON_DEPS}
- "
-BDEPEND="${CDEPEND}
- virtual/pkgconfig
- "
-RDEPEND="${CDEPEND}"
-
-REQUIRED_USE="
- || ( single-precision double-precision )
- cuda? ( single-precision )
- opencl? ( single-precision )
- cuda? ( !opencl )
- mkl? ( !blas !fftw !lapack )
- ${PYTHON_REQUIRED_USE}"
-
-DOCS=( AUTHORS README )
-
-RESTRICT="!test? ( test )"
-
-S="${WORKDIR}/${PN}-${PV/_/-}"
-
-PATCHES=( "${FILESDIR}/${P}-missing-include.patch" )
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_prepare() {
- #notes/todos
- # -on apple: there is framework support
-
- xdg_environment_reset #591952
-
- cmake_src_prepare
-
- use cuda && cuda_src_prepare
-
- GMX_DIRS=""
- use single-precision && GMX_DIRS+=" float"
- use double-precision && GMX_DIRS+=" double"
-
- if use test; then
- for x in ${GMX_DIRS}; do
- mkdir -p "${WORKDIR}/${P}_${x}" || die
- cp -al "${WORKDIR}/regressiontests"* "${WORKDIR}/${P}_${x}/tests" || die
- done
- fi
-
- DOC_CONTENTS="Gromacs can use sci-chemistry/vmd to read additional file formats"
-}
-
-src_configure() {
- local mycmakeargs_pre=( ) extra fft_opts=( )
-
- #go from slowest to fastest acceleration
- local acce="None"
- use cpu_flags_x86_sse2 && acce="SSE2"
- use cpu_flags_x86_sse4_1 && acce="SSE4.1"
- use cpu_flags_x86_fma4 && acce="AVX_128_FMA"
- use cpu_flags_x86_avx && acce="AVX_256"
- use cpu_flags_x86_avx2 && acce="AVX2_256"
-
- #to create man pages, build tree binaries are executed (bug #398437)
- [[ ${CHOST} = *-darwin* ]] && \
- extra+=" -DCMAKE_BUILD_WITH_INSTALL_RPATH=OFF"
-
- if use fftw; then
- fft_opts=( -DGMX_FFT_LIBRARY=fftw3 )
- elif use mkl; then
- local bits=$(get_libdir)
- fft_opts=( -DGMX_FFT_LIBRARY=mkl
- -DMKL_INCLUDE_DIR="$(echo /opt/intel/*/mkl/include)"
- -DMKL_LIBRARIES="$(echo /opt/intel/*/mkl/lib/*${bits/lib}/libmkl_rt.so)"
- )
- else
- fft_opts=( -DGMX_FFT_LIBRARY=fftpack )
- fi
-
- if use lmfit; then
- local lmfit_opts=( -DGMX_USE_LMFIT=EXTERNAL )
- else
- local lmfit_opts=( -DGMX_USE_LMFIT=INTERNAL )
- fi
-
- mycmakeargs_pre+=(
- "${fft_opts[@]}"
- "${lmfit_opts[@]}"
- -DGMX_X11=$(usex X)
- -DGMX_EXTERNAL_BLAS=$(usex blas)
- -DGMX_EXTERNAL_LAPACK=$(usex lapack)
- -DGMX_OPENMP=$(usex openmp)
- -DGMX_COOL_QUOTES=$(usex offensive)
- -DGMX_USE_TNG=$(usex tng)
- -DGMX_HWLOC=$(usex hwloc)
- -DGMX_DEFAULT_SUFFIX=off
- -DGMX_SIMD="$acce"
- -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
- -DBUILD_TESTING=$(usex test)
- -DGMX_BUILD_UNITTESTS=$(usex test)
- -DPYTHON_EXECUTABLE="${EPREFIX}/usr/bin/${EPYTHON}"
- ${extra}
- )
-
- for x in ${GMX_DIRS}; do
- einfo "Configuring for ${x} precision"
- local suffix=""
- #if we build single and double - double is suffixed
- use double-precision && use single-precision && \
- [[ ${x} = "double" ]] && suffix="_d"
- local p
- [[ ${x} = "double" ]] && p="-DGMX_DOUBLE=ON" || p="-DGMX_DOUBLE=OFF"
- local cuda=( "-DGMX_GPU=OFF" )
- [[ ${x} = "float" ]] && use cuda && \
- cuda=( "-DGMX_GPU=ON" )
- local opencl=( "-DGMX_USE_OPENCL=OFF" )
- use opencl && opencl=( "-DGMX_USE_OPENCL=ON" ) cuda=( "-DGMX_GPU=ON" )
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_MPI=OFF
- -DGMX_THREAD_MPI=$(usex threads)
- -DGMXAPI=$(usex gmxapi)
- "${opencl[@]}"
- "${cuda[@]}"
- "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
- -DGMX_BINARY_SUFFIX="${suffix}"
- -DGMX_LIBS_SUFFIX="${suffix}"
- )
- BUILD_DIR="${WORKDIR}/${P}_${x}" cmake_src_configure
- [[ ${CHOST} != *-darwin* ]] || \
- sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}/gentoo_rules.cmake" || die
- use mpi || continue
- einfo "Configuring for ${x} precision with mpi"
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_THREAD_MPI=OFF
- -DGMX_MPI=ON
- -DGMX_OPENMM=OFF
- -DGMXAPI=OFF
- "${opencl[@]}"
- "${cuda[@]}"
- -DGMX_BUILD_MDRUN_ONLY=ON
- -DBUILD_SHARED_LIBS=OFF
- -DGMX_BUILD_MANUAL=OFF
- -DGMX_BINARY_SUFFIX="_mpi${suffix}"
- -DGMX_LIBS_SUFFIX="_mpi${suffix}"
- )
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" CC="mpicc" cmake_src_configure
- [[ ${CHOST} != *-darwin* ]] || \
- sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
- done
-}
-
-src_compile() {
- for x in ${GMX_DIRS}; do
- einfo "Compiling for ${x} precision"
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile
- use mpi || continue
- einfo "Compiling for ${x} precision with mpi"
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
- cmake_src_compile
- done
-}
-
-src_test() {
- for x in ${GMX_DIRS}; do
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile check
- done
-}
-
-src_install() {
- for x in ${GMX_DIRS}; do
- BUILD_DIR="${WORKDIR}/${P}_${x}" \
- cmake_src_install
- if use doc; then
- newdoc "${DISTDIR}/manual-${PV/_/-}.pdf" "${PN}-manual-${PV}.pdf"
- fi
- use mpi || continue
- BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
- cmake_src_install
- done
-
- if use tng; then
- insinto /usr/include/tng
- doins src/external/tng_io/include/tng/*h
- fi
- # drop unneeded stuff
- rm "${ED}"/usr/bin/GMXRC* || die
- for x in "${ED}"/usr/bin/gmx-completion-*.bash ; do
- local n=${x##*/gmx-completion-}
- n="${n%.bash}"
- cat "${ED}"/usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
- newbashcomp "${T}"/"${n}" "${n}"
- done
- rm "${ED}"/usr/bin/gmx-completion*.bash || die
- readme.gentoo_create_doc
-}
-
-pkg_postinst() {
- einfo
- einfo "Please read and cite gromacs related papers from list:"
- einfo "https://www.gromacs.org/articles.html"
- einfo
- readme.gentoo_print_elog
-}