.. _generic_easyblocks: .. This file is automatically generated using the gen_easyblocks_docs.py script, .. and information and docstrings from easyblocks and the EasyBuild framework. .. Doo not edit this file manually, but update the docstrings and regenerate it. *(this page was generated automatically using* ``easybuild.tools.docs.gen_easyblocks_overview_rst()`` *)* ============================== Overview of generic easyblocks ============================== :ref:`BinariesTarball` - :ref:`Binary` - :ref:`BuildEnv` - :ref:`Bundle` - :ref:`CMakeMake` - :ref:`CMakeMakeCp` - :ref:`CMakeNinja` - :ref:`CMakePythonPackage` - :ref:`CmdCp` - :ref:`Conda` - :ref:`ConfigureMake` - :ref:`ConfigureMakePythonPackage` - :ref:`CrayToolchain` - :ref:`FortranPythonPackage` - :ref:`IntelBase` - :ref:`JAR` - :ref:`MakeCp` - :ref:`MesonNinja` - :ref:`ModuleRC` - :ref:`OCamlPackage` - :ref:`OctavePackage` - :ref:`PackedBinary` - :ref:`PerlModule` - :ref:`PythonBundle` - :ref:`PythonPackage` - :ref:`RPackage` - :ref:`Rpm` - :ref:`RubyGem` - :ref:`SCons` - :ref:`SystemCompiler` - :ref:`SystemMPI` - :ref:`Tarball` - :ref:`Toolchain` - :ref:`VSCPythonPackage` - :ref:`VersionIndependentPythonPackage` - :ref:`Waf` .. _BinariesTarball: ``BinariesTarball`` =================== (derives from :ref:`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: ``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 software * ``configure_step`` - No configuration, this is binary software * ``install_step`` - Copy all files in build directory to the install directory Example easyconfig for ``Binary`` easyblock ------------------------------------------- .. code:: 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 = SYSTEM source_urls = ['http://platanus.bio.titech.ac.jp/Platanus_release/20130901010201'] sources = ['platanus'] checksums = ['02cf92847ec704d010a54df293b9c60a'] sanity_check_paths = { 'files': ['platanus'], 'dirs': [], } moduleclass = 'bio' .. _BuildEnv: ``BuildEnv`` ============ (derives from :ref:`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: ``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 ------------------------------------------- .. code:: 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: ``CMakeMake`` ============= (derives from :ref:`ConfigureMake`) Support for configuring build with CMake instead of traditional configure script Extra easyconfig parameters specific to ``CMakeMake`` easyblock --------------------------------------------------------------- ======================== ================================================================================================================================================================================================== ================== easyconfig parameter description default value ======================== ================================================================================================================================================================================================== ================== ``abs_path_compilers`` Specify compilers via absolute file path (not via command names) ``False`` ``allow_system_boost`` Always allow CMake to pick up on Boost installed in OS (even if Boost is included as a dependency) ``False`` ``build_cmd`` Build command to use ``"make"`` ``build_shared_libs`` Build shared library (instead of static library)None can be used to add no flag (usually results in static library) ``None`` ``build_type`` Build type for CMake, e.g. Release.Defaults to 'Release' or 'Debug' depending on toolchainopts[debug] ``None`` ``configure_cmd`` Configure command to use ``"cmake"`` ``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`` ``install_cmd`` Build command to use ``"make install"`` ``prefix_opt`` Prefix command line option for configure script ('--prefix=' if None) ``None`` ``separate_build_dir`` Perform build in a separate directory ``True`` ``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 cmake * ``install_step`` - Configure build using cmake Example easyconfig for ``CMakeMake`` easyblock ---------------------------------------------- .. code:: 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' .. _CMakeMakeCp: ``CMakeMakeCp`` =============== (derives from :ref:`CMakeMake`, :ref:`MakeCp`) Software configured with CMake but without 'make install' step We use the default CMakeMake implementation, and use install_step from MakeCp. Extra easyconfig parameters specific to ``CMakeMakeCp`` easyblock ----------------------------------------------------------------- ======================== ================================================================================================================================================================================================== ================== easyconfig parameter description default value ======================== ================================================================================================================================================================================================== ================== ``abs_path_compilers`` Specify compilers via absolute file path (not via command names) ``False`` ``allow_system_boost`` Always allow CMake to pick up on Boost installed in OS (even if Boost is included as a dependency) ``False`` ``build_cmd`` Build command to use ``"make"`` ``build_shared_libs`` Build shared library (instead of static library)None can be used to add no flag (usually results in static library) ``None`` ``build_type`` Build type for CMake, e.g. Release.Defaults to 'Release' or 'Debug' depending on toolchainopts[debug] ``None`` ``configure_cmd`` Configure command to use ``"cmake"`` ``configure_cmd_prefix`` Prefix to be glued before ./configure ``""`` ``files_to_copy`` List of files or dirs to copy ``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_cmd`` Build command to use ``"make install"`` ``prefix_opt`` Prefix command line option for configure script ('--prefix=' if None) ``None`` ``separate_build_dir`` Perform build in a separate directory ``True`` ``srcdir`` Source directory location to provide to cmake command ``None`` ``tar_config_opts`` Override tar settings as determined by configure. ``False`` ``with_configure`` Run configure script before building ``False`` ======================== ================================================================================================================================================================================================== ================== Customised steps in ``CMakeMakeCp`` easyblock --------------------------------------------- * ``configure_step`` - Configure build using CMake * ``install_step`` - Install by copying specified files and directories. .. _CMakeNinja: ``CMakeNinja`` ============== (derives from :ref:`CMakeMake`, :ref:`MesonNinja`) Support for configuring with CMake, building and installing with MesonNinja. Extra easyconfig parameters specific to ``CMakeNinja`` easyblock ---------------------------------------------------------------- ======================== ================================================================================================================================================================================================== ================== easyconfig parameter description default value ======================== ================================================================================================================================================================================================== ================== ``abs_path_compilers`` Specify compilers via absolute file path (not via command names) ``False`` ``allow_system_boost`` Always allow CMake to pick up on Boost installed in OS (even if Boost is included as a dependency) ``False`` ``build_cmd`` Build command to use ``"make"`` ``build_shared_libs`` Build shared library (instead of static library)None can be used to add no flag (usually results in static library) ``None`` ``build_type`` Build type for CMake, e.g. Release.Defaults to 'Release' or 'Debug' depending on toolchainopts[debug] ``None`` ``configure_cmd`` Configure command to use ``"cmake"`` ``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`` ``install_cmd`` Build command to use ``"make install"`` ``prefix_opt`` Prefix command line option for configure script ('--prefix=' if None) ``None`` ``separate_build_dir`` Perform build in a separate directory ``True`` ``srcdir`` Source directory location to provide to cmake command ``None`` ``tar_config_opts`` Override tar settings as determined by configure. ``False`` ======================== ================================================================================================================================================================================================== ================== Customised steps in ``CMakeNinja`` easyblock -------------------------------------------- * ``build_step`` - Build using MesonNinja. * ``configure_step`` - Configure using CMake. * ``install_step`` - Install using MesonNinja. .. _CMakePythonPackage: ``CMakePythonPackage`` ====================== (derives from :ref:`CMakeMake`, :ref:`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 ======================== ================================================================================================================================================================================================== ================== ``abs_path_compilers`` Specify compilers via absolute file path (not via command names) ``False`` ``allow_system_boost`` Always allow CMake to pick up on Boost installed in OS (even if Boost is included as a dependency) ``False`` ``build_cmd`` Build command to use ``"make"`` ``build_shared_libs`` Build shared library (instead of static library)None can be used to add no flag (usually results in static library) ``None`` ``build_type`` Build type for CMake, e.g. Release.Defaults to 'Release' or 'Debug' depending on toolchainopts[debug] ``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" ``None`` ``configure_cmd`` Configure command to use ``"cmake"`` ``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_cmd`` Build command to use ``"make install"`` ``install_target`` Option to pass to setup.py ``"install"`` ``options`` Dictionary with extension options. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``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) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``False`` ``separate_build_dir`` Perform build in a separate directory ``True`` ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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 cmake * ``configure_step`` - Main configuration using cmake * ``install_step`` - Install with cmake install .. _CmdCp: ``CmdCp`` ========= (derives from :ref:`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_cmd`` Build command to use ``"make"`` ``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`` Configure command to use ``"./configure"`` ``configure_cmd_prefix`` Prefix to be glued before ./configure ``""`` ``files_to_copy`` List of files or dirs to copy ``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_cmd`` Build command to use ``"make install"`` ``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 inputfiles * ``configure_step`` - Build by running the command with the inputfiles * ``install_step`` - Build by running the command with the inputfiles .. _Conda: ``Conda`` ========= (derives from :ref:`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: ``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_cmd`` Build command to use ``"make"`` ``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`` Configure command to use ``"./configure"`` ``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`` ``install_cmd`` Build command to use ``"make install"`` ``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 -------------------------------------------------- .. code:: 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: ``ConfigureMakePythonPackage`` ============================== (derives from :ref:`ConfigureMake`, :ref:`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_cmd`` Build command to use ``"make"`` ``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" ``None`` ``configure_cmd`` Configure command to use ``"./configure"`` ``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_cmd`` Build command to use ``"make install"`` ``install_target`` Option to pass to setup.py ``"install"`` ``options`` Dictionary with extension options. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``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) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``False`` ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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 --------------------------------------------------------------- .. code:: 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: ``CrayToolchain`` ================= (derives from :ref:`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: ``FortranPythonPackage`` ======================== (derives from :ref:`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" ``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. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``req_py_majver`` Required major Python version (only relevant when using system Python) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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: ``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: ``JAR`` ======= (derives from :ref:`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: ``MakeCp`` ========== (derives from :ref:`ConfigureMake`) Software with no configure and no make install step. Extra easyconfig parameters specific to ``MakeCp`` easyblock ------------------------------------------------------------ ======================== =================================================================================================================================================================================================== ================== easyconfig parameter description default value ======================== =================================================================================================================================================================================================== ================== ``build_cmd`` Build command to use ``"make"`` ``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`` Configure command to use ``"./configure"`` ``configure_cmd_prefix`` Prefix to be glued before ./configure ``""`` ``files_to_copy`` List of files or dirs to copy ``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_cmd`` Build command to use ``"make install"`` ``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 required * ``install_step`` - Install by copying specified files and directories. .. _MesonNinja: ``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: ``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: ``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: ``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: ``PackedBinary`` ================ (derives from :ref:`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: ``PerlModule`` ============== (derives from ExtensionEasyBlock, :ref:`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: ``PythonBundle`` ================ (derives from :ref:`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" ``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`` ``download_dep_fail`` Fail if downloaded dependencies are detected ``None`` ``install_target`` Option to pass to setup.py ``"install"`` ``options`` Dictionary with extension options. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``req_py_majver`` Required major Python version (only relevant when using system Python) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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: ``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" ``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. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``req_py_majver`` Required major Python version (only relevant when using system Python) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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.py * ``configure_step`` - Configure Python package build/install. * ``install_step`` - Install Python package to a custom path using setup.py .. _RPackage: ``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: ``Rpm`` ======= (derives from :ref:`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: ``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: ``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 SCons * ``configure_step`` - No configure step for SCons * ``install_step`` - Install with SCons .. _SystemCompiler: ``SystemCompiler`` ================== (derives from :ref:`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_cmd`` Build command to use ``"make"`` ``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`` Configure command to use ``"./configure"`` ``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`` ``install_cmd`` Build command to use ``"make install"`` ``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`` ``profiled`` Bootstrap GCC with profile-guided optimizations ``False`` ``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: ``SystemMPI`` ============= (derives from :ref:`Bundle`, :ref:`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_cmd`` Build command to use ``"make"`` ``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`` Configure command to use ``"./configure"`` ``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`` ``install_cmd`` Build command to use ``"make install"`` ``libfabric_configopts`` Configure options for the provided libfabric ``""`` ``libfabric_rebuild`` Try to rebuild internal libfabric instead of using provided binary ``True`` ``license_activation`` License activation type ``"license_server"`` ``m32`` Enable 32-bit toolchain ``False`` ``ofi_internal`` Use internal shipped libfabric instead of external libfabric ``True`` ``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: ``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 build * ``configure_step`` - Dummy configure method * ``install_step`` - Install by copying from specified source directory (or 'start_dir' if not specified). .. _Toolchain: ``Toolchain`` ============= (derives from :ref:`Bundle`) Compiler toolchain easyblock: nothing to install, just generate module file. 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`` ``set_env_external_modules`` Include setenv statements for toolchain components that use an external module, based on available metadata ``False`` ============================ =========================================================================================================== ============= .. _VSCPythonPackage: ``VSCPythonPackage`` ==================== (derives from :ref:`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" ``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. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``req_py_majver`` Required major Python version (only relevant when using system Python) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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: ``VersionIndependentPythonPackage`` =================================== (derives from :ref:`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" ``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. ``{}`` ``pip_ignore_installed`` Let pip ignore installed Python packages (i.e. don't remove them) ``True`` ``req_py_majver`` Required major Python version (only relevant when using system Python) ``None`` ``req_py_minver`` Required minor Python version (only relevant when using system Python) ``None`` ``runtest`` Run unit tests. ``True`` ``sanity_pip_check`` Run 'pip check' to ensure all required Python packages are installed ``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' ``None`` ``use_pip_editable`` Install using 'pip install --editable' ``False`` ``use_pip_extras`` String with comma-separated list of 'extras' to install via pip ``None`` ``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. .. _Waf: ``Waf`` ======= (derives from EasyBlock) Support for building and installing applications with waf Customised steps in ``Waf`` easyblock ------------------------------------- * ``build_step`` - Build with ./waf build * ``configure_step`` - Configure with ./waf configure --prefix= * ``install_step`` - Install with ./waf install