summaryrefslogtreecommitdiff
path: root/var/spack
diff options
context:
space:
mode:
authorMassimiliano Culpo <massimiliano.culpo@gmail.com>2023-06-29 17:37:48 +0200
committerTodd Gamblin <tgamblin@llnl.gov>2023-08-15 15:54:37 -0700
commitd5eb5106b00cbb0c2d0328d98e59dd2bc194351d (patch)
tree661ceaf8c3e9a67879349fcb4ef002d644adfbd4 /var/spack
parent9f8edbf6bf6bb86ac448f6132f766e65ae1424ef (diff)
downloadspack-d5eb5106b00cbb0c2d0328d98e59dd2bc194351d.tar.gz
spack-d5eb5106b00cbb0c2d0328d98e59dd2bc194351d.tar.bz2
spack-d5eb5106b00cbb0c2d0328d98e59dd2bc194351d.tar.xz
spack-d5eb5106b00cbb0c2d0328d98e59dd2bc194351d.zip
Add unit-tests for use cases requiring separate concretization of build deps
Diffstat (limited to 'var/spack')
-rw-r--r--var/spack/repos/duplicates.test/packages/gmake/package.py19
-rw-r--r--var/spack/repos/duplicates.test/packages/hdf5/package.py17
-rw-r--r--var/spack/repos/duplicates.test/packages/pinned-gmake/package.py16
-rw-r--r--var/spack/repos/duplicates.test/packages/py-numpy/package.py20
-rw-r--r--var/spack/repos/duplicates.test/packages/py-setuptools/package.py19
-rw-r--r--var/spack/repos/duplicates.test/packages/py-shapely/package.py18
-rw-r--r--var/spack/repos/duplicates.test/packages/python/package.py18
-rw-r--r--var/spack/repos/duplicates.test/repo.yaml2
8 files changed, 129 insertions, 0 deletions
diff --git a/var/spack/repos/duplicates.test/packages/gmake/package.py b/var/spack/repos/duplicates.test/packages/gmake/package.py
new file mode 100644
index 0000000000..64eed7ef67
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/gmake/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2023 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 Gmake(Package):
+ """Simple build tool, with different versions"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ tags = ["build-tools"]
+
+ version("4.1", md5="0123456789abcdef0123456789abcdef")
+ version("4.0", md5="0123456789abcdef0123456789abcdef")
+ version("3.0", md5="0123456789abcdef0123456789abcdef")
+ version("2.0", md5="0123456789abcdef0123456789abcdef")
diff --git a/var/spack/repos/duplicates.test/packages/hdf5/package.py b/var/spack/repos/duplicates.test/packages/hdf5/package.py
new file mode 100644
index 0000000000..98082cbbf9
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/hdf5/package.py
@@ -0,0 +1,17 @@
+# Copyright 2013-2023 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 Hdf5(Package):
+ """Requires gmake at a version that doesn't match that of its dependency"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ version("1.0", md5="0123456789abcdef0123456789abcdef")
+
+ depends_on("pinned-gmake", type="link")
+ depends_on("gmake@4", type="build")
diff --git a/var/spack/repos/duplicates.test/packages/pinned-gmake/package.py b/var/spack/repos/duplicates.test/packages/pinned-gmake/package.py
new file mode 100644
index 0000000000..71e90b1a82
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/pinned-gmake/package.py
@@ -0,0 +1,16 @@
+# Copyright 2013-2023 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 PinnedGmake(Package):
+ """Software that requires gmake at a specific version"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ version("1.0", md5="0123456789abcdef0123456789abcdef")
+
+ depends_on("gmake@3", type="build")
diff --git a/var/spack/repos/duplicates.test/packages/py-numpy/package.py b/var/spack/repos/duplicates.test/packages/py-numpy/package.py
new file mode 100644
index 0000000000..2af50e4910
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/py-numpy/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2023 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 PyNumpy(Package):
+ """An extension that depends on pinned build dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ tags = ["build-tools"]
+
+ version("1.25.0", md5="0123456789abcdef0123456789abcdef")
+
+ extends("python")
+ depends_on("py-setuptools@=59", type=("build", "run"))
+ depends_on("gmake@4.1", type="build")
diff --git a/var/spack/repos/duplicates.test/packages/py-setuptools/package.py b/var/spack/repos/duplicates.test/packages/py-setuptools/package.py
new file mode 100644
index 0000000000..eaf7850697
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/py-setuptools/package.py
@@ -0,0 +1,19 @@
+# Copyright 2013-2023 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 PySetuptools(Package):
+ """Build tool for an extendable package"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ tags = ["build-tools"]
+
+ extends("python")
+
+ version("60", md5="0123456789abcdef0123456789abcdef")
+ version("59", md5="0123456789abcdef0123456789abcdef")
diff --git a/var/spack/repos/duplicates.test/packages/py-shapely/package.py b/var/spack/repos/duplicates.test/packages/py-shapely/package.py
new file mode 100644
index 0000000000..b471bbda5e
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/py-shapely/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2023 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 PyShapely(Package):
+ """An extension that depends on pinned build dependencies"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ version("1.25.0", md5="0123456789abcdef0123456789abcdef")
+
+ extends("python")
+ depends_on("py-numpy", type=("build", "link", "run"))
+ depends_on("py-setuptools@=60", type="build")
diff --git a/var/spack/repos/duplicates.test/packages/python/package.py b/var/spack/repos/duplicates.test/packages/python/package.py
new file mode 100644
index 0000000000..0c4db4781e
--- /dev/null
+++ b/var/spack/repos/duplicates.test/packages/python/package.py
@@ -0,0 +1,18 @@
+# Copyright 2013-2023 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 Python(Package):
+ """A package that can be extended"""
+
+ homepage = "http://www.example.com"
+ url = "http://www.example.com/tdep-1.0.tar.gz"
+
+ version("3.11.2", md5="0123456789abcdef0123456789abcdef")
+
+ extendable = True
+
+ depends_on("gmake@3", type="build")
diff --git a/var/spack/repos/duplicates.test/repo.yaml b/var/spack/repos/duplicates.test/repo.yaml
new file mode 100644
index 0000000000..fd021c858c
--- /dev/null
+++ b/var/spack/repos/duplicates.test/repo.yaml
@@ -0,0 +1,2 @@
+repo:
+ namespace: duplicates.test