* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2017-12-12 20:50 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2017-12-12 20:50 UTC (permalink / raw
To: gentoo-commits
commit: a27e7d816cec5df52e648e8982b4099821fee127
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 12 20:35:43 2017 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Tue Dec 12 20:50:14 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a27e7d81
sci-chemistry/gromacs: Version bump
Package-Manager: Portage-2.3.13, Repoman-2.3.4
sci-chemistry/gromacs/Manifest | 4 +-
.../gromacs/files/gromacs-2018-fix-build.patch | 71 ----------------------
...2018_beta1.ebuild => gromacs-2018_beta2.ebuild} | 4 --
3 files changed, 2 insertions(+), 77 deletions(-)
diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
index e0a72f51eb9..4b81bd12d93 100644
--- a/sci-chemistry/gromacs/Manifest
+++ b/sci-chemistry/gromacs/Manifest
@@ -3,7 +3,7 @@ DIST gromacs-2016.2.tar.gz 27339623 BLAKE2B c3548f4abdc4c1b09a79a3da99d7ca8060da
DIST gromacs-2016.3.tar.gz 27342692 BLAKE2B 3bea357cb672f41dda68c0d4291c06e2ab8bbc91629e25c9e56741223911be7994be10b2427fb1ca1cd41e511d23323851ba3211ee8590f152e23a64b2253095 SHA512 16593df0a52620766fb86cfeb16328793503f860cb07cdbbd503ba7f41e6430efb4848389b7179ca3907b57311162666d05224b454e1afb1b74b220f38498d86
DIST gromacs-2016.4.tar.gz 27368706 BLAKE2B 2a176812fe2a097d72c7148ff5ed4ed7209279cf439af6a969c3aba81157c59a4d9af34d19c7b1da088b0a4ab981b489b84446afbcaf64b20724bda1dc3560ff SHA512 69661d2a7a8a5259be277de35e2baa4b688d1f7bef225fc7d733a9b00c6ee135dcbad517c7c9f751121647c2fbd085f2c9cdf22dbd941c7ebc5d3b09e7e08f1f
DIST gromacs-2016.tar.gz 27321561 BLAKE2B cdcf0aa5ac36981e736fd2ecc2f641e99f40146d829c88e5ff973c7b7c3c1ab920f7822c336e9eea87a8605362e723d7477dd07f9154c8a38476a3f6c391d6aa SHA512 756771baaa85a1d16e7d5b8e4c96bbd1c04c7acdc536a253886cff186316330f06d60d206a0159efb15f47f161c779d3757dc5dbceab8c097241c1382d376201
-DIST gromacs-2018-beta1.tar.gz 29857800 BLAKE2B 221ed414c1dc73b59df27dfb6dd22ef094152bba7a8346cd0d0164e9a0aa5463a7d836dfb13e98ac8cdbef2ae4a0503763a5c445a5e1c73815b3592d8b8f97fe SHA512 6e827b7b33589ccc7ef1d237c4e8ce06749a2c47f59956d383fdb59439a34874a9e0e3a3cca1d209425353a7dcf0f963de035dd0281d4c8aad0c921e6bbc7b93
+DIST gromacs-2018-beta2.tar.gz 29867327 BLAKE2B 6cf2e0c8889e0db7cc1d261cab7176481cf8ac9d79fb0cd0defb4c5f9474b91d694b9d4c6ef556dd7bf8505259bab1c1efca0a4bbdb7338a243383306da2c0a6 SHA512 a276de608e123aa350f9d5c2884e40edaed29541946dddc305b0a94cedf3301185f3ab916d579a043478bb18c54d357d439cd79151c78176373ddeb3665f873e
DIST gromacs-5.0.4.tar.gz 26342095 BLAKE2B 27a2483e23533ad627114c0005fa0d49a311b359c31aed6378bdd768c9dda03c3b19f11d961f0bd3b82a1711737d4b7dce13cad5fc56d058dd0110fe21421ee3 SHA512 bc62b623bf71dcaa948aaf7563a3d3afa973da0702062848a20323db202e862dcee413197dacd1472866ccb40fce7709e283177b1c6c49514064f23e6c46b5ee
DIST gromacs-5.1.3.tar.gz 27095702 BLAKE2B b7fd8fa10e8c4f4368ac551338c59374dc35f85c9fdae5d64eec62929b8f04ea724a084959b3618cd8a151bf3e0a0c84c8f75de953722effca82a4928941ce73 SHA512 9ab26e1b2268f8d567b89b2d99d0b75b937b28edceaec56d17ca3243c76faa31255ffc0c45d762c7c693fe500b00e36ad43b80572d1d7f92dc87f9d2d98c0ba6
DIST regressiontests-2016.1.tar.gz 67094518 BLAKE2B 3ae0132e246f2abcf77495bff69adb32bfe98063a824cc408279fb43022ca5e8e07afaee08f3a255657b8cdfd21ba2ff4cc428c2c3d21958ba5149ce745d436c SHA512 fc01c802d81400373a147171881f3b7b9309402e8ffb08287ba393aefbb701ba93bbe0b9549ff6fa264a8befbba445c2d2c7450633063a724f78ec8ca81ae8c9
@@ -11,6 +11,6 @@ DIST regressiontests-2016.2.tar.gz 67095329 BLAKE2B fec8a663845ad67374c8a230d159
DIST regressiontests-2016.3.tar.gz 67093968 BLAKE2B a644bbd2a0398c1d84f61809a9f4f1cb89d307b0e9952f414e28d18464799e5f49fe810e342768a7b15f1d63b10bf1facb148c1d04ad670c613022302f04ea9d SHA512 ee87df9f339954da0e1f1b4c8b8d4deb574f3b73d174010a295a7a0e8bc462ead7691090ea7cf8ac3d984a6cd70f1cd22c3592fa161b2967061ae5ba2796286b
DIST regressiontests-2016.4.tar.gz 67643648 BLAKE2B 767c3b0ca1002e6ca68fc3346b7164cca3beaa52f9b1c70672b64cf80427cab045e4d924d0b67a4fe4c76e3a1c0a803964e278d2a9b14b87a555f98dd78525d3 SHA512 367438b897a05e1cc0dcd1d3872fb6a0e9ff6b1146e9448d941d6517dce789f0c478d20cf0a4f3565070f132dc88872441aadb8b499f59efa0e1e4a6dd6a7135
DIST regressiontests-2016.tar.gz 66908712 BLAKE2B 3039b5b46bf99dc2e34a61ed0f47f7355087c260bd1accc119f9ed99bb03c4645d05df41e301cfc6a6de6a9a369b2bf4e01a54852100577e40605e091bbe24e8 SHA512 59902c1973c33ea8f003f21a737dc7cc64da3258112322eedc9834b53628134a6817d5ee5b3950c9bfd97a3a0580aef88ddef0609ef2c58693c96c7575651e01
-DIST regressiontests-2018-beta1.tar.gz 67870909 BLAKE2B e9aff43331394c4a50cbc626d0327498f1571cf457e6b924f0cfe8eb688a9cd8d2b66c13c900da8737b124861fb567f9129aff840a294e92233b9a2214ff20d7 SHA512 509175cbbb8528d9bb1394c726c6e89291c2077880a3c4bf99a330ff457ca233ae74e771b8a753b0c94bba8de02840b1e5460b7c226e177742b1dee289833c0f
+DIST regressiontests-2018-beta2.tar.gz 67867984 BLAKE2B d5a68dd30c92d1ccfd08b7074b41771c08e94be9556524bf5c13517711cc74ec945aa8bb167cdc4f954b12ac214f9c24a2935ceed6a92c6ecd2a0d1cc860fb63 SHA512 2dcacf52220972b0eae03da7e917e2e2bc85acc4cc2adcddefbe5d6176d5a5200eb77aeb55df06942fa88078f25f623c7b3c586fde852d6045b9caa0337d802a
DIST regressiontests-5.0.4.tar.gz 65193251 BLAKE2B c5e5f23adcc2639fe652bc252533307c7fda44453d506603242968bd8588c7394028b2c3c7a9252f807a050d40e8f78735e904dfe517d3db8ae962051f4826c1 SHA512 747725fa28c1c9525596bdeeb8809e45268e19036c11dac67d043aa1c51748688ca37eb6014eb7e819eb927a8b9ca2631d0ace4cdff8ed491b08c316c530ab65
DIST regressiontests-5.1.3.tar.gz 66994083 BLAKE2B 7009f65ad0138664ac84e57f8bc7cce5d18a59f99943e56b6642583120bfce279e005ac0bacd2db8904ea477a48e2b938c64de46a65fa5d08fce6009d53583c3 SHA512 486e86eb3b75bae822abe82dac4e1098aa13723bd04214021f835a2f0b847303f015a9ececc33aa5ae63d31a2eeae07e512f22464b6c0e26d1286b0781578022
diff --git a/sci-chemistry/gromacs/files/gromacs-2018-fix-build.patch b/sci-chemistry/gromacs/files/gromacs-2018-fix-build.patch
deleted file mode 100644
index 2ed6a19f31b..00000000000
--- a/sci-chemistry/gromacs/files/gromacs-2018-fix-build.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 81e68584512b21ec572d2561c25a1b19982aa0be Mon Sep 17 00:00:00 2001
-From: Alexey Shvetsov <alexxy@omrb.pnpi.spb.ru>
-Date: Fri, 1 Dec 2017 17:12:36 +0300
-Subject: [PATCH] Fix build with cmake 3.10 on Linux
-
-Without this fix cmake will fail with
-
--- Detecting CXX compiler ABI info - done
--- Detecting CXX compile features
--- Detecting CXX compile features - done
-CMake Error at cmake/gmxCTestUtilities.cmake:56 (file):
- file STRINGS file
- "/var/tmp/portage/sci-chemistry/gromacs-2018_beta1/work/gromacs-2018_beta1_float/DartConfiguration.tcl"
- cannot be read.
-Call Stack (most recent call first):
- CMakeLists.txt:89 (gmx_ctest_init)
-
--- Performing Test CXXFLAG_STD_CXX0X
--- Performing Test CXXFLAG_STD_CXX0X - Success
--- Performing Test CXX11_SUPPORTED
--- Performing Test CXX11_SUPPORTED - Success
-....
-....
-....
--- Looking for inttypes.h
--- Looking for inttypes.h - found
--- <<< Gentoo configuration >>>
-Build type Gentoo
-Install path /usr
-Compiler flags:
-C -march=core-avx2 -O2 -pipe -march=native -mtune=native -mfpmath=sse -mavx2
-C++ -march=core-avx2 -O2 -pipe -march=native -mtune=native -mfpmath=sse -mavx2 -std=c++11
-Linker flags:
-Executable -Wl,-O1 -Wl,--as-needed
-Module -Wl,-O1 -Wl,--as-needed
-Shared -Wl,-O1 -Wl,--as-needed
-
--- Configuring incomplete, errors occurred!
-See also "/var/tmp/portage/sci-chemistry/gromacs-2018_beta1/work/gromacs-2018_beta1_float/CMakeFiles/CMakeOutput.log".
-See also "/var/tmp/portage/sci-chemistry/gromacs-2018_beta1/work/gromacs-2018_beta1_float/CMakeFiles/CMakeError.log".
-
-Change-Id: Ie04c2e5f5884f05c3648fed7289157e73fd8d81f
-Signed-off-by: Alexey Shvetsov <alexxy@omrb.pnpi.spb.ru>
----
- cmake/gmxCTestUtilities.cmake | 10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
-diff --git a/cmake/gmxCTestUtilities.cmake b/cmake/gmxCTestUtilities.cmake
-index 89715f910..3685df648 100644
---- a/cmake/gmxCTestUtilities.cmake
-+++ b/cmake/gmxCTestUtilities.cmake
-@@ -50,10 +50,12 @@ macro (gmx_ctest_init)
- set(MEMORYCHECK_TYPE "AddressSanitizer")
- endif()
- include(CTest)
-- # At least with CMake 3.4.1 on OS X, AddressSanitizer support in CTest
-- # does not work without this...
-- set(_ctest_config_file "${PROJECT_BINARY_DIR}/DartConfiguration.tcl")
-- file(STRINGS ${_ctest_config_file} _existing REGEX "^CMakeCommand: ")
-+ if(APPLE)
-+ # At least with CMake 3.4.1 on OS X, AddressSanitizer support in CTest
-+ # does not work without this...
-+ set(_ctest_config_file "${PROJECT_BINARY_DIR}/DartConfiguration.tcl")
-+ file(STRINGS ${_ctest_config_file} _existing REGEX "^CMakeCommand: ")
-+ endif()
- if (NOT _existing)
- file(APPEND ${_ctest_config_file} "\nCMakeCommand: ${CMAKE_COMMAND}\n")
- endif()
---
-2.15.0
-
diff --git a/sci-chemistry/gromacs/gromacs-2018_beta1.ebuild b/sci-chemistry/gromacs/gromacs-2018_beta2.ebuild
similarity index 99%
rename from sci-chemistry/gromacs/gromacs-2018_beta1.ebuild
rename to sci-chemistry/gromacs/gromacs-2018_beta2.ebuild
index 3e0dd9b80bc..315835fdc60 100644
--- a/sci-chemistry/gromacs/gromacs-2018_beta1.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2018_beta2.ebuild
@@ -66,10 +66,6 @@ REQUIRED_USE="
DOCS=( AUTHORS README )
-PATCHES=(
- "${FILESDIR}/${PN}-2018-fix-build.patch"
- )
-
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2019-10-24 9:36 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2019-10-24 9:36 UTC (permalink / raw
To: gentoo-commits
commit: a3f73cefbca1edba2f1b90bd2a8e4f4e3feb2d18
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 24 09:35:35 2019 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Thu Oct 24 09:36:32 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a3f73cef
sci-chemistry/gromacs: Beta1
Package-Manager: Portage-2.3.78, Repoman-2.3.17
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
sci-chemistry/gromacs/Manifest | 2 +
.../gromacs/files/gromacs-2020_beta1-pytest.patch | 12 +
sci-chemistry/gromacs/gromacs-2020_beta1.ebuild | 337 +++++++++++++++++++++
sci-chemistry/gromacs/metadata.xml | 1 +
4 files changed, 352 insertions(+)
diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
index a3e67a7d98a..5e15b60b138 100644
--- a/sci-chemistry/gromacs/Manifest
+++ b/sci-chemistry/gromacs/Manifest
@@ -3,8 +3,10 @@ DIST gromacs-2018.8.tar.gz 29913703 BLAKE2B 8780032305928067fbfe1559efe9eedc4d47
DIST gromacs-2019.2.tar.gz 33437869 BLAKE2B bebe4942688dace148856d4491b687b8e0fd2c86d7fbd9eecdb46824d316a0fc3854464ecafa79d8db92327ee8467be204b050c11f1e71132184efd812c3bf09 SHA512 da7ff24e8485774e22d1c2464fbe64675c3305ef0e21a3d17e363201031952e5d4a9b81f572d5284fb6f2596ed99daf62fe78d653387d9d714274f46bc750183
DIST gromacs-2019.3.tar.gz 33441419 BLAKE2B 79319dd23982c65c7c4d8e5f633cef0c7fd99a38a4e0cc9030a3ffb0fdfc07a4fbfbcfa942896f23a143b747e044fae645498a3e6992497d1f1a7d966f80b2b0 SHA512 de9f54d095b45ea7efd1043f83a40f6c778a6e3e2067a01f48d1ce843d68d226061933ca28a3edb635b795a8ddd5ef9deb8ed1114aa3235bc8039db8ff7d0218
DIST gromacs-2019.4.tar.gz 33444527 BLAKE2B 5a01ed0e38faade037de701b72e8d52fd5a947a23228f0b5170a170dc963b00068a6b6880dd9a3f6f2a73140a3787952741dcbcc862bc357a8be8bf5640faa16 SHA512 adc6dea187b7f3a3c13fcd39445ae45248d46d56b0102fda47b1850b83ff1fb77a3fec99d4a4124b01ed04646dab6ab67749eae1bec36d1ba6f2205855cd29f8
+DIST gromacs-2020-beta1.tar.gz 29019829 BLAKE2B 1884e0984aa6cd8a6bf7d9c692c5f465247ed3c396a0b12fa67c1fc763d84dbeaee23905c95e902e9befe1af8617fc9dc46d7280140ce09ba1915bef58a86d0a SHA512 8992dbdd560fa5227d19f59d9a360cd9e5f0c3a1df435f43293bb044ca6414f177e04a4933b8c0f19d5121a44244a4c9c95d026f6c817fd4ba5b0e4f7b3a01a0
DIST regressiontests-2018.7.tar.gz 67856738 BLAKE2B 955ae8b5e74f90fec704cf41fbd00bd8c09d754f950551fe0adfcd407db6fdb4491a3815149ea37d36c747316c79d462e823b9f6b26f2376bf90d87aad95731b SHA512 c2ff390750bd99faebcd8d5dd8ad6dbf2b00113ed888bddddf985dbf95d7f347093adb67f3c396547b3e2990de330fddb7efe83ded91a72cf97c82a1dac7e826
DIST regressiontests-2018.8.tar.gz 67855469 BLAKE2B 34c9b339f6229f483afbb5192ee6ba8b8f72d5c26907a853af9c53dfece0d88739e48f6b44b78d1c010f988f9385d077285300522164f533a5861e9dda879275 SHA512 3642389d27bd1942cd0f091c940ae97b197b94856a387fe581dc516b0d4169480f16551d4ba357f9282b3337d605c286d51dd38112ac87c826dda634904836bb
DIST regressiontests-2019.2.tar.gz 67643003 BLAKE2B 4178de5d62f194a81f97e442c10f123dc59c5e63f2078f7f07135709f3f6e530e0d237bf40264b285c084519d5ace75dfcbcddc16dc740c4f17233dc33542e45 SHA512 c1f25bc770d3f0a873c887d5563c1cd88179e81211b70ce6f5015696e6fa0b6931a8da7a449f2b223f3105b9e2e7eca67248e96fbfc2a7fd5fb360ba616f22ff
DIST regressiontests-2019.3.tar.gz 67640462 BLAKE2B ed6c176a144e0407be66585be5d6090c31c047498bc5f48f59685108de91f2f9ddb2d22b291a15e6ffa1db848aae19b94a79c8c3d34b1067680f759a179953dd SHA512 822e905fb488ce308eb9324d93f78106da5252c773c7941d49c6162e73bdff109aeca1f0d57216c6dd6536a4c41d80013fa1cee2f5206b0c4160a3e5b4a31315
DIST regressiontests-2019.4.tar.gz 67639728 BLAKE2B aba912863669a4a6a6a74e385f9b0974d0c0aa30d3aea7834d77c8bb3f4f59effcbe10a480e74e7aa31fe32d64ba6628d67703ca1894839ce7ddfc8da93902dc SHA512 45de03d368da4e6e5c647f3fea61d64defe6d1cbc1c4219eeac2db27559e3cea7f15f9acb3e56ab934b44ca3ae4ce199b4e4969f704776bb9f0b23f1a34ff56d
+DIST regressiontests-2020-beta1.tar.gz 48263088 BLAKE2B 2c5cacb0ff7d5b31e639388bebc755355837242643ad6dc48b7722918328214c8271f894d956960743641eb9cd4ec9df0013ad8490b73f2006b75fc8ebefcb51 SHA512 fba198e5560c01e6239bcddaa8d574c79062684b3f94f71b06436d83da9b9efd865998cea3a1b9369938e8fec69383d3fd6278c22c7a1a72eb50cc282f4b42c2
diff --git a/sci-chemistry/gromacs/files/gromacs-2020_beta1-pytest.patch b/sci-chemistry/gromacs/files/gromacs-2020_beta1-pytest.patch
new file mode 100644
index 00000000000..452987f38b9
--- /dev/null
+++ b/sci-chemistry/gromacs/files/gromacs-2020_beta1-pytest.patch
@@ -0,0 +1,12 @@
+diff -urN gromacs-2020-beta1/python_packaging/src/CMakeLists.txt gromacs-2020-beta1-py/python_packaging/src/CMakeLists.txt
+--- gromacs-2020-beta1/python_packaging/src/CMakeLists.txt 2019-09-12 05:48:57.000000000 +0300
++++ gromacs-2020-beta1-py/python_packaging/src/CMakeLists.txt 2019-10-09 17:01:30.845304765 +0300
+@@ -201,5 +201,7 @@
+ # to the `check` target. Normal usage is to first install the Python package,
+ # then run `pytest` on the `tests` directory. Refer to gmxapi package documentation.
+ if(NOT GMXAPI_MASTER_PROJECT)
+- add_subdirectory(test)
++ if (GMX_BUILD_TESTING)
++ add_subdirectory(test)
++ endif()
+ endif()
diff --git a/sci-chemistry/gromacs/gromacs-2020_beta1.ebuild b/sci-chemistry/gromacs/gromacs-2020_beta1.ebuild
new file mode 100644
index 00000000000..a4706261371
--- /dev/null
+++ b/sci-chemistry/gromacs/gromacs-2020_beta1.ebuild
@@ -0,0 +1,337 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_MAKEFILE_GENERATOR="ninja"
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+inherit bash-completion-r1 cmake-utils cuda distutils-r1 eutils multilib readme.gentoo-r1 toolchain-funcs xdg-utils
+
+if [[ $PV = *9999* ]]; then
+ EGIT_REPO_URI="git://git.gromacs.org/gromacs.git
+ https://gerrit.gromacs.org/gromacs.git
+ https://github.com/gromacs/gromacs.git
+ https://repo.or.cz/r/gromacs.git"
+ [[ $PV = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:4}"
+ inherit git-r3
+else
+ SRC_URI="ftp://ftp.gromacs.org/pub/${PN}/${PN}-${PV/_/-}.tar.gz
+ test? ( http://gerrit.gromacs.org/download/regressiontests-${PV/_/-}.tar.gz )"
+ KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-macos"
+fi
+
+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="http://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 +gmxapi-legacy +hwloc lapack +lmfit mkl mpi +offensive opencl openmp +python +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
+ doc? (
+ app-doc/doxygen
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ media-gfx/mscgen
+ media-gfx/graphviz
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ media-gfx/imagemagick
+ )"
+RDEPEND="${CDEPEND}"
+
+REQUIRED_USE="
+ || ( single-precision double-precision )
+ cuda? ( single-precision )
+ cuda? ( !opencl )
+ mkl? ( !blas !fftw !lapack )
+ ${PYTHON_REQUIRED_USE}"
+
+DOCS=( AUTHORS README )
+
+RESTRICT="!test? ( test )"
+
+if [[ ${PV} != *9999 ]]; then
+ S="${WORKDIR}/${PN}-${PV/_/-}"
+fi
+
+PATCHES=( "${FILESDIR}/${P}-pytest.patch" )
+
+pkg_pretend() {
+ [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
+ use openmp && ! tc-has-openmp && \
+ die "Please switch to an openmp compatible compiler"
+}
+
+src_unpack() {
+ if [[ ${PV} != *9999 ]]; then
+ default
+ else
+ git-r3_src_unpack
+ if use test; then
+ EGIT_REPO_URI="git://git.gromacs.org/regressiontests.git" \
+ EGIT_BRANCH="${EGIT_BRANCH}" \
+ EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
+ git-r3_src_unpack
+ fi
+ fi
+}
+
+src_prepare() {
+ #notes/todos
+ # -on apple: there is framework support
+
+ xdg_environment_reset #591952
+
+ cmake-utils_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"
+
+ # try to create policy for imagemagik
+ mkdir -p ${HOME}/.config/ImageMagick
+ cat >> ${HOME}/.config/ImageMagick/policy.xml <<- EOF
+ <?xml version="1.0" encoding="UTF-8"?>
+ <!DOCTYPE policymap [
+ <!ELEMENT policymap (policy)+>
+ !ATTLIST policymap xmlns CDATA #FIXED ''>
+ <!ELEMENT policy EMPTY>
+ <!ATTLIST policy xmlns CDATA #FIXED '' domain NMTOKEN #REQUIRED
+ name NMTOKEN #IMPLIED pattern CDATA #IMPLIED rights NMTOKEN #IMPLIED
+ stealth NMTOKEN #IMPLIED value CDATA #IMPLIED>
+ ]>
+ <policymap>
+ <policy domain="coder" rights="read | write" pattern="PS" />
+ <policy domain="coder" rights="read | write" pattern="PS2" />
+ <policy domain="coder" rights="read | write" pattern="PS3" />
+ <policy domain="coder" rights="read | write" pattern="EPS" />
+ <policy domain="coder" rights="read | write" pattern="PDF" />
+ <policy domain="coder" rights="read | write" pattern="XPS" />
+ </policymap>
+ EOF
+}
+
+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 && has_version "=sci-libs/mkl-10*"; then
+ fft_opts=( -DGMX_FFT_LIBRARY=mkl
+ -DMKL_INCLUDE_DIR="${MKLROOT}/include"
+ -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
+ )
+ 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_BUILD_MANUAL=$(usex doc)
+ -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" )
+ mycmakeargs=(
+ ${mycmakeargs_pre[@]} ${p}
+ -DGMX_MPI=OFF
+ -DGMX_THREAD_MPI=$(usex threads)
+ -DGMXAPI=$(usex gmxapi)
+ -DGMX_INSTALL_LEGACY_API=$(usex gmxapi-legacy)
+ "${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-utils_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"
+ 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-utils_src_configure
+ [[ ${CHOST} != *-darwin* ]] || \
+ sed -i '/SET(CMAKE_INSTALL_NAME_DIR/s/^/#/' "${WORKDIR}/${P}_${x}_mpi/gentoo_rules.cmake" || die
+ done
+ if use python; then
+ cd python_packaging
+ distutils-r1_src_configure
+ cd ..
+ fi
+}
+
+src_compile() {
+ for x in ${GMX_DIRS}; do
+ einfo "Compiling for ${x} precision"
+ BUILD_DIR="${WORKDIR}/${P}_${x}"\
+ cmake-utils_src_compile
+ # not 100% necessary for rel ebuilds as available from website
+ if use doc; then
+ BUILD_DIR="${WORKDIR}/${P}_${x}"\
+ cmake-utils_src_compile manual
+ fi
+ use mpi || continue
+ einfo "Compiling for ${x} precision with mpi"
+ BUILD_DIR="${WORKDIR}/${P}_${x}_mpi"\
+ cmake-utils_src_compile
+ done
+ if use python; then
+ cd python_packaging
+ distutils-r1_src_compile
+ cd ..
+ fi
+}
+
+src_test() {
+ for x in ${GMX_DIRS}; do
+ BUILD_DIR="${WORKDIR}/${P}_${x}"\
+ cmake-utils_src_make check
+ done
+ if use python; then
+ cd python_packaging
+ distutils-r1_src_test
+ cd ..
+ fi
+}
+
+src_install() {
+ for x in ${GMX_DIRS}; do
+ BUILD_DIR="${WORKDIR}/${P}_${x}" \
+ cmake-utils_src_install ${GMX_PYTHON_INSTALL}
+ if use doc; then
+ newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
+ fi
+ use mpi || continue
+ BUILD_DIR="${WORKDIR}/${P}_${x}_mpi" \
+ cmake-utils_src_install
+ done
+
+ if use tng; then
+ insinto /usr/include/tng
+ doins src/external/tng_io/include/tng/*h
+ fi
+ if use python; then
+ cd python_packaging
+ distutils-r1_src_install
+ cd ..
+ 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:"
+ einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
+ einfo "https://dx.doi.org/10.1021/ct700301q"
+ einfo
+ readme.gentoo_print_elog
+}
diff --git a/sci-chemistry/gromacs/metadata.xml b/sci-chemistry/gromacs/metadata.xml
index 7c756657ae4..c31594084c8 100644
--- a/sci-chemistry/gromacs/metadata.xml
+++ b/sci-chemistry/gromacs/metadata.xml
@@ -13,6 +13,7 @@
<flag name="cuda">Enable cuda non-bonded kernels</flag>
<flag name="double-precision">More precise calculations at the expense of speed</flag>
<flag name="gmxapi">Add support for gmxapi library</flag>
+ <flag name="gmxapi-legacy">Enable installing lagacy headers</flag>
<flag name="hwloc">Enable HWLoc lib support</flag>
<flag name="lmfit">Use external <pkg>sci-libs/lmfit</pkg></flag>
<flag name="opencl">Enable opencl non-bonded kernels</flag>
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2021-11-07 20:12 Christoph Junghans
0 siblings, 0 replies; 10+ messages in thread
From: Christoph Junghans @ 2021-11-07 20:12 UTC (permalink / raw
To: gentoo-commits
commit: 2cdfa60bdd271c43984a8dca85fa2192b6d6216b
Author: Christoph Junghans <junghans <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 7 18:04:51 2021 +0000
Commit: Christoph Junghans <junghans <AT> gentoo <DOT> org>
CommitDate: Sun Nov 7 20:12:26 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2cdfa60b
sci-chemistry/gromacs: fix v2019 build on newer glibc
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Christoph Junghans <junghans <AT> gentoo.org>
.../files/gromacs-2019.6-missing-include.patch | 38 +++
sci-chemistry/gromacs/gromacs-2019.6-r2.ebuild | 255 +++++++++++++++++++++
2 files changed, 293 insertions(+)
diff --git a/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch b/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch
new file mode 100644
index 00000000000..cf478d52cb6
--- /dev/null
+++ b/sci-chemistry/gromacs/files/gromacs-2019.6-missing-include.patch
@@ -0,0 +1,38 @@
+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-2019.6-r2.ebuild b/sci-chemistry/gromacs/gromacs-2019.6-r2.ebuild
new file mode 100644
index 00000000000..35bbc972de6
--- /dev/null
+++ b/sci-chemistry/gromacs/gromacs-2019.6-r2.ebuild
@@ -0,0 +1,255 @@
+# Copyright 1999-2021 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 multilib readme.gentoo-r1 toolchain-funcs xdg-utils
+
+SRC_URI="
+ http://ftp.gromacs.org/gromacs/${PN}-${PV/_/-}.tar.gz
+ doc? ( http://ftp.gromacs.org/manual/manual-${PV/_/-}.pdf )
+ test? ( http://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="http://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 )
+ 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() {
+ [[ $(gcc-version) == "4.1" ]] && die "gcc 4.1 is not supported by gromacs"
+ use openmp && ! tc-has-openmp && \
+ die "Please switch to an openmp compatible compiler"
+}
+
+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 && has_version "=sci-libs/mkl-10*"; then
+ fft_opts=( -DGMX_FFT_LIBRARY=mkl
+ -DMKL_INCLUDE_DIR="${MKLROOT}/include"
+ -DMKL_LIBRARIES="$(echo /opt/intel/mkl/10.0.5.025/lib/*/libmkl.so);$(echo /opt/intel/mkl/10.0.5.025/lib/*/libiomp*.so)"
+ )
+ 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" )
+ 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"
+ 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:"
+ einfo "Gromacs 4, J. Chem. Theory Comput. 4, 435 (2008). "
+ einfo "https://dx.doi.org/10.1021/ct700301q"
+ einfo
+ readme.gentoo_print_elog
+}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2022-02-21 16:20 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2022-02-21 16:20 UTC (permalink / raw
To: gentoo-commits
commit: e62617ffb1b60e2a916b7a92659df2606374d62a
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 21 16:19:40 2022 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Mon Feb 21 16:20:00 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e62617ff
sci-chemistry/gromacs: Fix musl build (missing int64_t) for 2022
Closes: https://bugs.gentoo.org/833599
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
.../gromacs/files/gromacs-2022-musl-stdint.patch | 25 ++++++++++++++++++++++
...22_rc1-r1.ebuild => gromacs-2022_rc1-r2.ebuild} | 2 ++
2 files changed, 27 insertions(+)
diff --git a/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch b/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch
new file mode 100644
index 000000000000..cae6fff93ae3
--- /dev/null
+++ b/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch
@@ -0,0 +1,25 @@
+From 694994a9d8ad989e7c5d61b7759024a7b10ce3b7 Mon Sep 17 00:00:00 2001
+From: Paul Bauer <paul.bauer.q@gmail.com>
+Date: Mon, 21 Feb 2022 09:53:46 +0100
+Subject: [PATCH 1/6] Fix missing includes for musl libc
+
+Fixes #4404
+---
+ api/legacy/include/gromacs/math/vectypes.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/api/legacy/include/gromacs/math/vectypes.h b/api/legacy/include/gromacs/math/vectypes.h
+index b818f5f8f8..7c5457e05d 100644
+--- a/api/legacy/include/gromacs/math/vectypes.h
++++ b/api/legacy/include/gromacs/math/vectypes.h
+@@ -36,6 +36,7 @@
+
+ #include <cassert>
+ #include <cmath>
++#include <cstdint>
+
+ #include <algorithm>
+ #include <type_traits>
+--
+2.35.1
+
diff --git a/sci-chemistry/gromacs/gromacs-2022_rc1-r1.ebuild b/sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild
similarity index 99%
rename from sci-chemistry/gromacs/gromacs-2022_rc1-r1.ebuild
rename to sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild
index f12ac52a719f..b0d42eda5cb0 100644
--- a/sci-chemistry/gromacs/gromacs-2022_rc1-r1.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild
@@ -82,6 +82,8 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${PN}-2022-musl-stdint.patch" )
+
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2022-02-22 20:58 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2022-02-22 20:58 UTC (permalink / raw
To: gentoo-commits
commit: a489fc2bdbf6cbaa31f072ba955419881cfa1ec7
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 22 20:58:03 2022 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Tue Feb 22 20:58:24 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a489fc2b
sci-chemistry/gromacs: New release
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
sci-chemistry/gromacs/Manifest | 6 +++---
.../gromacs/files/gromacs-2022-musl-stdint.patch | 25 ----------------------
...macs-2022_rc1-r2.ebuild => gromacs-2022.ebuild} | 8 +++----
3 files changed, 6 insertions(+), 33 deletions(-)
diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
index 77e174d52b10..7ebd8ba87eda 100644
--- a/sci-chemistry/gromacs/Manifest
+++ b/sci-chemistry/gromacs/Manifest
@@ -4,18 +4,18 @@ DIST gromacs-2020.4.tar.gz 29149899 BLAKE2B a07c8efd96137d58c1edf4ac9b5aafeb16d9
DIST gromacs-2020.7.tar.gz 29175554 BLAKE2B 98f1aa415946f8eb113febc81105f0c1b0919b96fc3c55a0ab83bf3950ff509b81eade92e645adb0bc2b407df239e20cf3f19828b6e08616437c8693c1fddcc8 SHA512 1d375c44cec38445e56cea252623b5b6c565680268999d4b6c14d6dc38759a27227655b2d29efaab9f9115d3677b446cb555e11cddafa0dc10c4827caaa2477b
DIST gromacs-2021.3.tar.gz 37987972 BLAKE2B d71995c7d5a34978246e33dc637ac3d273e547afcf72d1a107026650f03286ecdf27e4b9a70113b3c3a01af59ad49ac5c813aa6e5d2e8eb29fd05582a7a28d34 SHA512 da420917d06de2e192dfbb4e1b9f46989ed05b5c7e641c657104ed8f2bd8b22509bffd1ecfd7c965c80544eafa6af12d6d0aba7e1e7d9d14a4a88fb3fbf394a5
DIST gromacs-2021.5.tar.gz 38023772 BLAKE2B 45e1f080b86626423e471f06b48b615db1913048f9f6998da8ce45408339b32f829d33dd2af57297a7d307fcffd556c333a58c309ee0f2adb021ca3755619b05 SHA512 56c1b312fc8e52ec6f86e445d2fa2d07107c461b35d4dc8cdf95580f05fd8e6c5fd671d0e72b2b9e74e3232bc8c41db496fe4bcaf2b9a3ae3c2cfa93489a31c5
-DIST gromacs-2022-rc1.tar.gz 39674628 BLAKE2B 8943a1e8445aa286305bb786e1303973e58325c01ce86883e5a72075b8ddd57453c61c8a0087a9ec73ea2903b04596109322151d8fadda350a4eace713cd962f SHA512 d6f45e46b653237154fefce95e3799ed2fc96d6a0365d027ef0aabd03cd3c3507108985caca8907c02479f05a10ab833efd3217e7def100897fa845e0ebf029f
+DIST gromacs-2022.tar.gz 40353044 BLAKE2B e9ba72092467c143be7de0739e71181f384a6bb463338c58c60a5d56f30b960651bda60c1df4fa424e237f1ae90d5d7bab19670ec22cd21bba3cb638f8e5b1ba SHA512 f256b032b226c14407ba21c7b825b6bf3f7b3595318b8638594d81ed6346b0b8563098f6ff7005c2ba125447c5d2dff750829b24781c8f1ea266e6465f627db1
DIST manual-2018.8.pdf 10025023 BLAKE2B afb0a6e6a72d78df743fcb57e7c1716848589e571dd35167b957a9b407ca27978ccfb6cb9e0df9c9439b888f352501a00ba32281ed1e0b4193bd606f1d77152e SHA512 b1972f7ce965bfc9377542993c5943ea4868a8ed23a969d4203264746d6bea3a7a65c6379196ece37fd6d68ec7ec80f827bde87d1049284af7082759a124f1d5
DIST manual-2019.6.pdf 12702376 BLAKE2B c350127bc06a9eb3dee73da39037c84daeb89500e23cb131bd19a150bf60602d4dde7611e0c6f0f344af4093e96a899303dac71b4df56fd0c44c3a48a56606b7 SHA512 dfdff67c2c1c9ce1f1c236b7686c5331b0fe86951da6c98eddd6a3e748815e0be0a9653ae4318469fcdd913c4e7c355d64a997cc80b9d9fbe6282ef6d98e61eb
DIST manual-2020.4.pdf 11851608 BLAKE2B 7b7bdf08e8946fcc448543b08391b94a67fee60a8c810597c1f09f70443f9d7db817c99622dd0c21c6317f5fdcd6c4a88589ecac57055cb0cd8597d6021026e7 SHA512 928555663c77de36393e625c29d388d4e1c8c1298e7a993d871839e0d4d8d18d190221ad8f1d975bd072bdd6a061e9ea5b9295f2ecf45f24b6523ea5ea290fed
DIST manual-2020.7.pdf 11850780 BLAKE2B 38594e87993badfbbcf47d6010a7f67d3c3426dab85e1462916b4d62be27b5764953f912cf2b71ee24877e0bfa27b3f74431da2da81b4977d58cb66b2cc795a3 SHA512 4f184f2c90e0bac01a48069cc546cd5b04fa5f543f90dd2d68c6d17be278152fd09456b6a6c5c8236f8fb85a174d6ec7a1c7b44d437b4e6fea5d0ada73cec0f6
DIST manual-2021.3.pdf 12255076 BLAKE2B 6ca516b6832507c9d4100679d1f9bc9e3ab17d226849b050764b0d0626247dc57ce49985f9a7fc0061f3df278923a83faa367ca8ab91c37e5624dc584a51a822 SHA512 5d53798f30ea00fcb4e1b35f7eaa4bebfc05dafa4f2d0c197dcf2b57a624ad3a98b74fd90722e40d0ac13a6fff4ca231f9d6340f52ba94659c827c53c2f1cb16
DIST manual-2021.5.pdf 12253641 BLAKE2B 8850715a2bb21345e1c9735aca1a5dd2ad916e5a18881e7c9f3dda6f055ca12d9d379b74218138999ce50769efd8b9dd6447afbf70bbbefa2564dfb9fb276b91 SHA512 7635108c935e4953d722df6a16ee43edf97eef7e49f047218728f68f61f8f185192ff1d8b13a573b643b040955af211355a7b560c8a894c858d7f71249d41296
-DIST manual-2022_rc1.pdf 13051892 BLAKE2B 99b0a2110a0a7601d4e2d00f4bb3210fed8e0e4dcc2c3a17fa8e902cc713c8aee90eebbcd9b0cb3fd20fb539be6bcf32414fcd3c35a3f9b4677240877623ca93 SHA512 5ff91b2486792a525fc5fc08bfd31225e3c64018b519592ce899ce0a6f92fb366ea4d1b5df3473d264bc93a651c11583757b6603a855cdcd9ad18ec86e160fdc
+DIST manual-2022.pdf 13060966 BLAKE2B e1684d22e16d2bad878cd0adbac0df74a268f89034756a34374908afc7f2562a05dbdf91b3dcbdb98a45b3d21140b02a2df26e0f997c1f501347e102069f22c2 SHA512 0d9bd1fbe2db122f434df1565ba7c9ea5ad168f73855724a6cb488244eda13d8d47b2d534a6873dc7204012156fbf669bdaf7ca7d03a914745f60950392e6d28
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.4.tar.gz 48542144 BLAKE2B 1dcde67525d40ababa74d9e8ba2dd3fdef1de7d1018491e102edd71d3a622925f213b5a0812e5448882b4cb5fb578317e8e5029bdc4bd53008aa8441a3d9dea1 SHA512 7c71f36a1cef22562f14dcd233e90ad2fe370ae1a7d3b5268727259b374e12d4754253735ac8745d3738bdbc1cc2067780fda5e393be2ff264f632fe4e0c1978
DIST regressiontests-2020.7.tar.gz 48541487 BLAKE2B 255608b52158c6c01e7c7c4dcf075128ecf22b2f26d32e8c203de8a4bc69c60ec95f49cf8ccd64abc3073c5e8dca9d6b01daed9dfb8f67bce2dd068ed01acd05 SHA512 2458582f94f3c9f4e1454824ce3940b4f5b6cb2151d06846c42e7a9448296fd2a6df4f53be9624e0d3317d2b59f89bb5348eb8b2970d7b46ac22ca989ef3458a
DIST regressiontests-2021.3.tar.gz 48515038 BLAKE2B ee79d8adddc9c68f7d59d9e568b12bf4d1fe0e44c2810fee846ad6f689bbcacf60f5c266433946329e64e3127bc2d37a3f81f69c070c636b411b38067650c2cf SHA512 e14baa22ef2902a23125bbd9143ae7a9a4810498b321794ff1989f8d044d47db5db41d5225798fda08016c05e5f7f315178b5a6e35cdf01e3b6604670a8ce7a2
DIST regressiontests-2021.5.tar.gz 48537298 BLAKE2B 860ac34aa8706ecdafab4472162775ce12726d93839079ebf9b7df8c2c6a1b47baa8a635c24cf4cb4551a32237c3de7da3197ec136b5bbf48663edc3943720ad SHA512 3605d04b2602339fb7d33e2776da2ada337ca58a3802472d47f490d4e8dd04249a950bf34608a498eedebf69f344c0311bac8f7fcb58ce0ebbb6d608ee39aa2e
-DIST regressiontests-2022-rc1.tar.gz 48609151 BLAKE2B b5ec84b9f3f506636136bf9112ea71f7ce5bad8b3dbec6d8c6b21ab13ddab8252a3038f1dd06e1f97cde47f918aff2c62325d09d51bc5632e1db7b84311dbd91 SHA512 a378f724a728fbadbad3b9013f85bf6fb1945e500151d9dacdaea9371f432ce3449dc812f672b77896800c3c46a3893b239101404a1fab63364e62afd7f18097
+DIST regressiontests-2022.tar.gz 48616817 BLAKE2B 5d303f365a8b3c4554232ca3e583f0eacc1973dd62faaed769d297efb5d7dde3ca04b8071786ecee992a83d7980aa244965212856f48c8832ca55805af61b1c1 SHA512 4566b76b5eb3bbdcdfed8330d4fcd7ada02eb6802434aa9f2ed4f775da780e4bde7daa35d79a72b3f25c540cb1c2b347aa2e6d504a77c095830da024a933fab5
diff --git a/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch b/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch
deleted file mode 100644
index cae6fff93ae3..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2022-musl-stdint.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 694994a9d8ad989e7c5d61b7759024a7b10ce3b7 Mon Sep 17 00:00:00 2001
-From: Paul Bauer <paul.bauer.q@gmail.com>
-Date: Mon, 21 Feb 2022 09:53:46 +0100
-Subject: [PATCH 1/6] Fix missing includes for musl libc
-
-Fixes #4404
----
- api/legacy/include/gromacs/math/vectypes.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/api/legacy/include/gromacs/math/vectypes.h b/api/legacy/include/gromacs/math/vectypes.h
-index b818f5f8f8..7c5457e05d 100644
---- a/api/legacy/include/gromacs/math/vectypes.h
-+++ b/api/legacy/include/gromacs/math/vectypes.h
-@@ -36,6 +36,7 @@
-
- #include <cassert>
- #include <cmath>
-+#include <cstdint>
-
- #include <algorithm>
- #include <type_traits>
---
-2.35.1
-
diff --git a/sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild b/sci-chemistry/gromacs/gromacs-2022.ebuild
similarity index 97%
rename from sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild
rename to sci-chemistry/gromacs/gromacs-2022.ebuild
index b0d42eda5cb0..338c03cc2a11 100644
--- a/sci-chemistry/gromacs/gromacs-2022_rc1-r2.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2022.ebuild
@@ -21,9 +21,9 @@ if [[ ${PV} = *9999* ]]; then
inherit git-r3
else
SRC_URI="
- http://ftp.gromacs.org/gromacs/${PN}-${PV/_/-}.tar.gz
- doc? ( https://ftp.gromacs.org/manual/manual-${PV/_/-}.pdf -> manual-${PV}.pdf )
- test? ( http://ftp.gromacs.org/regressiontests/regressiontests-${PV/_/-}.tar.gz )"
+ http://ftp.gromacs.org/gromacs/${P}.tar.gz
+ doc? ( https://ftp.gromacs.org/manual/manual-${PV}.pdf )
+ test? ( http://ftp.gromacs.org/regressiontests/regressiontests-${PV}.tar.gz )"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
fi
@@ -82,8 +82,6 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
-PATCHES=( "${FILESDIR}/${PN}-2022-musl-stdint.patch" )
-
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2024-03-26 20:00 Andreas Sturmlechner
0 siblings, 0 replies; 10+ messages in thread
From: Andreas Sturmlechner @ 2024-03-26 20:00 UTC (permalink / raw
To: gentoo-commits
commit: 02d7373ca997928b26914b49a9ac62dab43366f1
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 26 11:09:02 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Mar 26 19:59:18 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=02d7373c
sci-chemistry/gromacs: drop 2018.8-r2, 2019.6-r3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
sci-chemistry/gromacs/Manifest | 6 -
.../files/gromacs-2019.6-missing-include.patch | 38 ----
sci-chemistry/gromacs/gromacs-2018.8-r2.ebuild | 237 -------------------
sci-chemistry/gromacs/gromacs-2019.6-r3.ebuild | 252 ---------------------
4 files changed, 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
-}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2024-10-19 18:43 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2024-10-19 18:43 UTC (permalink / raw
To: gentoo-commits
commit: fa7e24cadaf7fb109ea385f8357a916343c846bb
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 19 18:40:05 2024 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Sat Oct 19 18:43:44 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa7e24ca
sci-chemistry/gromacs: Update live version
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
.../files/gromacs-9999-Fix-build-with-torch.patch | 40 ++++++++++++++++++++++
sci-chemistry/gromacs/gromacs-9999.ebuild | 17 +++++++--
sci-chemistry/gromacs/metadata.xml | 1 +
3 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch b/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch
new file mode 100644
index 000000000000..f4f3698d96db
--- /dev/null
+++ b/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch
@@ -0,0 +1,40 @@
+From d997978fc0c644784ed929b0c48e153d5c1f1408 Mon Sep 17 00:00:00 2001
+From: Alexey Shvetsov <alexxyum@gmail.com>
+Date: Sat, 19 Oct 2024 21:22:07 +0300
+Subject: [PATCH] Fix build with torch if non default C{XX}_FLAGS set
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This should fix build colvars with torch if torch was built with non
+default C{,XX}_FLAGS
+
+Erorr info:
+
+FAILED: src/gromacs/CMakeFiles/colvars_objlib.dir/__/external/colvars/colvar.cpp.o
+/usr/bin/x86_64-pc-linux-gnu-g++ -DCOLVARS_TORCH -DGMX_DOUBLE=0 -I/usr/include/torch/csrc/api/include -O2 -pipe -march=skylake -mtune=skylake -std=c++17 -fPIC "-O2 -pipe -march=skylake -mtune=skylake" -D_GLIBCXX_USE_CXX11_ABI=1 -fopenmp -MD -MT src/gromacs/CMakeFiles/colvars_objlib.dir/__/external/colvars/colvar.cpp.o -MF src/gromacs/CMakeFiles/colvars_objlib.dir/__/external/colvars/colvar.cpp.o.d -o src/gromacs/CMakeFiles/colvars_objlib.dir/__/external/colvars/colvar.cpp.o -c /var/tmp/portage/sci-chemistry/gromacs-9999/work/gromacs-9999/src/external/colvars/colvar.cpp
+cc1plus: error: argument to ‘-O’ should be a non-negative integer, ‘g’, ‘s’, ‘z’ or ‘fast’
+
+This caused by doubling quoted C{,XX}_FLAGS
+
+Signed-off-by: Alexey Shvetsov <alexxyum@gmail.com>
+---
+ cmake/gmxManageColvars.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/cmake/gmxManageColvars.cmake b/cmake/gmxManageColvars.cmake
+index 509d56e116..f49c820fa0 100644
+--- a/cmake/gmxManageColvars.cmake
++++ b/cmake/gmxManageColvars.cmake
+@@ -52,7 +52,7 @@ function(gmx_manage_colvars)
+ target_link_libraries(colvars_objlib PRIVATE OpenMP::OpenMP_CXX)
+ endif()
+ if(GMX_TORCH)
+- target_compile_options(colvars_objlib PRIVATE ${CMAKE_CXX_FLAGS} ${TORCH_CXX_FLAGS})
++ target_compile_options(colvars_objlib PRIVATE ${CMAKE_CXX_FLAGS})
+ target_include_directories(colvars_objlib PRIVATE ${TORCH_INCLUDE_DIRS})
+ target_compile_definitions(colvars_objlib PRIVATE -DCOLVARS_TORCH)
+ endif()
+--
+2.47.0
+
diff --git a/sci-chemistry/gromacs/gromacs-9999.ebuild b/sci-chemistry/gromacs/gromacs-9999.ebuild
index 33e343e23e7c..64de8d68d1c5 100644
--- a/sci-chemistry/gromacs/gromacs-9999.ebuild
+++ b/sci-chemistry/gromacs/gromacs-9999.ebuild
@@ -18,7 +18,7 @@ if [[ ${PV} = *9999* ]]; then
https://gitlab.com/gromacs/gromacs.git
https://github.com/gromacs/gromacs.git
"
- [[ ${PV} = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:4}"
+ [[ ${PV} = 9999 ]] && EGIT_BRANCH="main" || EGIT_BRANCH="release-${PV:0:4}"
inherit git-r3
else
SRC_URI="
@@ -39,17 +39,19 @@ HOMEPAGE="https://www.gromacs.org/"
# 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="blas clang clang-cuda cuda +custom-cflags +doc build-manual double-precision +fftw +gmxapi +gmxapi-legacy +hwloc lapack mkl mpi +offensive opencl openmp +python +single-precision test +threads +tng ${ACCE_IUSE}"
+IUSE="blas clang clang-cuda cuda +custom-cflags +doc build-manual double-precision +fftw +gmxapi +gmxapi-legacy +hdf5 +hwloc lapack mkl mpi nnpot +offensive opencl openmp +python +single-precision test +threads +tng ${ACCE_IUSE}"
CDEPEND="
blas? ( virtual/blas )
cuda? ( >=dev-util/nvidia-cuda-toolkit-11:=[profiler] )
opencl? ( virtual/opencl )
fftw? ( sci-libs/fftw:3.0= )
+ hdf5? ( sci-libs/hdf5 )
hwloc? ( sys-apps/hwloc:= )
lapack? ( virtual/lapack )
mkl? ( sci-libs/mkl )
mpi? ( virtual/mpi[cxx] )
+ nnpot? ( sci-libs/caffe2[cuda=,opencl=] )
sci-libs/lmfit:=
>=dev-cpp/muParser-2.3:=
${PYTHON_DEPS}
@@ -88,6 +90,8 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${P}-Fix-build-with-torch.patch" )
+
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
@@ -178,6 +182,11 @@ src_prepare() {
src_configure() {
local mycmakeargs_pre=( ) extra fft_opts=( )
local acce="AUTO"
+ local nnpot="OFF"
+
+ if use nnpot; then
+ nnpot="TORCH"
+ fi
if use custom-cflags; then
#go from slowest to fastest acceleration
@@ -225,9 +234,11 @@ src_configure() {
-DGMX_COOL_QUOTES=$(usex offensive)
-DGMX_USE_TNG=$(usex tng)
-DGMX_BUILD_MANUAL=$(usex build-manual)
+ -DGMX_USE_HDF5=$(usex hdf5)
-DGMX_HWLOC=$(usex hwloc)
-DGMX_DEFAULT_SUFFIX=off
-DGMX_SIMD="$acce"
+ -DGMX_NNPOT="$nnpot"
-DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
-DBUILD_TESTING=$(usex test)
-DGMX_BUILD_UNITTESTS=$(usex test)
@@ -322,7 +333,7 @@ src_install() {
cat "${ED}"/usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
newbashcomp "${T}"/"${n}" "${n}"
done
- rm "${ED}"/usr/bin/gmx-completion*.bash || die
+ #rm "${ED}"/usr/bin/gmx-completion*.bash || die
readme.gentoo_create_doc
}
diff --git a/sci-chemistry/gromacs/metadata.xml b/sci-chemistry/gromacs/metadata.xml
index 44ddb19d1d9d..518711308a02 100644
--- a/sci-chemistry/gromacs/metadata.xml
+++ b/sci-chemistry/gromacs/metadata.xml
@@ -19,6 +19,7 @@
<flag name="gmxapi-legacy">Enable installing lagacy headers</flag>
<flag name="hwloc">Enable HWLoc lib support</flag>
<flag name="lmfit">Use external <pkg>sci-libs/lmfit</pkg></flag>
+ <flag name="nnpot">Allow to use <pkg>sci-libs/caffe2</pkg> for NN Potentials</flag>
<flag name="opencl">Enable opencl non-bonded kernels</flag>
<flag name="single-precision">Single precision version of gromacs (default)</flag>
<flag name="tng">Enable new trajectory format - tng</flag>
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2024-10-20 12:15 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2024-10-20 12:15 UTC (permalink / raw
To: gentoo-commits
commit: cbb7396a1cbb8b9c2eff34211d0398550d92b5a4
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 20 12:15:04 2024 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Sun Oct 20 12:15:30 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbb7396a
sci-chemistry/gromacs: Sync patch with upstreamed one
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch | 2 +-
sci-chemistry/gromacs/gromacs-9999.ebuild | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch b/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch
index f4f3698d96db..3a42ba4000ed 100644
--- a/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch
+++ b/sci-chemistry/gromacs/files/gromacs-9999-Fix-build-with-torch.patch
@@ -31,7 +31,7 @@ index 509d56e116..f49c820fa0 100644
endif()
if(GMX_TORCH)
- target_compile_options(colvars_objlib PRIVATE ${CMAKE_CXX_FLAGS} ${TORCH_CXX_FLAGS})
-+ target_compile_options(colvars_objlib PRIVATE ${CMAKE_CXX_FLAGS})
++ target_compile_options(colvars_objlib PRIVATE ${TORCH_CXX_FLAGS})
target_include_directories(colvars_objlib PRIVATE ${TORCH_INCLUDE_DIRS})
target_compile_definitions(colvars_objlib PRIVATE -DCOLVARS_TORCH)
endif()
diff --git a/sci-chemistry/gromacs/gromacs-9999.ebuild b/sci-chemistry/gromacs/gromacs-9999.ebuild
index 9f4ae599f86b..9de42117f102 100644
--- a/sci-chemistry/gromacs/gromacs-9999.ebuild
+++ b/sci-chemistry/gromacs/gromacs-9999.ebuild
@@ -241,6 +241,7 @@ src_configure() {
-DGMX_USE_HDF5=$(usex hdf5)
-DGMX_HWLOC=$(usex hwloc)
-DGMX_DEFAULT_SUFFIX=off
+ -DGMX_BUILD_HELP=on
-DGMX_SIMD="$acce"
-DGMX_NNPOT="$nnpot"
-DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
@@ -337,7 +338,7 @@ src_install() {
cat "${ED}"/usr/bin/gmx-completion.bash "$x" > "${T}/${n}" || die
newbashcomp "${T}"/"${n}" "${n}"
done
- #rm "${ED}"/usr/bin/gmx-completion*.bash || die
+ rm "${ED}"/usr/bin/gmx-completion*.bash || die
readme.gentoo_create_doc
}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2024-11-21 8:13 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2024-11-21 8:13 UTC (permalink / raw
To: gentoo-commits
commit: 534ae4eb830063aa768bca0cb6832159cec1d2d9
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 21 08:13:09 2024 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Thu Nov 21 08:13:37 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=534ae4eb
sci-chemistry/gromacs: Fix build with gcc-15
Closes: https://bugs.gentoo.org/937696
Closes: https://bugs.gentoo.org/939006
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
sci-chemistry/gromacs/files/gromacs-gcc-15.patch | 36 ++++++++++++++++++++++++
sci-chemistry/gromacs/gromacs-2024.3.ebuild | 2 ++
sci-chemistry/gromacs/gromacs-2024.4.ebuild | 2 ++
sci-chemistry/gromacs/gromacs-2025.0_beta.ebuild | 2 ++
4 files changed, 42 insertions(+)
diff --git a/sci-chemistry/gromacs/files/gromacs-gcc-15.patch b/sci-chemistry/gromacs/files/gromacs-gcc-15.patch
new file mode 100644
index 000000000000..45ac82493bec
--- /dev/null
+++ b/sci-chemistry/gromacs/files/gromacs-gcc-15.patch
@@ -0,0 +1,36 @@
+From 9dfaba553cb5aa0c0d689de1555a3bb45ae7dd3a Mon Sep 17 00:00:00 2001
+From: Alexey Shvetsov <alexxyum@gmail.com>
+Date: Thu, 21 Nov 2024 10:56:17 +0300
+Subject: [PATCH] Fix build with gcc-15
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Error is
+energyhistory.h:89:5: error: ‘int64_t’ does not name a type
+ 89 | int64_t nsteps; //! The number of steps in the history
+ | ^~~~~~~
+
+Ref: https://bugs.gentoo.org/939006
+
+Signed-off-by: Alexey Shvetsov <alexxyum@gmail.com>
+---
+ src/gromacs/mdtypes/energyhistory.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/gromacs/mdtypes/energyhistory.h b/src/gromacs/mdtypes/energyhistory.h
+index 0c8fecfae7..f80d4c56b9 100644
+--- a/src/gromacs/mdtypes/energyhistory.h
++++ b/src/gromacs/mdtypes/energyhistory.h
+@@ -47,6 +47,8 @@
+ #ifndef GMX_MDLIB_ENERGYHISTORY_H
+ #define GMX_MDLIB_ENERGYHISTORY_H
+
++#include <cstdint>
++
+ #include <memory>
+ #include <vector>
+
+--
+2.45.2
+
diff --git a/sci-chemistry/gromacs/gromacs-2024.3.ebuild b/sci-chemistry/gromacs/gromacs-2024.3.ebuild
index 2101629ebc36..e1c0b648701c 100644
--- a/sci-chemistry/gromacs/gromacs-2024.3.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2024.3.ebuild
@@ -92,6 +92,8 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${PN}-gcc-15.patch" )
+
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
diff --git a/sci-chemistry/gromacs/gromacs-2024.4.ebuild b/sci-chemistry/gromacs/gromacs-2024.4.ebuild
index 2101629ebc36..e1c0b648701c 100644
--- a/sci-chemistry/gromacs/gromacs-2024.4.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2024.4.ebuild
@@ -92,6 +92,8 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${PN}-gcc-15.patch" )
+
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
diff --git a/sci-chemistry/gromacs/gromacs-2025.0_beta.ebuild b/sci-chemistry/gromacs/gromacs-2025.0_beta.ebuild
index 4382a7dba81e..aa6eab316c98 100644
--- a/sci-chemistry/gromacs/gromacs-2025.0_beta.ebuild
+++ b/sci-chemistry/gromacs/gromacs-2025.0_beta.ebuild
@@ -95,6 +95,8 @@ DOCS=( AUTHORS README )
RESTRICT="!test? ( test )"
+PATCHES=( "${FILESDIR}/${PN}-gcc-15.patch" )
+
if [[ ${PV} != *9999 ]]; then
S="${WORKDIR}/${PN}-${PV/_/-}"
fi
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/
@ 2024-11-23 17:42 Alexey Shvetsov
0 siblings, 0 replies; 10+ messages in thread
From: Alexey Shvetsov @ 2024-11-23 17:42 UTC (permalink / raw
To: gentoo-commits
commit: 08eb9870971040dff9daa6798be52aeca46d9146
Author: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 23 17:41:33 2024 +0000
Commit: Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Sat Nov 23 17:42:43 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08eb9870
sci-chemistry/gromacs: drop 2020.7-r1, 2021.7-r1, 2022.6
Closes: https://bugs.gentoo.org/836855
Closes: https://bugs.gentoo.org/907989
Closes: https://bugs.gentoo.org/928852
Signed-off-by: Alexey Shvetsov <alexxy <AT> gentoo.org>
sci-chemistry/gromacs/Manifest | 9 -
.../gromacs/files/gromacs-2020-pytest.patch | 35 --
.../files/gromacs-2021-cstdint-include.patch | 12 -
.../files/gromacs-2021-cuda-detection.patch | 339 -------------------
.../gromacs/files/gromacs-2021-musl-stdint.patch | 25 --
sci-chemistry/gromacs/gromacs-2020.7-r1.ebuild | 351 --------------------
sci-chemistry/gromacs/gromacs-2021.7-r1.ebuild | 360 ---------------------
sci-chemistry/gromacs/gromacs-2022.6.ebuild | 337 -------------------
sci-chemistry/gromacs/metadata.xml | 1 -
9 files changed, 1469 deletions(-)
diff --git a/sci-chemistry/gromacs/Manifest b/sci-chemistry/gromacs/Manifest
index a9903101d279..24d9338ef70f 100644
--- a/sci-chemistry/gromacs/Manifest
+++ b/sci-chemistry/gromacs/Manifest
@@ -1,20 +1,11 @@
-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.5.tar.gz 42079310 BLAKE2B e50dbe76396230f4a886280bdebcf7b131506679240e77d2a2263c3b5dbfe7ef754c4265fc04e9acad7932c7691de7f694cc23140a25d0d5be649a4120f45b0c SHA512 f3a34cf0d379d6d4964d7494af6c6617c0c092293ea38a3a248af2dd2a90cae04696d52e68126176065efc480977942b00efa441028e526e1555c7e84551fc0c
DIST gromacs-2024.3.tar.gz 42373103 BLAKE2B f45af72ecdf119b423d98b84818eaca1aa2e3f43eaf1aff7435de2a5891079a880f19a654627ee2f43e3a38c9dcfa0638bc6eb6da201b3c9ce89b2dc32fc683b SHA512 13f23e581c2b63f6262e8359e7bed6a1a5f3164047ea38d2b6a44bcd2b20b61332705167435fe2ad30fe6f24f8ab49b982388550cdecb49167e4156e36286d3d
DIST gromacs-2024.4.tar.gz 42356162 BLAKE2B 3a1019128a2cfd47fb3ab23962a6fcd5bac3b5519d4bfa1239956740226468986ba93e645eb3bc20117968c024823e948fd819a603315399d573275c91c6e51b SHA512 32a08e9417d4d36a29bdfde4e0448bc136bd3db79b5d5c84fa99d9f022ffca6a94b7bd1c7e7a335430fb6bdcf0181e3cbabeb46d13978c0f87b5d88787ea8d63
DIST gromacs-2025.0-beta.tar.gz 45067499 BLAKE2B 661607007af6d1f697f5aec72a88cefec5546dee2c0facaf2776354665f56fd71b1a7a2ea92185b4d64e764cd0ac10e865b740dda6d7438318acbbadd1bd7fd0 SHA512 831b4ba2631f5dd65c1b48d4ba0455af0b101af22d8cc78c246e7b36f4ce3c8f33f1cb8d94e42559741dbe1585c75a6e05a2538708d7e57c86ac2174aca302b9
-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.5.pdf 13579081 BLAKE2B 42f687ebcdb79bfc77aabac4fd382940c23ba27da380b8eff342c2e9255a58fc11a0458220d1f71f3c13ab1cf6fdabad00ac1bad741781d0b787899165bea2cc SHA512 0661f166f7a8dc24b4244c0139f366832ddfc1298129df2a6e29800b5d1567318781ab547bc7e9ee54de7a62abba4996f8e3010c91d6917c248117e5711d7dbb
DIST manual-2024.3.pdf 13676383 BLAKE2B fa5b310ee8977c525781492c70a18d40f8842f5fa43831ad0283c033f39968ba98e74ea618a4a9c25d88c3ed694071327220617b17f316ba2f29777c3edc95ca SHA512 8dd09913b89213a6673a5f5e3462fb963d1f30d68e0d58b846b7e2cf2f73baacb14fabab6591b680849607f4ca617cf288899729939b2c32021b4ee5ba06835f
DIST manual-2024.4.pdf 13690684 BLAKE2B 7fac46df0da9d4cf7584599c7a71c4e1d11f75fc20a7a19ecc8069fdc2e9e35f0292e389f9c40d69dc96bdfea8d4ee370a54279b5531c0fb37c4cbd76caf7800 SHA512 5c4662527554171774adde5a3de220d775723154914838fd7fc3e40c981e1fccac0fd0def1acc500635cd39269d3bcc2edab5ec7aa85a7ea78350969d72ee13c
DIST manual-2025.0-beta.pdf 13788093 BLAKE2B 40652f32f35d73964dfb8146b916c0249d8b7044595114986108f209e98e3a0a402ead18842822ce12c9cdd24a224bb95f80fbe5eec908f013b1eddc14d2a2fd SHA512 eafc1fd060f4a5dd5e7317f0f0fa45cfd5ccc20518a9d67b9055a87c324893d92573dfd416fcbf0fc9b7a932a47e3a592fbc38837bccdd237466bb62cd3ad9ed
-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
DIST regressiontests-2023.5.tar.gz 48619605 BLAKE2B f2549a34750c6866f054614a00a3360a09b82306e6bd5e5b848e18cdd3a3fabaac6203c5ca734901019403225dd47e0d662838abe9a1db7d07662f1c745b8e4f SHA512 3ccaf9db7dfba641a5e98ebff3d735cae3f679926aba443ffedec20dd6c85e67f0e9711ebad5dfa8105122d5411f5de6ded1802a7da4ddf0599657832c8c597a
DIST regressiontests-2024.3.tar.gz 32776961 BLAKE2B 6a74977a396f8e82f7aba7a384cc840275b86d470597a4bbb93e97f1c13cd8fcf6d86ab26bdd4a89464b863954c9ed7dbd49af095e821573845f7bda43c2b90b SHA512 1c4afbbca82c9b9ad371713ef5e7e093ca766f25f6fbda55c79ea1aecb2f0a06bdb042d3c8a86e3d9bf9e8b8091244827dbff544f66037ffa56b0bcb341a9d2c
DIST regressiontests-2024.4.tar.gz 32777006 BLAKE2B 41623de750b89410fa0a52037ea28d99a688b602b286cff732a6e8100b2b72072f579fc4f72bfe7c246ca086b6c6c1c10adb89874db6e1c9276494572e408a9f SHA512 dfbe8ee1b7c5b534842203f2295ea08875df6af3fb94798138b92ab8bc816719e3357db2935d2de4fd798d104ad7cb44860cd65887da7bb2438db422f35e6848
diff --git a/sci-chemistry/gromacs/files/gromacs-2020-pytest.patch b/sci-chemistry/gromacs/files/gromacs-2020-pytest.patch
deleted file mode 100644
index cc7730afecb9..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2020-pytest.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From e4e1263776844d660c471e3d1203acf54cdc855f Mon Sep 17 00:00:00 2001
-From: Alexey Shvetsov <alexxyum@gmail.com>
-Date: Fri, 23 Apr 2021 13:21:24 +0300
-Subject: [PATCH 2/2] Allow to build python part without build testing enabled
-
-Signed-off-by: Alexey Shvetsov <alexxyum@gmail.com>
----
- python_packaging/src/CMakeLists.txt | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/python_packaging/src/CMakeLists.txt b/python_packaging/src/CMakeLists.txt
-index c75549fc82..4f983fdd5f 100644
---- a/python_packaging/src/CMakeLists.txt
-+++ b/python_packaging/src/CMakeLists.txt
-@@ -1,7 +1,7 @@
- #
- # This file is part of the GROMACS molecular simulation package.
- #
--# Copyright (c) 2019,2020, by the GROMACS development team, led by
-+# Copyright (c) 2019,2020,2021, by the GROMACS development team, led by
- # Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
- # and including many others, as listed in the AUTHORS file in the
- # top-level source directory and at http://www.gromacs.org.
-@@ -252,5 +252,7 @@ endif()
- # to the `check` target. Normal usage is to first install the Python package,
- # then run `pytest` on the `tests` directory. Refer to gmxapi package documentation.
- if(NOT GMXAPI_MASTER_PROJECT)
-- add_subdirectory(test)
-+ if (BUILD_TESTING)
-+ add_subdirectory(test)
-+ endif()
- endif()
---
-2.31.1
-
diff --git a/sci-chemistry/gromacs/files/gromacs-2021-cstdint-include.patch b/sci-chemistry/gromacs/files/gromacs-2021-cstdint-include.patch
deleted file mode 100644
index 5952aa3dd8e8..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2021-cstdint-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-# https://bugs.gentoo.org/915694
-# Not needed for newer branches, that greatly refactored the code
---- a/src/gromacs/utility/flags.h~ 2023-01-31 12:45:46.000000000 +0100
-+++ b/src/gromacs/utility/flags.h 2023-10-16 10:15:24.087340444 +0200
-@@ -42,7 +42,7 @@
- */
- #ifndef GMX_UTILITY_FLAGS_H
- #define GMX_UTILITY_FLAGS_H
--
-+#include <cstdint>
- namespace gmx
- {
diff --git a/sci-chemistry/gromacs/files/gromacs-2021-cuda-detection.patch b/sci-chemistry/gromacs/files/gromacs-2021-cuda-detection.patch
deleted file mode 100644
index 8b458e96cb53..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2021-cuda-detection.patch
+++ /dev/null
@@ -1,339 +0,0 @@
---- gromacs-2021.7/cmake/gmxManageNvccConfig.cmake 2023-01-31 12:45:45.000000000 +0100
-+++ gromacs-2022.5/cmake/gmxManageNvccConfig.cmake 2023-02-03 12:53:34.000000000 +0100
-@@ -1,11 +1,9 @@
- #
- # This file is part of the GROMACS molecular simulation package.
- #
--# Copyright (c) 2012,2013,2014,2015,2016 by the GROMACS development team.
--# Copyright (c) 2017,2018,2019,2020,2021, by the GROMACS development team, led by
--# Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
--# and including many others, as listed in the AUTHORS file in the
--# top-level source directory and at http://www.gromacs.org.
-+# Copyright 2012- The GROMACS Authors
-+# and the project initiators Erik Lindahl, Berk Hess and David van der Spoel.
-+# Consult the AUTHORS/COPYING files and https://www.gromacs.org for details.
- #
- # GROMACS is free software; you can redistribute it and/or
- # modify it under the terms of the GNU Lesser General Public License
-@@ -19,7 +17,7 @@
- #
- # You should have received a copy of the GNU Lesser General Public
- # License along with GROMACS; if not, see
--# http://www.gnu.org/licenses, or write to the Free Software Foundation,
-+# https://www.gnu.org/licenses, or write to the Free Software Foundation,
- # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- #
- # If you want to redistribute modifications to GROMACS, please
-@@ -28,10 +26,10 @@
- # consider code for inclusion in the official distribution, but
- # derived work must not be called official GROMACS. Details are found
- # in the README & COPYING files - if they are missing, get the
--# official version at http://www.gromacs.org.
-+# official version at https://www.gromacs.org.
- #
- # To help us fund GROMACS development, we humbly ask that you cite
--# the research papers on the package. Check out http://www.gromacs.org.
-+# the research papers on the package. Check out https://www.gromacs.org.
-
- # Manage CUDA nvcc compilation configuration, try to be smart to ease the users'
- # pain as much as possible:
-@@ -51,7 +49,7 @@
- # glibc source shows that _FORCE_INLINES is only used in this string.h
- # feature and performance of memcpy variants is unimportant for CUDA
- # code in GROMACS. So this workaround is good enough to keep problems
--# away from users installing GROMACS. See Issue #1942.
-+# away from users installing GROMACS. See Issue #1982.
- function(work_around_glibc_2_23)
- try_compile(IS_GLIBC_2_23_OR_HIGHER ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/cmake/TestGlibcVersion.cpp)
- if(IS_GLIBC_2_23_OR_HIGHER)
-@@ -83,67 +81,158 @@
- mark_as_advanced(CUDA_HOST_COMPILER CUDA_HOST_COMPILER_OPTIONS)
- endif()
-
-+# We would like to be helpful and reject the host compiler with a
-+# clear error message at configure time, rather than let nvcc
-+# later reject the host compiler as not supported when the first
-+# CUDA source file is built. We've implemented that for current
-+# nvcc running on Unix-like systems, but e.g. changes to nvcc
-+# will further affect the limited portability of this checking
-+# code. Set the CMake variable GMX_NVCC_WORKS on if you want to
-+# bypass this check.
-+if((_cuda_nvcc_executable_or_flags_changed OR CUDA_HOST_COMPILER_CHANGED OR NOT GMX_NVCC_WORKS) AND NOT WIN32)
-+ message(STATUS "Check for working NVCC/C++ compiler combination with nvcc '${CUDA_NVCC_EXECUTABLE}'")
-+ execute_process(COMMAND ${CUDA_NVCC_EXECUTABLE} --compiler-bindir=${CUDA_HOST_COMPILER} -c ${CUDA_NVCC_FLAGS} ${CUDA_NVCC_FLAGS_${_build_type}} ${CMAKE_SOURCE_DIR}/cmake/TestCUDA.cu
-+ RESULT_VARIABLE _cuda_test_res
-+ OUTPUT_VARIABLE _cuda_test_out
-+ ERROR_VARIABLE _cuda_test_err
-+ OUTPUT_STRIP_TRAILING_WHITESPACE)
-+
-+ if(${_cuda_test_res})
-+ message(STATUS "Check for working NVCC/C compiler combination - broken")
-+ message(STATUS "${CUDA_NVCC_EXECUTABLE} standard output: '${_cuda_test_out}'")
-+ message(STATUS "${CUDA_NVCC_EXECUTABLE} standard error: '${_cuda_test_err}'")
-+ if(${_cuda_test_err} MATCHES "nsupported")
-+ message(FATAL_ERROR "NVCC/C++ compiler combination does not seem to be supported. CUDA frequently does not support the latest versions of the host compiler, so you might want to try an earlier C++ compiler version and make sure your CUDA compiler and driver are as recent as possible. Set the GMX_NVCC_WORKS CMake cache variable to bypass this check if you know what you are doing.")
-+ elseif(CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 11.2 AND CUDA_VERSION VERSION_GREATER 11.4 AND CUDA_VERSION VERSION_LESS 11.7) # Issue #4574, #4641
-+ # Above, we should be checking for VERSION_LESS 11.6.2, but CUDA_VERSION is only "major.minor"
-+ message(FATAL_ERROR "CUDA versions 11.5-11.6.1 are known to be incompatible with some GCC 11.x. Use a different GCC or update your CUDA installation to at least CUDA 11.6.2")
-+ else()
-+ message(FATAL_ERROR "CUDA compiler does not seem to be functional or is not compatible with the host compiler. Set the GMX_NVCC_WORKS CMake cache variable to bypass this check if you know what you are doing.")
-+ endif()
-+ elseif(NOT GMX_CUDA_TEST_COMPILER_QUIETLY)
-+ message(STATUS "Check for working NVCC/C++ compiler combination - works")
-+ set(GMX_NVCC_WORKS TRUE CACHE INTERNAL "Nvcc can compile a trivial test program")
-+ endif()
-+endif() # GMX_CHECK_NVCC
-+
-+# Tests a single flag to use with nvcc.
-+#
-+# If the flags are accepted, they are appended to the variable named
-+# in the first argument. The cache variable named in the second
-+# argument is used to avoid rerunning the check in future invocations
-+# of cmake. The list of flags to check follows these two required
-+# arguments.
-+#
-+# Note that a space-separated string of flags, or a flag-value pair
-+# separated by spaces will not work. Use the single-argument forms
-+# accepted by nvcc, like "--arg=value".
-+#
-+# As this code is not yet tested on Windows, it always accepts the
-+# flags in that case.
-+function(gmx_add_nvcc_flag_if_supported _output_variable_name_to_append_to _flags_cache_variable_name)
-+ # If the check has already been run, do not re-run it
-+ if (NOT ${_flags_cache_variable_name} AND NOT WIN32)
-+ message(STATUS "Checking if nvcc accepts flags ${ARGN}")
-+ # See detailed comment about gcc 7 below
-+ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8)
-+ set(_cache_variable_value TRUE)
-+ message(STATUS "Checking if nvcc accepts flags ${ARGN} - Assuming success when using gcc 7")
-+ else()
-+ if(NOT(CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11))
-+ set(CCBIN "--compiler-bindir=${CUDA_HOST_COMPILER}")
-+ endif()
-+ execute_process(
-+ COMMAND ${CUDA_NVCC_EXECUTABLE} ${ARGN} ${CCBIN} "${CMAKE_SOURCE_DIR}/cmake/TestCUDA.cu"
-+ RESULT_VARIABLE _cuda_success
-+ OUTPUT_QUIET
-+ ERROR_QUIET
-+ )
-+ # Convert the success value to a boolean and report status
-+ if (_cuda_success EQUAL 0)
-+ set(_cache_variable_value TRUE)
-+ message(STATUS "Checking if nvcc accepts flags ${ARGN} - Success")
-+ else()
-+ set(_cache_variable_value FALSE)
-+ message(STATUS "Checking if nvcc accepts flags ${ARGN} - Failed")
-+ endif()
-+ endif()
-+ set(${_flags_cache_variable_name} ${_cache_variable_value} CACHE BOOL "Whether NVCC supports flag(s) ${ARGN}")
-+ endif()
-+ # Append the flags to the output variable if they have been tested to work
-+ if (${_flags_cache_variable_name} OR WIN32)
-+ list(APPEND ${_output_variable_name_to_append_to} ${ARGN})
-+ set(${_output_variable_name_to_append_to} ${${_output_variable_name_to_append_to}} PARENT_SCOPE)
-+ endif()
-+endfunction()
-+
-+# Versions of gcc 7 have differing behavior when executing
-+#
-+# nvcc $args --compiler-bindir=gcc TestCUDA.cu
-+#
-+# and would need e.g. adding -lstdc++ to the command line so that
-+# linking of a C++/CUDA object by the C-compiler flavor of gcc works.
-+# This means we can't reliably test compiler flags in this case
-+# without risking creating other problems. Instead we assume (above)
-+# that all compiler flags will work, and issue this warning.
-+# We also want to skip this warning during GROMACS CI testing.
-+if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8
-+ AND NOT DEFINED ENV{GITLAB_CI})
-+ message(WARNING "You are using gcc version 7 with the CUDA compiler nvcc. GROMACS cannot reliably test compiler arguments for this combination, so if you later experience errors in building GROMACS, please use a more recent version of gcc.")
-+endif()
-+
- # If any of these manual override variables for target CUDA GPU architectures
- # or virtual architecture is set, parse the values and assemble the nvcc
- # command line for these. Otherwise use our defaults.
- # Note that the manual override variables require a semicolon separating
- # architecture codes.
-+set(GMX_CUDA_NVCC_GENCODE_FLAGS)
- if (GMX_CUDA_TARGET_SM OR GMX_CUDA_TARGET_COMPUTE)
-- set(GMX_CUDA_NVCC_GENCODE_FLAGS)
- set(_target_sm_list ${GMX_CUDA_TARGET_SM})
- foreach(_target ${_target_sm_list})
-- list(APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_${_target},code=sm_${_target}")
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_${_target} "--generate-code=arch=compute_${_target},code=sm_${_target}")
-+ if (NOT NVCC_HAS_GENCODE_COMPUTE_AND_SM_${_target} AND NOT WIN32)
-+ message(FATAL_ERROR "Your choice of ${_target} in GMX_CUDA_TARGET_SM was not accepted by nvcc, please choose a target that it accepts")
-+ endif()
- endforeach()
- set(_target_compute_list ${GMX_CUDA_TARGET_COMPUTE})
- foreach(_target ${_target_compute_list})
-- list(APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_${_target},code=compute_${_target}")
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_${_target} --generate-code=arch=compute_${_target},code=compute_${_target})
-+ if (NOT NVCC_HAS_GENCODE_COMPUTE_${_target} AND NOT WIN32)
-+ message(FATAL_ERROR "Your choice of ${_target} in GMX_CUDA_TARGET_COMPUTE was not accepted by nvcc, please choose a target that it accepts")
-+ endif()
- endforeach()
- else()
- # Set the CUDA GPU architectures to compile for:
-- # - with CUDA >=9.0 CC 7.0 is supported and CC 2.0 is no longer supported
-- # => compile sm_30, sm_35, sm_37, sm_50, sm_52, sm_60, sm_61, sm_70 SASS, and compute_35, compute_70 PTX
-- # - with CUDA >=10.0 CC 7.5 is supported
-- # => compile sm_30, sm_35, sm_37, sm_50, sm_52, sm_60, sm_61, sm_70, sm_75 SASS, and compute_35, compute_75 PTX
- # - with CUDA >=11.0 CC 8.0 is supported
- # => compile sm_35, sm_37, sm_50, sm_52, sm_60, sm_61, sm_70, sm_75, sm_80 SASS, and compute_35, compute_80 PTX
-
- # First add flags that trigger SASS (binary) code generation for physical arch
-- if(CUDA_VERSION VERSION_LESS "11.0")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_30,code=sm_30")
-- endif()
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_35,code=sm_35")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_37,code=sm_37")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_50,code=sm_50")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_52,code=sm_52")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_60,code=sm_60")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_61,code=sm_61")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_70,code=sm_70")
-- if(NOT CUDA_VERSION VERSION_LESS "10.0")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_75,code=sm_75")
-- endif()
-- if(NOT CUDA_VERSION VERSION_LESS "11.0")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_80,code=sm_80")
-- # Requesting sm or compute 35, 37, or 50 triggers deprecation messages with
-- # nvcc 11.0, which we need to suppress for use in CI
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-Wno-deprecated-gpu-targets")
-- endif()
-- if(NOT CUDA_VERSION VERSION_LESS "11.1")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_86,code=sm_86")
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_35 --generate-code=arch=compute_35,code=sm_35)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_37 --generate-code=arch=compute_37,code=sm_37)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_50 --generate-code=arch=compute_50,code=sm_50)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_52 --generate-code=arch=compute_52,code=sm_52)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_60 --generate-code=arch=compute_60,code=sm_60)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_61 --generate-code=arch=compute_61,code=sm_61)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_70 --generate-code=arch=compute_70,code=sm_70)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_75 --generate-code=arch=compute_75,code=sm_75)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_80 --generate-code=arch=compute_80,code=sm_80)
-+ # Don't attempt to add newest architectures with old GNU compiler, to avoid issues in CI
-+ # related to being unable to test which flags are supported
-+ if (NOT (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8))
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_86 --generate-code=arch=compute_86,code=sm_86)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_89 --generate-code=arch=compute_89,code=sm_89)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_AND_SM_90 --generate-code=arch=compute_90,code=sm_90)
- endif()
-+ # Requesting sm or compute 35, 37, or 50 triggers deprecation messages with
-+ # nvcc 11.0, which we need to suppress for use in CI
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_WARNING_NO_DEPRECATED_GPU_TARGETS -Wno-deprecated-gpu-targets)
-
- # Next add flags that trigger PTX code generation for the
- # newest supported virtual arch that's useful to JIT to future architectures
- # as well as an older one suitable for JIT-ing to any rare intermediate arch
- # (like that of Jetson / Drive PX devices)
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_35,code=compute_35")
-- if(CUDA_VERSION VERSION_LESS "11.0")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_32,code=compute_32")
-- else()
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_53,code=compute_53")
-- endif()
-- if(NOT CUDA_VERSION VERSION_LESS "11.0")
-- list (APPEND GMX_CUDA_NVCC_GENCODE_FLAGS "-gencode;arch=compute_80,code=compute_80")
-- endif()
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_53 --generate-code=arch=compute_53,code=sm_53)
-+ gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_GENCODE_FLAGS NVCC_HAS_GENCODE_COMPUTE_80 --generate-code=arch=compute_80,code=sm_80)
- endif()
-
- if (GMX_CUDA_TARGET_SM)
-@@ -158,27 +247,20 @@
- # FindCUDA.cmake is unaware of the mechanism used by cmake to embed
- # the compiler flag for the required C++ standard in the generated
- # build files, so we have to pass it ourselves
--if (CUDA_VERSION VERSION_LESS 11.0)
-- # CUDA doesn't formally support C++17 until version 11.0, so for
-- # now host-side code that compiles with CUDA is restricted to
-- # C++14. This needs to be expressed formally for older CUDA
-- # version.
-+
-+# gcc-7 pre-dated C++17, so uses the -std=c++1z compiler flag for it,
-+# which modern nvcc does not recognize. So we work around that by
-+# compiling in C++14 mode. Clang doesn't have this problem because nvcc
-+# only supports version of clang that already understood -std=c++17
-+if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8)
- list(APPEND GMX_CUDA_NVCC_FLAGS "${CMAKE_CXX14_STANDARD_COMPILE_OPTION}")
- else()
-- # gcc-7 pre-dated C++17, so uses the -std=c++1z compiler flag for it,
-- # which modern nvcc does not recognize. So we work around that by
-- # compiling in C++14 mode. Clang doesn't have this problem because nvcc
-- # only supports version of clang that already understood -std=c++17
-- if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8)
-- list(APPEND GMX_CUDA_NVCC_FLAGS "${CMAKE_CXX14_STANDARD_COMPILE_OPTION}")
-- else()
-- list(APPEND GMX_CUDA_NVCC_FLAGS "${CMAKE_CXX17_STANDARD_COMPILE_OPTION}")
-- endif()
-+ list(APPEND GMX_CUDA_NVCC_FLAGS "${CMAKE_CXX17_STANDARD_COMPILE_OPTION}")
- endif()
-
- # assemble the CUDA flags
- list(APPEND GMX_CUDA_NVCC_FLAGS "${GMX_CUDA_NVCC_GENCODE_FLAGS}")
--list(APPEND GMX_CUDA_NVCC_FLAGS "-use_fast_math")
-+gmx_add_nvcc_flag_if_supported(GMX_CUDA_NVCC_FLAGS NVCC_HAS_USE_FAST_MATH -use_fast_math)
-
- # assemble the CUDA host compiler flags
- list(APPEND GMX_CUDA_NVCC_FLAGS "${CUDA_HOST_COMPILER_OPTIONS}")
-@@ -187,12 +269,18 @@
- # CUDA header cuda_runtime_api.h in at least CUDA 10.1 uses 0
- # where nullptr would be preferable. GROMACS can't fix these, so
- # must suppress them.
-- GMX_TEST_CXXFLAG(CXXFLAGS_NO_ZERO_AS_NULL_POINTER_CONSTANT "-Wno-zero-as-null-pointer-constant" NVCC_CLANG_SUPPRESSIONS_CXXFLAGS)
-+ GMX_TEST_CXXFLAG(HAS_WARNING_NO_ZERO_AS_NULL_POINTER_CONSTANT "-Wno-zero-as-null-pointer-constant" NVCC_CLANG_SUPPRESSIONS_CXXFLAGS)
-
- # CUDA header crt/math_functions.h in at least CUDA 10.x and 11.1
- # used throw() specifications that are deprecated in more recent
- # C++ versions. GROMACS can't fix these, so must suppress them.
-- GMX_TEST_CXXFLAG(CXXFLAGS_NO_DEPRECATED_DYNAMIC_EXCEPTION_SPEC "-Wno-deprecated-dynamic-exception-spec" NVCC_CLANG_SUPPRESSIONS_CXXFLAGS)
-+ GMX_TEST_CXXFLAG(HAS_WARNING_NO_DEPRECATED_DYNAMIC_EXCEPTION_SPEC "-Wno-deprecated-dynamic-exception-spec" NVCC_CLANG_SUPPRESSIONS_CXXFLAGS)
-+
-+ # CUDA headers cuda_runtime.h and channel_descriptor.h in at least
-+ # CUDA 11.0 uses many C-style casts, which are ncessary for this
-+ # header to work for C. GROMACS can't fix these, so must suppress
-+ # the warnings they generate
-+ GMX_TEST_CXXFLAG(HAS_WARNING_NO_OLD_STYLE_CAST "-Wno-old-style-cast" NVCC_CLANG_SUPPRESSIONS_CXXFLAGS)
-
- # Add these flags to those used for the host compiler. The
- # "-Xcompiler" prefix directs nvcc to only use them for host
-@@ -205,37 +293,6 @@
- string(TOUPPER "${CMAKE_BUILD_TYPE}" _build_type)
- gmx_check_if_changed(_cuda_nvcc_executable_or_flags_changed CUDA_NVCC_EXECUTABLE CUDA_NVCC_FLAGS CUDA_NVCC_FLAGS_${_build_type})
-
--# We would like to be helpful and reject the host compiler with a
--# clear error message at configure time, rather than let nvcc
--# later reject the host compiler as not supported when the first
--# CUDA source file is built. We've implemented that for current
--# nvcc running on Unix-like systems, but e.g. changes to nvcc
--# will further affect the limited portability of this checking
--# code. Set the CMake variable GMX_NVCC_WORKS on if you want to
--# bypass this check.
--if((_cuda_nvcc_executable_or_flags_changed OR CUDA_HOST_COMPILER_CHANGED OR NOT GMX_NVCC_WORKS) AND NOT WIN32)
-- message(STATUS "Check for working NVCC/C++ compiler combination with nvcc '${CUDA_NVCC_EXECUTABLE}'")
-- execute_process(COMMAND ${CUDA_NVCC_EXECUTABLE} -ccbin ${CUDA_HOST_COMPILER} -c ${CUDA_NVCC_FLAGS} ${CUDA_NVCC_FLAGS_${_build_type}} ${CMAKE_SOURCE_DIR}/cmake/TestCUDA.cu
-- RESULT_VARIABLE _cuda_test_res
-- OUTPUT_VARIABLE _cuda_test_out
-- ERROR_VARIABLE _cuda_test_err
-- OUTPUT_STRIP_TRAILING_WHITESPACE)
--
-- if(${_cuda_test_res})
-- message(STATUS "Check for working NVCC/C compiler combination - broken")
-- message(STATUS "${CUDA_NVCC_EXECUTABLE} standard output: '${_cuda_test_out}'")
-- message(STATUS "${CUDA_NVCC_EXECUTABLE} standard error: '${_cuda_test_err}'")
-- if(${_cuda_test_err} MATCHES "nsupported")
-- message(FATAL_ERROR "NVCC/C++ compiler combination does not seem to be supported. CUDA frequently does not support the latest versions of the host compiler, so you might want to try an earlier C++ compiler version and make sure your CUDA compiler and driver are as recent as possible.")
-- else()
-- message(FATAL_ERROR "CUDA compiler does not seem to be functional.")
-- endif()
-- elseif(NOT GMX_CUDA_TEST_COMPILER_QUIETLY)
-- message(STATUS "Check for working NVCC/C++ compiler combination - works")
-- set(GMX_NVCC_WORKS TRUE CACHE INTERNAL "Nvcc can compile a trivial test program")
-- endif()
--endif() # GMX_CHECK_NVCC
--
-
- # The flags are set as local variables which shadow the cache variables. The cache variables
- # (can be set by the user) are appended. This is done in a macro to set the flags when all
diff --git a/sci-chemistry/gromacs/files/gromacs-2021-musl-stdint.patch b/sci-chemistry/gromacs/files/gromacs-2021-musl-stdint.patch
deleted file mode 100644
index c94fc5598f91..000000000000
--- a/sci-chemistry/gromacs/files/gromacs-2021-musl-stdint.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8a38303c52fbca07c850e0c4cd03a783aabf9e49 Mon Sep 17 00:00:00 2001
-From: Paul Bauer <paul.bauer.q@gmail.com>
-Date: Mon, 21 Feb 2022 09:53:46 +0100
-Subject: [PATCH] Fix missing includes for musl libc
-
-Fixes #4404
----
- src/gromacs/math/vectypes.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/gromacs/math/vectypes.h b/src/gromacs/math/vectypes.h
-index d4d5211d11..bd9d31de20 100644
---- a/src/gromacs/math/vectypes.h
-+++ b/src/gromacs/math/vectypes.h
-@@ -40,6 +40,7 @@
-
- #include <cassert>
- #include <cmath>
-+#include <cstdint>
-
- #include <algorithm>
- #include <type_traits>
---
-2.35.1
-
diff --git a/sci-chemistry/gromacs/gromacs-2020.7-r1.ebuild b/sci-chemistry/gromacs/gromacs-2020.7-r1.ebuild
deleted file mode 100644
index c93e5baf72ef..000000000000
--- a/sci-chemistry/gromacs/gromacs-2020.7-r1.ebuild
+++ /dev/null
@@ -1,351 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-PYTHON_COMPAT=( python3_{10..12} )
-
-DISTUTILS_OPTIONAL=1
-DISTUTILS_USE_PEP517=no
-DISTUTILS_SINGLE_IMPL=1
-
-inherit bash-completion-r1 cmake cuda distutils-r1 flag-o-matic readme.gentoo-r1 toolchain-funcs xdg-utils
-
-if [[ ${PV} = *9999* ]]; then
- EGIT_REPO_URI="
- https://gitlab.com/gromacs/gromacs.git
- https://github.com/gromacs/gromacs.git
- "
- [[ ${PV} = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:4}"
- inherit git-r3
-else
- 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"
-fi
-
-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 +custom-cflags +doc build-manual double-precision +fftw +gmxapi +gmxapi-legacy +hwloc lapack +lmfit mkl mpi +offensive opencl openmp +python +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 )
- openmp? (
- sys-devel/gcc[openmp]
- sys-devel/clang-runtime[openmp]
- )
- 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
- build-manual? (
- app-text/doxygen
- $(python_gen_cond_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- ')
- media-gfx/mscgen
- media-gfx/graphviz
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- media-gfx/imagemagick
- )"
-RDEPEND="${CDEPEND}"
-
-REQUIRED_USE="
- || ( single-precision double-precision )
- doc? ( !build-manual )
- cuda? ( single-precision )
- opencl? ( single-precision )
- cuda? ( !opencl )
- mkl? ( !blas !fftw !lapack )
- ${PYTHON_REQUIRED_USE}"
-
-DOCS=( AUTHORS README )
-
-RESTRICT="!test? ( test )"
-
-if [[ ${PV} != *9999 ]]; then
- S="${WORKDIR}/${PN}-${PV/_/-}"
-fi
-
-PATCHES=( "${FILESDIR}/${PN}-2020-pytest.patch" )
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]]; then
- default
- else
- git-r3_src_unpack
- if use test; then
- EGIT_REPO_URI="https://gitlab.com/gromacs/gromacs-regressiontests.git" \
- EGIT_BRANCH="${EGIT_BRANCH}" \
- EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
- git-r3_src_unpack
- fi
- fi
-}
-
-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"
- if use build-manual; then
- # try to create policy for imagemagik
- mkdir -p "${HOME}"/.config/ImageMagick
- cat >> "${HOME}"/.config/ImageMagick/policy.xml <<- EOF
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE policymap [
- <!ELEMENT policymap (policy)+>
- !ATTLIST policymap xmlns CDATA #FIXED ''>
- <!ELEMENT policy EMPTY>
- <!ATTLIST policy xmlns CDATA #FIXED '' domain NMTOKEN #REQUIRED
- name NMTOKEN #IMPLIED pattern CDATA #IMPLIED rights NMTOKEN #IMPLIED
- stealth NMTOKEN #IMPLIED value CDATA #IMPLIED>
- ]>
- <policymap>
- <policy domain="coder" rights="read | write" pattern="PS" />
- <policy domain="coder" rights="read | write" pattern="PS2" />
- <policy domain="coder" rights="read | write" pattern="PS3" />
- <policy domain="coder" rights="read | write" pattern="EPS" />
- <policy domain="coder" rights="read | write" pattern="PDF" />
- <policy domain="coder" rights="read | write" pattern="XPS" />
- </policymap>
- EOF
- fi
-}
-
-src_configure() {
- local mycmakeargs_pre=( ) extra fft_opts=( )
-
- if use custom-cflags; then
- #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"
- else
- strip-flags
- fi
-
- #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_BUILD_MANUAL=$(usex build-manual)
- -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)
- -DGMX_INSTALL_LEGACY_API=$(usex gmxapi-legacy)
- "${opencl[@]}"
- "${cuda[@]}"
- "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
- -DGMX_BINARY_SUFFIX="${suffix}"
- -DGMX_LIBS_SUFFIX="${suffix}"
- -DGMX_PYTHON_PACKAGE=$(usex python)
- )
- 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
- if use python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile python_packaging/all
- BUILD_DIR="${WORKDIR}/${P}" \
- distutils-r1_src_compile
- fi
- # not 100% necessary for rel ebuilds as available from website
- if use build-manual; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile manual
- fi
- 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 python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}" \
- cmake_src_install python_packaging/install
- fi
- if use build-manual; then
- newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
- fi
-
- if use doc; then
- if [[ ${PV} != *9999* ]]; then
- newdoc "${DISTDIR}/manual-${PV}.pdf" "${PN}-manual-${PV}.pdf"
- fi
- 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-2021.7-r1.ebuild b/sci-chemistry/gromacs/gromacs-2021.7-r1.ebuild
deleted file mode 100644
index 8b99117678ed..000000000000
--- a/sci-chemistry/gromacs/gromacs-2021.7-r1.ebuild
+++ /dev/null
@@ -1,360 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-PYTHON_COMPAT=( python3_{10..12} )
-
-DISTUTILS_OPTIONAL=1
-DISTUTILS_USE_PEP517=no
-DISTUTILS_SINGLE_IMPL=1
-
-inherit bash-completion-r1 cmake cuda distutils-r1 flag-o-matic readme.gentoo-r1 toolchain-funcs xdg-utils
-
-if [[ ${PV} = *9999* ]]; then
- EGIT_REPO_URI="
- https://gitlab.com/gromacs/gromacs.git
- https://github.com/gromacs/gromacs.git
- "
- [[ ${PV} = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:4}"
- inherit git-r3
-else
- 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"
-fi
-
-ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_arm_neon"
-
-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 +custom-cflags +doc build-manual double-precision +fftw +gmxapi +gmxapi-legacy +hwloc lapack +lmfit mkl mpi +offensive opencl openmp +python +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:=[profiler] )
- opencl? ( virtual/opencl )
- openmp? (
- sys-devel/gcc[openmp]
- sys-devel/clang-runtime[openmp]
- )
- 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
- build-manual? (
- app-text/doxygen
- $(python_gen_cond_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- ')
- media-gfx/mscgen
- media-gfx/graphviz
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- media-gfx/imagemagick
- )"
-RDEPEND="${CDEPEND}"
-
-REQUIRED_USE="
- || ( single-precision double-precision )
- doc? ( !build-manual )
- cuda? ( single-precision )
- opencl? ( single-precision )
- cuda? ( !opencl )
- mkl? ( !blas !fftw !lapack )
- ${PYTHON_REQUIRED_USE}"
-
-DOCS=( AUTHORS README )
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2021-musl-stdint.patch"
- "${FILESDIR}/${PN}-2021-cuda-detection.patch"
- "${FILESDIR}/${PN}-2021-cstdint-include.patch"
-)
-
-if [[ ${PV} != *9999 ]]; then
- S="${WORKDIR}/${PN}-${PV/_/-}"
-fi
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]]; then
- default
- else
- git-r3_src_unpack
- if use test; then
- EGIT_REPO_URI="https://gitlab.com/gromacs/gromacs-regressiontests.git" \
- EGIT_BRANCH="${EGIT_BRANCH}" \
- EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
- git-r3_src_unpack
- fi
- fi
-}
-
-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"
- if use build-manual; then
- # try to create policy for imagemagik
- mkdir -p "${HOME}"/.config/ImageMagick
- cat >> "${HOME}"/.config/ImageMagick/policy.xml <<- EOF
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE policymap [
- <!ELEMENT policymap (policy)+>
- !ATTLIST policymap xmlns CDATA #FIXED ''>
- <!ELEMENT policy EMPTY>
- <!ATTLIST policy xmlns CDATA #FIXED '' domain NMTOKEN #REQUIRED
- name NMTOKEN #IMPLIED pattern CDATA #IMPLIED rights NMTOKEN #IMPLIED
- stealth NMTOKEN #IMPLIED value CDATA #IMPLIED>
- ]>
- <policymap>
- <policy domain="coder" rights="read | write" pattern="PS" />
- <policy domain="coder" rights="read | write" pattern="PS2" />
- <policy domain="coder" rights="read | write" pattern="PS3" />
- <policy domain="coder" rights="read | write" pattern="EPS" />
- <policy domain="coder" rights="read | write" pattern="PDF" />
- <policy domain="coder" rights="read | write" pattern="XPS" />
- </policymap>
- EOF
- fi
-}
-
-src_configure() {
- local mycmakeargs_pre=( ) extra fft_opts=( )
- local acce="AUTO"
-
- if use custom-cflags; then
- #go from slowest to fastest acceleration
- acce="None"
- if (use amd64 || use x86); then
- 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"
- use cpu_flags_x86_avx512f && acce="AVX_512"
- elif (use arm); then
- use cpu_flags_arm_neon && acce="ARM_NEON"
- elif (use arm64); then
- use cpu_flags_arm_neon && acce="ARM_NEON_ASIMD"
- fi
- else
- strip-flags
- fi
-
- #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_BUILD_MANUAL=$(usex build-manual)
- -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 gpu=( "-DGMX_GPU=OFF" )
- [[ ${x} = "float" ]] && use cuda && gpu=( "-DGMX_GPU=CUDA" )
- use opencl && gpu=( "-DGMX_GPU=OPENCL" )
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_MPI=OFF
- -DGMX_THREAD_MPI=$(usex threads)
- -DGMXAPI=$(usex gmxapi)
- -DGMX_INSTALL_LEGACY_API=$(usex gmxapi-legacy)
- "${gpu[@]}"
- "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
- -DGMX_BINARY_SUFFIX="${suffix}"
- -DGMX_LIBS_SUFFIX="${suffix}"
- -DGMX_PYTHON_PACKAGE=$(usex python)
- )
- 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
- if use python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile python_packaging/all
- BUILD_DIR="${WORKDIR}/${P}" \
- distutils-r1_src_compile
- fi
- # not 100% necessary for rel ebuilds as available from website
- if use build-manual; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile manual
- fi
- 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 python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}" \
- cmake_src_install python_packaging/install
- fi
- if use build-manual; then
- newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
- fi
-
- if use doc; then
- if [[ ${PV} != *9999* ]]; then
- newdoc "${DISTDIR}/manual-${PV}.pdf" "${PN}-manual-${PV}.pdf"
- fi
- 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-2022.6.ebuild b/sci-chemistry/gromacs/gromacs-2022.6.ebuild
deleted file mode 100644
index 92b1f497c860..000000000000
--- a/sci-chemistry/gromacs/gromacs-2022.6.ebuild
+++ /dev/null
@@ -1,337 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-CMAKE_MAKEFILE_GENERATOR="ninja"
-
-PYTHON_COMPAT=( python3_{10..12} )
-
-DISTUTILS_OPTIONAL=1
-DISTUTILS_USE_PEP517=no
-DISTUTILS_SINGLE_IMPL=1
-
-inherit bash-completion-r1 cmake cuda distutils-r1 flag-o-matic readme.gentoo-r1 toolchain-funcs xdg-utils
-
-if [[ ${PV} = *9999* ]]; then
- EGIT_REPO_URI="
- https://gitlab.com/gromacs/gromacs.git
- https://github.com/gromacs/gromacs.git
- "
- [[ ${PV} = 9999 ]] && EGIT_BRANCH="master" || EGIT_BRANCH="release-${PV:0:4}"
- inherit git-r3
-else
- SRC_URI="
- https://ftp.gromacs.org/gromacs/${P}.tar.gz
- doc? ( https://ftp.gromacs.org/manual/manual-${PV}.pdf )
- test? ( https://ftp.gromacs.org/regressiontests/regressiontests-${PV}.tar.gz )"
- # since 2022 arm support was dropped (but not arm64)
- KEYWORDS="~amd64 -arm ~arm64 ~x86 ~amd64-linux ~x86-linux ~x64-macos"
-fi
-
-ACCE_IUSE="cpu_flags_x86_sse2 cpu_flags_x86_sse4_1 cpu_flags_x86_fma4 cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_avx512f cpu_flags_arm_neon"
-
-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="blas clang clang-cuda cuda +custom-cflags +doc build-manual double-precision +fftw +gmxapi +gmxapi-legacy +hwloc lapack mkl mpi +offensive opencl openmp +python +single-precision test +threads +tng ${ACCE_IUSE}"
-
-CDEPEND="
- blas? ( virtual/blas )
- cuda? ( >=dev-util/nvidia-cuda-toolkit-11:=[profiler] )
- opencl? ( virtual/opencl )
- openmp? (
- sys-devel/gcc[openmp]
- sys-devel/clang-runtime[openmp]
- )
- fftw? ( sci-libs/fftw:3.0= )
- hwloc? ( sys-apps/hwloc:= )
- lapack? ( virtual/lapack )
- mkl? ( sci-libs/mkl )
- mpi? ( virtual/mpi[cxx] )
- sci-libs/lmfit:=
- >=dev-cpp/muParser-2.3:=
- ${PYTHON_DEPS}
- "
-BDEPEND="${CDEPEND}
- virtual/pkgconfig
- clang? ( >=sys-devel/clang-6:* )
- build-manual? (
- app-text/doxygen
- $(python_gen_cond_dep '
- dev-python/sphinx[${PYTHON_USEDEP}]
- ')
- media-gfx/mscgen
- media-gfx/graphviz
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- media-gfx/imagemagick
- )"
-RDEPEND="${CDEPEND}
- <sci-chemistry/dssp-4"
-
-REQUIRED_USE="
- || ( single-precision double-precision )
- doc? ( !build-manual )
- cuda? ( single-precision )
- opencl? ( single-precision )
- cuda? ( !opencl )
- clang-cuda? ( clang cuda )
- mkl? ( !blas !fftw !lapack )
- ${PYTHON_REQUIRED_USE}"
-
-DOCS=( AUTHORS README )
-
-RESTRICT="!test? ( test )"
-
-if [[ ${PV} != *9999 ]]; then
- S="${WORKDIR}/${PN}-${PV/_/-}"
-fi
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- if [[ ${PV} != *9999 ]]; then
- default
- else
- git-r3_src_unpack
- if use test; then
- EGIT_REPO_URI="https://gitlab.com/gromacs/gromacs-regressiontests.git" \
- EGIT_BRANCH="${EGIT_BRANCH}" \
- EGIT_CHECKOUT_DIR="${WORKDIR}/regressiontests"\
- git-r3_src_unpack
- fi
- fi
-}
-
-src_prepare() {
- #notes/todos
- # -on apple: there is framework support
-
- xdg_environment_reset #591952
-
- # we can use clang as default
- if use clang && ! tc-is-clang ; then
- export CC=${CHOST}-clang
- export CXX=${CHOST}-clang++
- else
- tc-export CXX CC
- fi
- # clang-cuda need to filter mfpmath
- if use clang-cuda ; then
- filter-mfpmath sse
- filter-mfpmath i386
- fi
-
- 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"
- if use build-manual; then
- # try to create policy for imagemagik
- mkdir -p "${HOME}"/.config/ImageMagick
- cat >> "${HOME}"/.config/ImageMagick/policy.xml <<- EOF
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE policymap [
- <!ELEMENT policymap (policy)+>
- !ATTLIST policymap xmlns CDATA #FIXED ''>
- <!ELEMENT policy EMPTY>
- <!ATTLIST policy xmlns CDATA #FIXED '' domain NMTOKEN #REQUIRED
- name NMTOKEN #IMPLIED pattern CDATA #IMPLIED rights NMTOKEN #IMPLIED
- stealth NMTOKEN #IMPLIED value CDATA #IMPLIED>
- ]>
- <policymap>
- <policy domain="coder" rights="read | write" pattern="PS" />
- <policy domain="coder" rights="read | write" pattern="PS2" />
- <policy domain="coder" rights="read | write" pattern="PS3" />
- <policy domain="coder" rights="read | write" pattern="EPS" />
- <policy domain="coder" rights="read | write" pattern="PDF" />
- <policy domain="coder" rights="read | write" pattern="XPS" />
- </policymap>
- EOF
- fi
-}
-
-src_configure() {
- local mycmakeargs_pre=( ) extra fft_opts=( )
- local acce="AUTO"
-
- if use custom-cflags; then
- #go from slowest to fastest acceleration
- acce="None"
- if (use amd64 || use x86); then
- 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"
- use cpu_flags_x86_avx512f && acce="AVX_512"
- elif (use arm); then
- use cpu_flags_arm_neon && acce="ARM_NEON"
- elif (use arm64); then
- use cpu_flags_arm_neon && acce="ARM_NEON_ASIMD"
- fi
- else
- strip-flags
- fi
-
- #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[@]}"
- "${lmfit_opts[@]}"
- -DGMX_USE_LMFIT=EXTERNAL
- -DGMX_USE_MUPARSER=EXTERNAL
- -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_BUILD_MANUAL=$(usex build-manual)
- -DGMX_HWLOC=$(usex hwloc)
- -DGMX_DEFAULT_SUFFIX=off
- -DGMX_SIMD="$acce"
- -DGMX_VMD_PLUGIN_PATH="${EPREFIX}/usr/$(get_libdir)/vmd/plugins/*/molfile/"
- -DGMX_DSSP_PROGRAM_PATH="${EPREFIX}/usr/bin/dssp"
- -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 gpu=( "-DGMX_GPU=OFF" )
- [[ ${x} = "float" ]] && use cuda && gpu=( "-DGMX_GPU=CUDA" )
- [[ ${x} = "float" ]] && use clang-cuda && gpu=( "-DGMX_GPU=CUDA" "-DGMX_CLANG_CUDA=ON" )
- use opencl && gpu=( "-DGMX_GPU=OPENCL" )
- local mycmakeargs=(
- ${mycmakeargs_pre[@]} ${p}
- -DGMX_MPI=$(usex mpi)
- -DGMX_THREAD_MPI=$(usex threads)
- -DGMXAPI=$(usex gmxapi)
- -DGMX_INSTALL_LEGACY_API=$(usex gmxapi-legacy)
- "${gpu[@]}"
- "$(use test && echo -DREGRESSIONTEST_PATH="${WORKDIR}/${P}_${x}/tests")"
- -DGMX_BINARY_SUFFIX="${suffix}"
- -DGMX_LIBS_SUFFIX="${suffix}"
- -DGMX_PYTHON_PACKAGE=$(usex python)
- )
- 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
- done
-}
-
-src_compile() {
- for x in ${GMX_DIRS}; do
- einfo "Compiling for ${x} precision"
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile
- if use python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile python_packaging/all
- BUILD_DIR="${WORKDIR}/${P}" \
- distutils-r1_src_compile
- fi
- # not 100% necessary for rel ebuilds as available from website
- if use build-manual; then
- BUILD_DIR="${WORKDIR}/${P}_${x}"\
- cmake_src_compile manual
- fi
- 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 python; then
- BUILD_DIR="${WORKDIR}/${P}_${x}" \
- cmake_src_install python_packaging/install
- fi
- if use build-manual; then
- newdoc "${WORKDIR}/${P}_${x}"/docs/manual/gromacs.pdf "${PN}-manual-${PV}.pdf"
- fi
-
- if use doc; then
- if [[ ${PV} != *9999* ]]; then
- newdoc "${DISTDIR}/manual-${PV}.pdf" "${PN}-manual-${PV}.pdf"
- fi
- fi
- 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/metadata.xml b/sci-chemistry/gromacs/metadata.xml
index 518711308a02..43c6b2799b5c 100644
--- a/sci-chemistry/gromacs/metadata.xml
+++ b/sci-chemistry/gromacs/metadata.xml
@@ -18,7 +18,6 @@
<flag name="gmxapi">Add support for gmxapi library</flag>
<flag name="gmxapi-legacy">Enable installing lagacy headers</flag>
<flag name="hwloc">Enable HWLoc lib support</flag>
- <flag name="lmfit">Use external <pkg>sci-libs/lmfit</pkg></flag>
<flag name="nnpot">Allow to use <pkg>sci-libs/caffe2</pkg> for NN Potentials</flag>
<flag name="opencl">Enable opencl non-bonded kernels</flag>
<flag name="single-precision">Single precision version of gromacs (default)</flag>
^ permalink raw reply related [flat|nested] 10+ messages in thread
end of thread, other threads:[~2024-11-23 17:43 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-21 8:13 [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/gromacs/, sci-chemistry/gromacs/files/ Alexey Shvetsov
-- strict thread matches above, loose matches on Subject: below --
2024-11-23 17:42 Alexey Shvetsov
2024-10-20 12:15 Alexey Shvetsov
2024-10-19 18:43 Alexey Shvetsov
2024-03-26 20:00 Andreas Sturmlechner
2022-02-22 20:58 Alexey Shvetsov
2022-02-21 16:20 Alexey Shvetsov
2021-11-07 20:12 Christoph Junghans
2019-10-24 9:36 Alexey Shvetsov
2017-12-12 20:50 Alexey Shvetsov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox