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