From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 5D32B15808B for ; Fri, 4 Mar 2022 17:38:30 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A4FC7E09E0; Fri, 4 Mar 2022 17:38:29 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7694EE09DB for ; Fri, 4 Mar 2022 17:38:29 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 52B52342FB5 for ; Fri, 4 Mar 2022 17:38:28 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id A32D8303 for ; Fri, 4 Mar 2022 17:38:26 +0000 (UTC) From: "Andrew Ammerlaan" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andrew Ammerlaan" Message-ID: <1646415495.d1918a66024dbcb24aa822b3402c6b7b8862070d.andrewammerlaan@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sci-physics/lammps/ X-VCS-Repository: repo/gentoo X-VCS-Files: sci-physics/lammps/Manifest sci-physics/lammps/lammps-20220217.ebuild sci-physics/lammps/metadata.xml X-VCS-Directories: sci-physics/lammps/ X-VCS-Committer: andrewammerlaan X-VCS-Committer-Name: Andrew Ammerlaan X-VCS-Revision: d1918a66024dbcb24aa822b3402c6b7b8862070d X-VCS-Branch: master Date: Fri, 4 Mar 2022 17:38:26 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 10c61629-de60-4807-8364-4ebf509314e0 X-Archives-Hash: 85e80c1a9f667d4eaf8bdd4378e0bfef commit: d1918a66024dbcb24aa822b3402c6b7b8862070d Author: Andrew Ammerlaan gentoo org> AuthorDate: Fri Mar 4 17:34:12 2022 +0000 Commit: Andrew Ammerlaan gentoo org> CommitDate: Fri Mar 4 17:38:15 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d1918a66 sci-physics/lammps: add version 2022 Feb 17 Closes: https://bugs.gentoo.org/834112 Bug: https://bugs.gentoo.org/763189 Bug: https://bugs.gentoo.org/815085 Bug: https://bugs.gentoo.org/659882 Bug: https://bugs.gentoo.org/830693 Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Andrew Ammerlaan gentoo.org> sci-physics/lammps/Manifest | 1 + sci-physics/lammps/lammps-20220217.ebuild | 164 ++++++++++++++++++++++++++++++ sci-physics/lammps/metadata.xml | 6 +- 3 files changed, 169 insertions(+), 2 deletions(-) diff --git a/sci-physics/lammps/Manifest b/sci-physics/lammps/Manifest index 4dd18e6d8f56..e5977998434f 100644 --- a/sci-physics/lammps/Manifest +++ b/sci-physics/lammps/Manifest @@ -1,2 +1,3 @@ +DIST lammps-17Feb2022.tar.gz 170036241 BLAKE2B 74d370657bff17847dce0bbe082134721722574b298832ea37d319968123b12d37ecdfea5560b2776e846c32d05a98f722710327d8da46f80869f75a36f6c255 SHA512 f2df65847906ca5890aae98efed5712eb6dd694f2b85dc062084a02b9bf43412ecd075f54df2947bff71d3b6313c1ec39c437e02497920da795e9ba0cd5dc068 DIST lammps-stable_3Mar2020.tar.gz 126001870 BLAKE2B 35ed6ff208fd6dcc8eae50b8e0562a6a0771aa6419c0225353f648d95512ca64b22250ad4a3f9b836b9a25a6838e24e070a1d190fdc02b896dc1ed9838648f01 SHA512 6608cd9f6ea18d8acb55d611a560cb4b329043b41aca23fafd91fac0dfbde5a5286e1a6563bd16b2414bb3bf95929e3a2f270a0b023ce5ede515eb3353d56f04 DIST lammps-testing-stable_3Mar2020.tar.gz 55729550 BLAKE2B d0de8efa83342b4a350f17a43d3fe96011534b3f410beb295e396a45200ea56298c14664b290b2e30ab4f2fd70b92c01c73927b2878e8171a166dedee8ecf379 SHA512 e3dc592ce57ae625eb66ddd9ca80d7bbaca57c47a07166a7196dcc3074b574a497e706da8baf93b5deacdf588702ceb141014533ac2aaccdd011836fb34943b9 diff --git a/sci-physics/lammps/lammps-20220217.ebuild b/sci-physics/lammps/lammps-20220217.ebuild new file mode 100644 index 000000000000..56e4a03a5b0f --- /dev/null +++ b/sci-physics/lammps/lammps-20220217.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..10} ) +DISTUTILS_OPTIONAL=1 +CMAKE_MAKEFILE_GENERATOR=emake +# Doc building insists on fetching mathjax +# DOCS_BUILDER="doxygen" +# DOCS_DEPEND=" +# media-gfx/graphviz +# dev-libs/mathjax +# " + +inherit cmake fortran-2 distutils-r1 # docs + +convert_month() { + local months=( "" Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec ) + echo ${months[${1#0}]} +} + +MY_PV="$((10#${PV:6:2}))$(convert_month ${PV:4:2})${PV:0:4}" +MY_P="${PN}-${MY_PV}" + +DESCRIPTION="Large-scale Atomic/Molecular Massively Parallel Simulator" +HOMEPAGE="https://lammps.sandia.gov/" +SRC_URI="https://download.lammps.org/tars/${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}/cmake" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="cuda examples gzip hip lammps-memalign mpi opencl python test" +# Requires write access to /dev/dri/renderD... +RESTRICT="test" + +RDEPEND=" + app-arch/gzip + media-libs/libpng:0 + sys-libs/zlib + mpi? ( + virtual/mpi + sci-libs/hdf5:=[mpi] + ) + python? ( ${PYTHON_DEPS} ) + sci-libs/voro++ + virtual/blas + virtual/lapack + sci-libs/fftw:3.0= + sci-libs/netcdf:= + cuda? ( >=dev-util/nvidia-cuda-toolkit-4.2.9-r1:= ) + opencl? ( virtual/opencl ) + hip? ( dev-util/hip:= ) + dev-cpp/eigen:3 + " + # Kokkos-3.5 not in tree atm + # kokkos? ( dev-cpp/kokkos-3.5.* ) +DEPEND="${RDEPEND} + test? ( + dev-cpp/gtest + ) +" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + ?? ( cuda opencl hip ) +" + +src_prepare() { + cmake_src_prepare + if use python; then + pushd ../python || die + distutils-r1_src_prepare + popd + fi +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc" + -DBUILD_SHARED_LIBS=ON + -DBUILD_MPI=$(usex mpi) + -DBUILD_DOC=OFF + #-DBUILD_DOC=$(usex doc) + -DENABLE_TESTING=$(usex test) + -DPKG_ASPHERE=ON + -DPKG_BODY=ON + -DPKG_CLASS2=ON + -DPKG_COLLOID=ON + -DPKG_COMPRESS=ON + -DPKG_CORESHELL=ON + -DPKG_DIPOLE=ON + -DPKG_GRANULAR=ON + -DPKG_KSPACE=ON + -DFFT=FFTW3 + -DPKG_KOKKOS=OFF + #-DPKG_KOKKOS=$(usex kokkos) + #$(use kokkos && echo -DEXTERNAL_KOKKOS=ON) + -DPKG_MANYBODY=ON + -DPKG_MC=ON + -DPKG_MEAM=ON + -DPKG_MISC=ON + -DPKG_MOLECULE=ON + -DPKG_PERI=ON + -DPKG_QEQ=ON + -DPKG_REPLICA=ON + -DPKG_RIGID=ON + -DPKG_SHOCK=ON + -DPKG_SRD=ON + -DPKG_PYTHON=$(usex python) + -DPKG_MPIIO=$(usex mpi) + -DPKG_VORONOI=ON + ) + if use cuda || use opencl || use hip; then + mycmakeargs+=( -DPKG_GPU=ON ) + use cuda && mycmakeargs+=( -DGPU_API=cuda ) + use opencl && mycmakeargs+=( -DGPU_API=opencl -DUSE_STATIC_OPENCL_LOADER=OFF ) + use hip && mycmakeargs+=( -DGPU_API=hip ) + else + mycmakeargs+=( -DPKG_GPU=OFF ) + fi + cmake_src_configure + if use python; then + pushd ../python || die + distutils-r1_src_configure + popd + fi +} + +src_compile() { + cmake_src_compile + if use python; then + pushd ../python || die + distutils-r1_src_compile + popd + fi +} + +src_test() { + cmake_src_test + if use python; then + pushd ../python || die + distutils-r1_src_test + popd + fi +} + +src_install() { + cmake_src_install + if use python; then + pushd ../python || die + distutils-r1_src_install + popd + fi + + if use examples; then + for d in examples bench; do + local LAMMPS_EXAMPLES="/usr/share/${PN}/${d}" + insinto "${LAMMPS_EXAMPLES}" + doins -r "${S}"/../${d}/* + done + fi +} diff --git a/sci-physics/lammps/metadata.xml b/sci-physics/lammps/metadata.xml index 8b13daf09171..8ac470d0f10e 100644 --- a/sci-physics/lammps/metadata.xml +++ b/sci-physics/lammps/metadata.xml @@ -19,8 +19,10 @@ Enables the use of the posix_memalign() call instead of malloc() when large chunks or memory are allocated by LAMMPS. Aliengnment is on 16 byte boundaries. - Enable cuda non-bonded kernels - Enable kokkos non-bonded kernels + Enable cuda gpu computing support + Enable opencl gpu computing support + Enable hip gpu computing support + nicolasbock@gentoo.org