diff options
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")() |