Files
spack/var/spack/repos/builtin/packages/of-catalyst/package.py
Massimiliano Culpo 8b7abace8b Enforce consistency of gl providers (#44307)
* glew: rework dependency on gl

This simplifies the package and ensures a single gl implementation is
pulled in. Before we were adding direct dependencies, and those are
not unified through the virtual.

* mesa-demos: rework dependency on gl

This simplifies the package and ensures a single gl implementation is
pulled in. Before we were adding direct dependencies, and those are
not unified through the virtual.

* mesa-glu: rework dependency on gl

This simplifies the package and ensures a single gl implementation is
pulled in. Before we were adding direct dependencies, and those are
not unified through the virtual.

* paraview: fix dependency on glew

* mesa: group dependency on when("+glx")

* Add missing dependency on libxml2

* paraview: remove the "osmesa" and "egl" variant

Instead, enforce consistency using the "gl" virtual that allows
only one provider.

* visit: remove osmesa variant

* Disable paraview in the aws-isc stacks

* data-vis-sdk: rework constrains to enforce front-ends

* e4s-power: remove redundant paraview

* Pipelines: update osmesa variants

* trilinos-catalyst-ioss-adapter: make gl a run dependency
2024-05-23 20:17:51 +00:00

51 lines
1.9 KiB
Python

# 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 OfCatalyst(CMakePackage):
"""Of-catalyst is a library for OpenFOAM that provides a runtime-selectable
function object for embedding ParaView Catalyst in-situ visualization
into arbitrary OpenFOAM simulations.
Supports in-situ conversion of the following types:
1) finite volume meshes and fields, single or multi-region;
2) finite area meshes and fields, single region;
3) lagrangian (clouds), single or multiple clouds.
This offering is part of the community repository supported by OpenCFD Ltd,
producer and distributor of the OpenFOAM software via www.openfoam.com,
and owner of the OPENFOAM trademark.
OpenCFD Ltd has been developing and releasing OpenFOAM since its debut
in 2004.
"""
# Currently only via git
homepage = "https://develop.openfoam.com/Community/catalyst"
git = "https://develop.openfoam.com/Community/catalyst.git"
version("develop", branch="develop")
version("1806", tag="v1806", commit="d97babec3581bad413fd602e17fcd4bc1e312d26")
variant("full", default=False, description="Build against paraview (full) or catalyst (light)")
depends_on("openfoam@1806", when="@1806", type=("build", "link", "run"))
depends_on("openfoam@develop", when="@develop", type=("build", "link", "run"))
with when("+full"):
depends_on("paraview@5.5: ~qt")
depends_on("gl")
requires("^[virtuals=gl] osmesa")
root_cmakelists_dir = "src/catalyst"
def cmake_args(self):
"""Populate cmake arguments for ParaView."""
cmake_args = [
"-DCMAKE_LIBRARY_OUTPUT_DIRECTORY:PATH=%s"
% join_path(self.stage.source_path, "spack-build")
]
return cmake_args