summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--var/spack/repos/builtin/packages/fenics/package.py12
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-ffc/package.py8
-rw-r--r--var/spack/repos/builtin/packages/py-fenics-ufl-legacy/package.py35
3 files changed, 51 insertions, 4 deletions
diff --git a/var/spack/repos/builtin/packages/fenics/package.py b/var/spack/repos/builtin/packages/fenics/package.py
index 711d6e3333..ae8336aa39 100644
--- a/var/spack/repos/builtin/packages/fenics/package.py
+++ b/var/spack/repos/builtin/packages/fenics/package.py
@@ -18,9 +18,10 @@ class Fenics(CMakePackage):
homepage = "https://fenicsproject.org/"
git = "https://bitbucket.org/fenics-project/dolfin.git"
url = "https://bitbucket.org/fenics-project/dolfin/downloads/dolfin-2019.1.0.post0.tar.gz"
+ maintainers("chrisrichardson", "garth-wells", "jhale")
license("LGPL-3.0-only")
-
+ version("master", branch="master")
version(
"2019.1.0.post0", sha256="61abdcdb13684ba2a3ba4afb7ea6c7907aa0896a46439d3af7e8848483d4392f"
)
@@ -90,7 +91,9 @@ class Fenics(CMakePackage):
# fenics python package dependencies
for ver in dolfin_versions:
wver = "@" + ver
+
depends_on("py-fenics-fiat{0}".format(wver), type=("build", "run"), when=wver + "+python")
+
if Version(ver) < Version("2018.1.0"):
depends_on(
"py-fenics-instant{0}".format(wver), type=("build", "run"), when=wver + "+python"
@@ -99,11 +102,18 @@ class Fenics(CMakePackage):
depends_on(
"py-fenics-dijitso{0}".format(wver), type=("build", "run"), when=wver + "+python"
)
+
depends_on("py-fenics-ufl{0}".format(wver), type=("build", "run"), when=wver + "+python")
if ver in ["2019.1.0", "2017.2.0"]:
wver = "@" + ver + ".post0"
depends_on("py-fenics-ffc{0}".format(wver), type=("build", "run"), when=wver + "+python")
+ # Adding special case for master
+ depends_on("py-fenics-fiat@2019.1.0", type=("build", "run"), when="@master+python")
+ depends_on("py-fenics-dijitso@master", type=("build", "run"), when="@master+python")
+ depends_on("py-fenics-ufl-legacy@main", type=("build", "run"), when="@master+python")
+ depends_on("py-fenics-ffc@master", type=("build", "run"), when="@master+python")
+
# package dependencies
depends_on("python@3.5:", type=("build", "run"), when="+python")
depends_on("eigen@3.2.0:")
diff --git a/var/spack/repos/builtin/packages/py-fenics-ffc/package.py b/var/spack/repos/builtin/packages/py-fenics-ffc/package.py
index aea3d1ac14..b5ddb27558 100644
--- a/var/spack/repos/builtin/packages/py-fenics-ffc/package.py
+++ b/var/spack/repos/builtin/packages/py-fenics-ffc/package.py
@@ -18,7 +18,7 @@ class PyFenicsFfc(PythonPackage):
maintainers("emai-imcs")
license("LGPL-3.0-or-later")
-
+ version("master", branch="master")
version(
"2019.1.0.post0", sha256="306e1179630200a34202975a5369194939b3482eebfc34bc44ad74dab1f109e8"
)
@@ -28,8 +28,6 @@ class PyFenicsFfc(PythonPackage):
)
version("2016.2.0", sha256="097c284780447ea7bb47d4d51956648a1efb2cb9047eb1382944421dde351ecb")
- depends_on("python@3.5:", type=("build", "run"))
-
depends_on("py-setuptools", type=("build", "run"))
depends_on("py-numpy", type=("build", "run"))
@@ -43,3 +41,7 @@ class PyFenicsFfc(PythonPackage):
else:
depends_on("py-fenics-dijitso{0}".format(wver), type=("build", "run"), when=wver)
depends_on("py-fenics-ufl{0}".format(wver), type=("build", "run"), when=wver)
+
+ depends_on("py-fenics-fiat@2019.1.0", type=("build", "run"), when="@master")
+ depends_on("py-fenics-dijitso@master", type=("build", "run"), when="@master")
+ depends_on("py-fenics-ufl-legacy@main", type=("build", "run"), when="@master")
diff --git a/var/spack/repos/builtin/packages/py-fenics-ufl-legacy/package.py b/var/spack/repos/builtin/packages/py-fenics-ufl-legacy/package.py
new file mode 100644
index 0000000000..53765e0f0b
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-fenics-ufl-legacy/package.py
@@ -0,0 +1,35 @@
+# 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 PyFenicsUflLegacy(PythonPackage):
+ """The Unified Form Language (UFL) is a domain specific language for
+ declaration of finite element discretizations of variational forms. More
+ precisely, it defines a flexible interface for choosing finite element
+ spaces and defining expressions for weak forms in a notation close to
+ mathematical notation."""
+
+ homepage = "https://fenicsproject.org/"
+ url = "https://github.com/FEniCS/ufl-legacy/archive/2022.3.0.tar.gz"
+ git = "https://github.com/FEniCS/ufl-legacy.git"
+ maintainers("chrisrichardson", "garth-wells", "jhale")
+
+ license("LGPL-3.0-or-later")
+
+ version("main", branch="main")
+ version("2022.3.0", sha256="2d0f4c88fe151d631e1d389faf61f58bbbe649fd08106e756fd5d6c53213660a")
+
+ depends_on("py-setuptools@58:", type="build")
+ depends_on("py-numpy", type=("build", "run"))
+
+ depends_on("py-pytest", type="test")
+
+ @run_after("install")
+ @on_package_attributes(run_tests=True)
+ def check_build(self):
+ with working_dir("test"):
+ Executable("py.test")()