(this page was generated automatically using easybuild.tools.docs.gen_easyblocks_overview_rst()
)
Overview of generic easyblocks¶
BinariesTarball - Binary - BuildEnv - Bundle - CMakeMake - CMakePythonPackage - CmdCp - Conda - ConfigureMake - ConfigureMakePythonPackage - CrayToolchain - FortranPythonPackage - IntelBase - JAR - MakeCp - MesonNinja - ModuleRC - OCamlPackage - OctavePackage - PackedBinary - PerlModule - PythonBundle - PythonPackage - RPackage - Rpm - RubyGem - SCons - SystemCompiler - SystemMPI - Tarball - Toolchain - VSCPythonPackage - VersionIndependentPythonPackage - Waf
BinariesTarball
¶
(derives from Tarball)
Support for installing a tarball of binaries
Customised steps in BinariesTarball
easyblock¶
install_step
- Install by copying unzipped binaries to ‘bin’ subdir of installation dir, and fixing permissions.
Binary
¶
(derives from EasyBlock)
- Support for installing software that comes in binary form.
- Just copy the sources to the install dir, or use the specified install command.
Extra easyconfig parameters specific to Binary
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
extract_sources |
Whether or not to extract sources | False |
install_cmd |
Install command to be used. | None |
prepend_to_path |
Prepend the given directories (relative to install-dir) to the environment variable PATH in the module file. Default is the install-dir itself. | [''] |
staged_install |
Perform staged installation via subdirectory of build directory | False |
Customised steps in Binary
easyblock¶
build_step
- No compilation, this is binary softwareconfigure_step
- No configuration, this is binary softwareinstall_step
- Copy all files in build directory to the install directory
Example easyconfig for Binary
easyblock¶
easyblock = 'Binary'
name = 'Platanus'
version = '1.2.1'
versionsuffix = '-linux-x86_64'
homepage = 'http://platanus.bio.titech.ac.jp/'
description = """PLATform for Assembling NUcleotide Sequences"""
toolchain = {'name': 'dummy', 'version': 'dummy'}
source_urls = ['http://platanus.bio.titech.ac.jp/Platanus_release/20130901010201']
sources = ['platanus']
checksums = ['02cf92847ec704d010a54df293b9c60a']
sanity_check_paths = {
'files': ['platanus'],
'dirs': [],
}
moduleclass = 'bio'
BuildEnv
¶
(derives from Bundle)
Build environment of toolchain: only generate module file
Extra easyconfig parameters specific to BuildEnv
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
Bundle
¶
(derives from EasyBlock)
Bundle of modules: only generate module files, nothing to build/install
Extra easyconfig parameters specific to Bundle
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
Customised steps in Bundle
easyblock¶
build_step
- Do nothing.configure_step
- Collect altroot/altversion info.install_step
- Install components, if specified.
Example easyconfig for Bundle
easyblock¶
easyblock = 'Bundle'
name = 'Autotools'
version = '20150119' # date of the most recent change
homepage = 'http://autotools.io'
description = """This bundle collect the standard GNU build tools: Autoconf, Automake and libtool"""
toolchain = {'name': 'GCC', 'version': '4.9.2'}
dependencies = [
('Autoconf', '2.69'), # 20120424
('Automake', '1.15'), # 20150105
('libtool', '2.4.5'), # 20150119
]
moduleclass = 'devel'
CMakeMake
¶
(derives from ConfigureMake)
Support for configuring build with CMake instead of traditional configure script
Extra easyconfig parameters specific to CMakeMake
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
separate_build_dir |
Perform build in a separate directory | False |
srcdir |
Source directory location to provide to cmake command | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
Customised steps in CMakeMake
easyblock¶
configure_step
- Configure build using cmakeinstall_step
- Configure build using cmake
Example easyconfig for CMakeMake
easyblock¶
easyblock = 'CMakeMake'
name = 'ANTs'
version = '2.1.0rc3'
homepage = 'http://stnava.github.io/ANTs/'
description = """ANTs extracts information from complex datasets that include imaging. ANTs is useful for managing,
interpreting and visualizing multidimensional data."""
toolchain = {'name': 'goolf', 'version': '1.5.14'}
toolchainopts = {'pic': True}
source_urls = ['https://github.com/stnava/ANTs/archive/']
sources = ['v%(version)s.tar.gz']
builddependencies = [('CMake', '3.0.2')]
skipsteps = ['install']
buildopts = ' && mkdir -p %(installdir)s && cp -r * %(installdir)s/'
parallel = 1
separate_build_dir = True
sanity_check_paths = {
'files': ['bin/ANTS'],
'dirs': ['lib'],
}
moduleclass = 'data'
CMakePythonPackage
¶
(derives from CMakeMake, PythonPackage)
Build a Python package and module with cmake.
Some packages use cmake to first build and install C Python packages and then put the Python package in lib/pythonX.Y/site-packages.
We install this in a seperate location and generate a module file which sets the PYTHONPATH.
We use the default CMake implementation, and use make_module_extra from PythonPackage.
Extra easyconfig parameters specific to CMakePythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
separate_build_dir |
Perform build in a separate directory | False |
srcdir |
Source directory location to provide to cmake command | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
Customised steps in CMakePythonPackage
easyblock¶
build_step
- Build Python package with cmakeconfigure_step
- Main configuration using cmakeinstall_step
- Install with cmake install
CmdCp
¶
(derives from MakeCp)
- Software with no configure, no make, and no make install step.
- Just run the specified command for all sources, and copy specified files to the install dir
Extra easyconfig parameters specific to CmdCp
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
cmds_map |
List of regex/template command (with ‘source’/’target’ fields) tuples | [('.*', '$CC $CFLAGS %(source)s -o %(target)s')] |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
files_to_copy |
List of files or dirs to copy | [] |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
with_configure |
Run configure script before building | False |
Customised steps in CmdCp
easyblock¶
build_step
- Build by running the command with the inputfilesconfigure_step
- Build by running the command with the inputfilesinstall_step
- Build by running the command with the inputfiles
Conda
¶
(derives from Binary)
Support for installing software using ‘conda’.
Extra easyconfig parameters specific to Conda
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
channels |
List of conda channels to pass to ‘conda install’ | None |
environment_file |
Conda environment.yml file to use with ‘conda env create’ | None |
extract_sources |
Whether or not to extract sources | False |
install_cmd |
Install command to be used. | None |
prepend_to_path |
Prepend the given directories (relative to install-dir) to the environment variable PATH in the module file. Default is the install-dir itself. | [''] |
remote_environment |
Remote conda environment to use with ‘conda env create’ | None |
requirements |
Requirements specification to pass to ‘conda install’ | None |
staged_install |
Perform staged installation via subdirectory of build directory | False |
Customised steps in Conda
easyblock¶
install_step
- Install software using ‘conda env create’ or ‘conda create’ & ‘conda install’.
ConfigureMake
¶
(derives from EasyBlock)
Support for building and installing applications with configure/make/make install
Extra easyconfig parameters specific to ConfigureMake
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
Commonly used easyconfig parameters with ConfigureMake
easyblock¶
easyconfig parameter | description |
---|---|
configopts | Extra options passed to configure (default already has –prefix) |
buildopts | Extra options passed to make step (default already has -j X) |
installopts | Extra options for installation |
Customised steps in ConfigureMake
easyblock¶
build_step
- Start the actual build- typical: make -j X
configure_step
- Configure step- typically ./configure –prefix=/install/path style
install_step
- Create the installation in correct location- typical: make install
Example easyconfig for ConfigureMake
easyblock¶
easyblock = 'ConfigureMake'
name = 'zsync'
version = '0.6.2'
homepage = 'http://zsync.moria.org.uk/'
description = """zsync-0.6.2: Optimising file distribution program, a 1-to-many rsync"""
toolchain = {'name': 'ictce', 'version': '5.3.0'}
sources = [SOURCE_TAR_BZ2]
source_urls = ['http://zsync.moria.org.uk/download/']
sanity_check_paths = {
'files': ['bin/zsync'],
'dirs': []
}
moduleclass = 'tools'
ConfigureMakePythonPackage
¶
(derives from ConfigureMake, PythonPackage)
Build a Python package and module with ‘python configure/make/make install’.
Implemented by using: - a custom implementation of configure_step - using the build_step and install_step from ConfigureMake - using the sanity_check_step and make_module_extra from PythonPackage
Extra easyconfig parameters specific to ConfigureMakePythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
tar_config_opts |
Override tar settings as determined by configure. | False |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
Customised steps in ConfigureMakePythonPackage
easyblock¶
build_step
- Build Python package with ‘make’.configure_step
- Configure build using ‘python configure’.install_step
- Install with ‘make install’.
Example easyconfig for ConfigureMakePythonPackage
easyblock¶
easyblock = 'ConfigureMakePythonPackage'
name = 'PyQt'
version = '4.11.3'
versionsuffix = '-Python-%(pyver)s'
homepage = 'http://www.riverbankcomputing.co.uk/software/pyqt'
description = """PyQt is a set of Python v2 and v3 bindings for Digia's Qt application framework."""
toolchain = {'name': 'goolf', 'version': '1.5.14'}
sources = ['%(name)s-x11-gpl-%(version)s.tar.gz']
source_urls = ['http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-%(version)s']
dependencies = [
('Python', '2.7.9'),
('SIP', '4.16.4', versionsuffix),
('Qt', '4.8.6'),
]
configopts = "configure-ng.py --confirm-license"
configopts += " --destdir=%%(installdir)s/lib/python%(pyshortver)s/site-packages "
configopts += " --no-sip-files"
options = {'modulename': 'PyQt4'}
modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
moduleclass = 'vis'
CrayToolchain
¶
(derives from Bundle)
Compiler toolchain: generate module file only, nothing to build/install
Extra easyconfig parameters specific to CrayToolchain
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
FortranPythonPackage
¶
(derives from PythonPackage)
Extends PythonPackage to add a Fortran compiler to the make call
Extra easyconfig parameters specific to FortranPythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
Customised steps in FortranPythonPackage
easyblock¶
build_step
- Customize the build step by adding compiler-specific flags to the build command.configure_step
- Customize the build step by adding compiler-specific flags to the build command.install_step
- Customize the build step by adding compiler-specific flags to the build command.
IntelBase
¶
(derives from EasyBlock)
- Base class for Intel software
- no configure/make : binary release
- add license_file variable
Extra easyconfig parameters specific to IntelBase
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
components |
List of components to install | None |
license_activation |
License activation type | "license_server" |
m32 |
Enable 32-bit toolchain | False |
requires_runtime_license |
Boolean indicating whether or not a runtime license is required | True |
serial_number |
Serial number for the product | None |
usetmppath |
Use temporary path for installation | False |
Customised steps in IntelBase
easyblock¶
build_step
- Binary installation files, so no building.configure_step
- Configure: handle license file and clean home dir.install_step
- Actual installation- create silent cfg file
- set environment parameters
- execute command
JAR
¶
(derives from Binary)
Support for installing JAR files.
Extra easyconfig parameters specific to JAR
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
extract_sources |
Whether or not to extract sources | False |
install_cmd |
Install command to be used. | None |
prepend_to_path |
Prepend the given directories (relative to install-dir) to the environment variable PATH in the module file. Default is the install-dir itself. | [''] |
staged_install |
Perform staged installation via subdirectory of build directory | False |
MakeCp
¶
(derives from ConfigureMake)
Software with no configure and no make install step.
Extra easyconfig parameters specific to MakeCp
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
files_to_copy |
List of files or dirs to copy | [] |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
with_configure |
Run configure script before building | False |
Customised steps in MakeCp
easyblock¶
configure_step
- Configure build if requiredinstall_step
- Install by copying specified files and directories.
MesonNinja
¶
(derives from EasyBlock)
Support for building and installing software with ‘meson’ and ‘ninja’.
Extra easyconfig parameters specific to MesonNinja
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
separate_build_dir |
Perform build in a separate directory | True |
Customised steps in MesonNinja
easyblock¶
build_step
- Build with Ninja.configure_step
- Configure with Meson.install_step
- Install with ‘ninja install’.
ModuleRC
¶
(derives from EasyBlock)
Generic easyblock to create a software-specific .modulerc file
Customised steps in ModuleRC
easyblock¶
build_step
- Do nothing.configure_step
- Do nothing.install_step
- Do nothing.
OCamlPackage
¶
(derives from ExtensionEasyBlock)
Builds and installs OCaml packages using OPAM package manager.
Extra easyconfig parameters specific to OCamlPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
options |
Dictionary with extension options. | {} |
Customised steps in OCamlPackage
easyblock¶
configure_step
- Raise error when configure step is run: installing OCaml packages stand-alone is not supported (yet)install_step
- Raise error when configure step is run: installing OCaml packages stand-alone is not supported (yet)
OctavePackage
¶
(derives from ExtensionEasyBlock)
Builds and installs Octave extension toolboxes.
Extra easyconfig parameters specific to OctavePackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
options |
Dictionary with extension options. | {} |
Customised steps in OctavePackage
easyblock¶
configure_step
- Raise error when configure step is run: installing Octave toolboxes stand-alone is not supported (yet)install_step
- Raise error when configure step is run: installing Octave toolboxes stand-alone is not supported (yet)
PackedBinary
¶
(derives from Binary, EasyBlock)
- Support for installing packed binary software.
- Just unpack the sources in the install dir
Extra easyconfig parameters specific to PackedBinary
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
extract_sources |
Whether or not to extract sources | False |
install_cmd |
Install command to be used. | None |
prepend_to_path |
Prepend the given directories (relative to install-dir) to the environment variable PATH in the module file. Default is the install-dir itself. | [''] |
staged_install |
Perform staged installation via subdirectory of build directory | False |
Customised steps in PackedBinary
easyblock¶
install_step
- Copy all unpacked source directories to install directory, one-by-one.
PerlModule
¶
(derives from ExtensionEasyBlock, ConfigureMake)
Builds and installs a Perl module, and can provide a dedicated module file.
Extra easyconfig parameters specific to PerlModule
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
options |
Dictionary with extension options. | {} |
runtest |
Run unit tests. | "test" |
Customised steps in PerlModule
easyblock¶
build_step
- No separate build procedure for Perl modules.configure_step
- No separate configuration for Perl modules.install_step
- Run install procedure for Perl modules.
PythonBundle
¶
(derives from Bundle)
Bundle of modules: only generate module files, nothing to build/install
Extra easyconfig parameters specific to PythonBundle
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
PythonPackage
¶
(derives from ExtensionEasyBlock)
Builds and installs a Python package, and provides a dedicated module file.
Extra easyconfig parameters specific to PythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
Customised steps in PythonPackage
easyblock¶
build_step
- Build Python package using setup.pyconfigure_step
- Configure Python package build/install.install_step
- Install Python package to a custom path using setup.py
RPackage
¶
(derives from ExtensionEasyBlock)
Install an R package as a separate module, or as an extension.
Extra easyconfig parameters specific to RPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
exts_subdir |
Subdirectory where R extensions should be installed info | "" |
options |
Dictionary with extension options. | {} |
unpack_sources |
Unpack sources before installation | False |
Customised steps in RPackage
easyblock¶
build_step
- No separate build step for R packages.configure_step
- No configuration for installing R packages.install_step
- Install procedure for R packages.
Rpm
¶
(derives from Binary)
- Support for installing RPM files.
- sources is a list of rpms
- installation is with –nodeps (so the sources list has to be complete)
Extra easyconfig parameters specific to Rpm
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
extract_sources |
Whether or not to extract sources | False |
force |
Use force | False |
install_cmd |
Install command to be used. | None |
makesymlinks |
Create symlinks for listed paths | [] |
postinstall |
Enable post install | False |
preinstall |
Enable pre install | False |
prepend_to_path |
Prepend the given directories (relative to install-dir) to the environment variable PATH in the module file. Default is the install-dir itself. | [''] |
staged_install |
Perform staged installation via subdirectory of build directory | False |
Customised steps in Rpm
easyblock¶
configure_step
- Custom configuration procedure for RPMs: rebuild RPMs for relocation if required.install_step
- Custom installation procedure for RPMs into a custom prefix.
RubyGem
¶
(derives from ExtensionEasyBlock)
Builds and installs Ruby Gems.
Extra easyconfig parameters specific to RubyGem
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
options |
Dictionary with extension options. | {} |
Customised steps in RubyGem
easyblock¶
build_step
- No separate build procedure for Ruby Gems.configure_step
- No separate configuration for Ruby Gems.install_step
- Install Ruby Gems using gem package manager
SCons
¶
(derives from EasyBlock)
Support for building/installing with SCons.
Extra easyconfig parameters specific to SCons
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
prefix_arg |
Syntax for specifying installation prefix | "PREFIX=" |
Customised steps in SCons
easyblock¶
build_step
- Build with SConsconfigure_step
- No configure step for SConsinstall_step
- Install with SCons
SystemCompiler
¶
(derives from Bundle, EB_GCC, EB_ifort)
Support for generating a module file for the system compiler with specified name.
The compiler is expected to be available in $PATH, required libraries are assumed to be readily available.
Specifying ‘system’ as a version leads to using the derived compiler version in the generated module; if an actual version is specified, it is checked against the derived version of the system compiler that was found.
Extra easyconfig parameters specific to SystemCompiler
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
clooguseisl |
Use ISL with CLooG or not | False |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
generate_standalone_module |
Add known path/library extensions and environment variables for the compiler to the final module | False |
generic |
Build GCC and support libraries such that it runs on all processors of the target architecture (use False to enforce non-generic regardless of configuration) | None |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
languages |
List of languages to build GCC for (–enable-languages) | [] |
license_activation |
License activation type | "license_server" |
m32 |
Enable 32-bit toolchain | False |
multilib |
Build multilib gcc (both i386 and x86_64) | False |
pplwatchdog |
Enable PPL watchdog | False |
prefer_lib_subdir |
Configure GCC to prefer ‘lib’ subdirs over ‘lib64’ when linking | False |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
requires_runtime_license |
Boolean indicating whether or not a runtime license is required | True |
serial_number |
Serial number for the product | None |
tar_config_opts |
Override tar settings as determined by configure. | False |
use_gold_linker |
Configure GCC to use GOLD as default linker | True |
usetmppath |
Use temporary path for installation | False |
withcloog |
Build GCC with CLooG support | False |
withisl |
Build GCC with ISL support | False |
withlibiberty |
Enable installing of libiberty | False |
withlto |
Enable LTO support | True |
withppl |
Build GCC with PPL support | False |
SystemMPI
¶
(derives from Bundle, ConfigureMake, EB_impi)
Support for generating a module file for the system mpi with specified name.
The mpi compiler is expected to be available in $PATH, required libraries are assumed to be readily available.
Specifying ‘system’ as a version leads to using the derived mpi version in the generated module; if an actual version is specified, it is checked against the derived version of the system mpi that was found.
Extra easyconfig parameters specific to SystemMPI
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
build_type |
Value to provide to –build option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
configure_cmd_prefix |
Prefix to be glued before ./configure | "" |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
generate_standalone_module |
Add known path extensions and environment variables for the MPI installation to the final module | False |
host_type |
Value to provide to –host option of configure script, e.g., x86_64-pc-linux-gnu (determined by config.guess shipped with EasyBuild if None, False implies to leave it up to the configure script) | None |
license_activation |
License activation type | "license_server" |
m32 |
Enable 32-bit toolchain | False |
prefix_opt |
Prefix command line option for configure script (‘–prefix=’ if None) | None |
requires_runtime_license |
Boolean indicating whether or not a runtime license is required | True |
serial_number |
Serial number for the product | None |
set_mpi_wrapper_aliases_gcc |
Set compiler for mpigcc/mpigxx via aliases | False |
set_mpi_wrapper_aliases_intel |
Set compiler for mpiicc/mpiicpc/mpiifort via aliases | False |
set_mpi_wrappers_all |
Set (default) compiler for all MPI wrapper commands | False |
set_mpi_wrappers_compiler |
Override default compiler used by MPI wrapper commands | False |
tar_config_opts |
Override tar settings as determined by configure. | False |
usetmppath |
Use temporary path for installation | False |
Tarball
¶
(derives from EasyBlock)
- Precompiled software supplied as a tarball:
- will unpack binary and copy it to the install dir
Customised steps in Tarball
easyblock¶
build_step
- Dummy build method: nothing to buildconfigure_step
- Dummy configure methodinstall_step
- Install by copying from specified source directory (or ‘start_dir’ if not specified).
Toolchain
¶
(derives from Bundle)
Compiler toolchain: generate module file only, nothing to build/install
Extra easyconfig parameters specific to Toolchain
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
altroot |
Software name of dependency to use to define $EBROOT for this bundle | None |
altversion |
Software name of dependency to use to define $EBVERSION for this bundle | None |
components |
List of components to install: tuples w/ name, version and easyblock to use | () |
default_component_specs |
Default specs to use for every component | {} |
default_easyblock |
Default easyblock to use for components | None |
VSCPythonPackage
¶
(derives from VersionIndependentPythonPackage)
Support for install VSC Python packages.
Extra easyconfig parameters specific to VSCPythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
VersionIndependentPythonPackage
¶
(derives from PythonPackage)
Support for building/installing python packages without requiring a specific python package.
Extra easyconfig parameters specific to VersionIndependentPythonPackage
easyblock¶
easyconfig parameter | description | default value |
---|---|---|
buildcmd |
Command to pass to setup.py to build the extension | "build" |
check_ldshared |
Check Python value of $LDSHARED, correct if needed to “$CC -shared” | False |
download_dep_fail |
Fail if downloaded dependencies are detected | None |
install_target |
Option to pass to setup.py | "install" |
options |
Dictionary with extension options. | {} |
req_py_majver |
Required major Python version (only relevant when using system Python) | 2 |
req_py_minver |
Required minor Python version (only relevant when using system Python) | 6 |
runtest |
Run unit tests. | True |
unpack_sources |
Unpack sources prior to build/install | True |
use_easy_install |
Install using ‘%(python)s setup.py easy_install –prefix=%(prefix)s %(installopts)s %(loc)s’ (deprecated) | False |
use_pip |
Install using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_pip_editable |
Install using ‘pip install –editable’ | False |
use_pip_for_deps |
Install dependencies using ‘pip install –prefix=%(prefix)s %(installopts)s %(loc)s’ | False |
use_setup_py_develop |
Install using ‘%(python)s setup.py develop –prefix=%(prefix)s %(installopts)s’ (deprecated) | False |
zipped_egg |
Install as a zipped eggs (requires use_easy_install) | False |
Customised steps in VersionIndependentPythonPackage
easyblock¶
build_step
- No build procedure.configure_step
- No build procedure.install_step
- Custom install procedure to skip selection of python package versions.