From f76e01707a1ce1854a4390ac8fd1d872667c123d Mon Sep 17 00:00:00 2001 From: Alexandre DENIS <alexandre.denis@inria.fr> Date: Wed, 19 Feb 2025 15:32:04 +0100 Subject: [PATCH] mpi-sync-clocks: new package (#47834) * mpi_ysnc_clocks: new package * mpi_sync_clocks: move package to the right location * mpi_sync_clocks: add copyright header * mpi-sync-clocks: rename package mpi_sync_clocks -> mpi-sync-clocks to comply with naming convention * mpi-sync-clocks: update copyright Co-authored-by: Wouter Deconinck <wdconinc@gmail.com> * mpi-sync-clocks: streamline autogen --------- Co-authored-by: Wouter Deconinck <wdconinc@gmail.com> --- .../packages/mpi-sync-clocks/package.py | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 var/spack/repos/builtin/packages/mpi-sync-clocks/package.py diff --git a/var/spack/repos/builtin/packages/mpi-sync-clocks/package.py b/var/spack/repos/builtin/packages/mpi-sync-clocks/package.py new file mode 100644 index 00000000000..9b67b130901 --- /dev/null +++ b/var/spack/repos/builtin/packages/mpi-sync-clocks/package.py @@ -0,0 +1,39 @@ +# Copyright Spack Project Developers. See COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class MpiSyncClocks(AutotoolsPackage): + """MPI Sync Clocks. + + MPI Sync Clocks is an implementation of synchronized clocks using MPI. + """ + + homepage = "https://pm2.gitlabpages.inria.fr/" + url = "https://pm2.gitlabpages.inria.fr/releases/mpi_sync_clocks-1.0.tar.gz" + git = "https://gitlab.inria.fr/pm2/pm2.git" + + build_directory = "build" + + maintainers("a-denis") + license("LGPL-2.1-or-later", checked_by="a-denis") + + version("master", branch="master") + version("1.0", sha256="06c63adc2f3ae7d00e3bdbbe62ee6800660fde320a3d36a232799e015165a1ff") + + depends_on("c", type="build") + depends_on("autoconf@2.69:", type="build") + depends_on("mpi", type=("build", "link", "run")) + + @property + def configure_directory(self) -> str: + if "@master" in self.spec: + return "mpi_sync_clocks" + else: + return super().configure_directory + + def autoreconf(self, spec, prefix): + with working_dir(self.configure_directory): + Executable("./autogen.sh")() -- GitLab