From 3798b16a29e4d56cea4a4fa5326373795ca4262b Mon Sep 17 00:00:00 2001
From: Matthias Wolf <matthias.wolf@epfl.ch>
Date: Mon, 19 Aug 2024 10:09:43 +0200
Subject: py-brain-indexer: new package (#44718)

---
 .../builtin/packages/py-brain-indexer/package.py   | 37 ++++++++++++++++++++++
 .../repos/builtin/packages/py-docopt-ng/package.py | 19 +++++++++++
 .../builtin/packages/py-pdm-backend/package.py     | 19 +++++++++++
 3 files changed, 75 insertions(+)
 create mode 100644 var/spack/repos/builtin/packages/py-brain-indexer/package.py
 create mode 100644 var/spack/repos/builtin/packages/py-docopt-ng/package.py
 create mode 100644 var/spack/repos/builtin/packages/py-pdm-backend/package.py

diff --git a/var/spack/repos/builtin/packages/py-brain-indexer/package.py b/var/spack/repos/builtin/packages/py-brain-indexer/package.py
new file mode 100644
index 0000000000..28381e6f95
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-brain-indexer/package.py
@@ -0,0 +1,37 @@
+# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from spack.package import *
+
+
+class PyBrainIndexer(PythonPackage):
+    """Spatial indexer for geometries and morphologies"""
+
+    homepage = "https://github.com/BlueBrain/brain-indexer"
+    pypi = "brain-indexer/brain_indexer-3.0.0.tar.gz"
+
+    license("Apache-2.0", checked_by="matz-e")
+
+    maintainers("matz-e")
+
+    version("3.0.0", sha256="23947519df5f87c65781d1776f02e8e17798c40c617399b02e6ecae8e09a0a72")
+
+    variant("mpi", default=True, description="Enable MPI parallelism")
+
+    depends_on("py-scikit-build-core+pyproject@:0.7", type="build")
+    depends_on("py-setuptools-scm@8.0:", type="build")
+    depends_on("cmake@3.5:")
+    depends_on("boost@1.79.0: +filesystem+serialization")
+    depends_on("py-docopt-ng", type=("build", "run"))
+    depends_on("py-libsonata", type=("build", "run"))
+    depends_on("py-morphio", type=("build", "run"))
+    depends_on("py-numpy-quaternion", type=("build", "run"))
+    depends_on("py-numpy", type=("build", "run"))
+    depends_on("py-tqdm", type=("build", "run"))
+
+    depends_on("mpi", when="+mpi")
+    depends_on("py-mpi4py", type=("build", "run"), when="+mpi")
+
+    def config_settings(self, spec, prefix):
+        return {"cmake.define.CMAKE_INSTALL_RPATH_USE_LINK_PATH": "ON"}
diff --git a/var/spack/repos/builtin/packages/py-docopt-ng/package.py b/var/spack/repos/builtin/packages/py-docopt-ng/package.py
new file mode 100644
index 0000000000..7a0c927469
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-docopt-ng/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack.package import *
+
+
+class PyDocoptNg(PythonPackage):
+    """Command-line interface description language."""
+
+    homepage = "https://github.com/jazzband/docopt-ng"
+    pypi = "docopt-ng/docopt_ng-0.6.2.tar.gz"
+
+    license("MIT", checked_by="matz-e")
+
+    version("0.9.0", sha256="91c6da10b5bb6f2e9e25345829fb8278c78af019f6fc40887ad49b060483b1d7")
+
+    depends_on("py-pdm-backend", type="build")
diff --git a/var/spack/repos/builtin/packages/py-pdm-backend/package.py b/var/spack/repos/builtin/packages/py-pdm-backend/package.py
new file mode 100644
index 0000000000..c3aebb38b7
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pdm-backend/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+from spack.package import *
+
+
+class PyPdmBackend(PythonPackage):
+    """The build backend used by PDM that supports latest packaging standards"""
+
+    homepage = "https://backend.pdm-project.org/"
+    pypi = "pdm_backend/pdm_backend-2.3.0.tar.gz"
+
+    license("MIT", checked_by="matz-e")
+
+    version("2.3.0", sha256="e39ed2da206d90d4a6e9eb62f6dce54ed4fa65ddf172a7d5700960d0f8a09e09")
+
+    depends_on("python@3.8:", type=("build", "run"))
+    depends_on("py-importlib-metadata@3.6:", type=("build", "run"), when="^python@:3.9")
-- 
cgit v1.2.3-70-g09d2