Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
import posixpath
import re
import hpccm.config
import hpccm.templates.rm
import hpccm.templates.tar
import hpccm.templates.wget
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.packages import packages
from hpccm.common import cpu_arch, linux_distro
from hpccm.primitives.comment import comment
from hpccm.primitives.shell import shell
from hpccm.primitives.environment import environment
class cmake(bb_base, hpccm.templates.rm, hpccm.templates.tar,
hpccm.templates.wget):
"""The `cmake` building block downloads and installs the
[CMake](https://cmake.org) component.
# Parameters
bootstrap_opts: List of options to pass to `bootstrap` when
building from source. The default is an empty list.
eula: By setting this value to `True`, you agree to the [CMake End-User License Agreement](https://gitlab.kitware.com/cmake/cmake/raw/master/Copyright.txt).
The default value is `False`.
ospackages: List of OS packages to install prior to installing.
The default values are `make` and `wget`.
prefix: The top level install location. The default value is
import hpccm.templates.envvars
import hpccm.templates.ldconfig
import hpccm.templates.rm
import hpccm.templates.tar
import hpccm.templates.wget
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.packages import packages
from hpccm.common import linux_distro
from hpccm.primitives.comment import comment
from hpccm.primitives.copy import copy
from hpccm.primitives.environment import environment
from hpccm.primitives.shell import shell
from hpccm.toolchain import toolchain
class catalyst(bb_base, hpccm.templates.CMakeBuild, hpccm.templates.envvars,
hpccm.templates.ldconfig, hpccm.templates.rm,
hpccm.templates.tar, hpccm.templates.wget):
"""The `catalyst` building block configures, builds, and installs the
[ParaView Catalyst](https://www.paraview.org/in-situ/) component.
The [CMake](#cmake) building block should be installed prior to
this building block.
A MPI building block should be installed prior to this building
block.
If GPU rendering will be used then a
[cudagl](https://hub.docker.com/r/nvidia/cudagl) base image is
recommended.
# Parameters
import hpccm.templates.git
import hpccm.templates.ldconfig
import hpccm.templates.rm
import hpccm.templates.tar
import hpccm.templates.wget
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.packages import packages
from hpccm.common import linux_distro
from hpccm.primitives.comment import comment
from hpccm.primitives.copy import copy
from hpccm.primitives.environment import environment
from hpccm.primitives.shell import shell
from hpccm.toolchain import toolchain
class gnu(bb_base, hpccm.templates.ConfigureMake, hpccm.templates.envvars,
hpccm.templates.git, hpccm.templates.ldconfig, hpccm.templates.rm,
hpccm.templates.tar, hpccm.templates.wget):
"""The `gnu` building block installs the GNU compilers from the
upstream Linux distribution.
As a side effect, a toolchain is created containing the GNU
compilers. The toolchain can be passed to other operations that
want to build using the GNU compilers.
# Parameters
cc: Boolean flag to specify whether to install `gcc`. The default
is True.
configure_opts: List of options to pass to `configure`. The
default value is `--disable-multilib`. This option is only
"""KNEM building block"""
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
import posixpath
import hpccm.templates.envvars
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.generic_build import generic_build
from hpccm.building_blocks.packages import packages
from hpccm.primitives.comment import comment
class knem(bb_base, hpccm.templates.envvars):
"""The `knem` building block install the headers from the
[KNEM](http://knem.gforge.inria.fr) component.
# Parameters
annotate: Boolean flag to specify whether to include annotations
(labels). The default is False.
environment: Boolean flag to specify whether the environment
(`CPATH`) should be modified to include knem. The default is True.
ospackages: List of OS packages to install prior to installing.
The default values are `ca-certificates` and `git`.
prefix: The top level install location. The default value is
`/usr/local/knem`.
from __future__ import print_function
import posixpath
import hpccm.config
import hpccm.templates.envvars
import hpccm.templates.ldconfig
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.generic_build import generic_build
from hpccm.building_blocks.packages import packages
from hpccm.common import cpu_arch
from hpccm.primitives.comment import comment
from hpccm.toolchain import toolchain
class openblas(bb_base, hpccm.templates.envvars, hpccm.templates.ldconfig):
"""The `openblas` building block builds and installs the
[OpenBLAS](https://www.openblas.net) component.
# Parameters
annotate: Boolean flag to specify whether to include annotations
(labels). The default is False.
environment: Boolean flag to specify whether the environment
(`LD_LIBRARY_PATH` and `PATH`) should be modified to include
OpenBLAS. The default is True.
ldconfig: Boolean flag to specify whether the OpenBLAS library
directory should be added dynamic linker cache. If False, then
`LD_LIBRARY_PATH` is modified to include the OpenBLAS library
directory. The default value is False.
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
import posixpath
import hpccm.templates.envvars
import hpccm.templates.ldconfig
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.generic_cmake import generic_cmake
from hpccm.building_blocks.packages import packages
from hpccm.primitives.comment import comment
class magma(bb_base, hpccm.templates.envvars, hpccm.templates.ldconfig):
"""The `magma` building block configures, builds, and installs the
[MAGMA](https://icl.cs.utk.edu/magma) component.
The [CMake](#cmake) building block should be installed prior to
this building block.
Either the [MKL](#mkl) or [OpenBLAS](#openblas) building block
should also be installed.
# Parameters
annotate: Boolean flag to specify whether to include annotations
(labels). The default is False.
cmake_opts: List of options to pass to `cmake`. The default value
is an empty list.
import hpccm.templates.ConfigureMake
import hpccm.templates.annotate
import hpccm.templates.downloader
import hpccm.templates.envvars
import hpccm.templates.ldconfig
import hpccm.templates.rm
from hpccm.building_blocks.base import bb_base
from hpccm.primitives.comment import comment
from hpccm.primitives.copy import copy
from hpccm.primitives.environment import environment
from hpccm.primitives.label import label
from hpccm.primitives.shell import shell
from hpccm.toolchain import toolchain
class generic_autotools(bb_base, hpccm.templates.ConfigureMake,
hpccm.templates.annotate, hpccm.templates.downloader,
hpccm.templates.envvars, hpccm.templates.ldconfig,
hpccm.templates.rm):
"""The `generic_autotools` building block downloads, configures,
builds, and installs a specified GNU Autotools enabled package.
# Parameters
annotate: Boolean flag to specify whether to include annotations
(labels). The default is False.
annotations: Dictionary of additional annotations to include. The
default is an empty dictionary.
branch: The git branch to clone. Only recognized if the
`repository` parameter is specified. The default is empty, i.e.,
import hpccm.config
import hpccm.templates.envvars
import hpccm.templates.rm
import hpccm.templates.tar
import hpccm.templates.wget
from hpccm.building_blocks.base import bb_base
from hpccm.building_blocks.packages import packages
from hpccm.common import cpu_arch, linux_distro
from hpccm.primitives.comment import comment
from hpccm.primitives.copy import copy
from hpccm.primitives.environment import environment
from hpccm.primitives.shell import shell
from hpccm.toolchain import toolchain
class pgi(bb_base, hpccm.templates.envvars, hpccm.templates.rm,
hpccm.templates.tar, hpccm.templates.wget):
"""The `pgi` building block downloads and installs the PGI compiler.
Currently, the only option is to install the latest community
edition.
You must agree to the [PGI End-User License Agreement](https://www.pgroup.com/doc/LICENSE.txt) to use this
building block.
As a side effect, a toolchain is created containing the PGI
compilers. The tool can be passed to other operations that want
to build using the PGI compilers.
# Parameters
environment: Boolean flag to specify whether the environment
(`LD_LIBRARY_PATH`, `PATH`, and potentially other variables)