fab.fab_base.site_specific.default.config#

This module contains the default Baf configuration class.

Classes

Config()

This class is the default Configuration object for Baf builds.

class fab.fab_base.site_specific.default.config.Config#

This class is the default Configuration object for Baf builds. It provides several callbacks which will be called from the build scripts to allow site-specific customisations.

property args: Namespace#
Returns:

the command line options specified by the user.

get_valid_profiles()#

Determines the list of all allowed compiler profiles. The first entry in this list is the default profile to be used. This method can be overwritten by site configs to add or modify the supported profiles.

Return type:

List[str]

Returns:

list of all supported compiler profiles.

handle_command_line_options(args)#

Additional callback function executed once all command line options have been added. This is for example used to add Vernier profiling flags, which are site-specific.

Parameters:

args (argparse.Namespace) – the command line options added in the site configs

Return type:

None

update_toolbox(build_config)#

Set the default compiler flags for the various compiler that are supported.

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None

get_path_flags(build_config)#

Returns the path-specific flags to be used. TODO #313: Ideally we have only one kind of flag, but as a quick work around we provide this method.

Return type:

List[AddFlags]

setup_cray(build_config)#

This method sets up the Cray compiler and linker flags. For now call an external function, since it is expected that this configuration can be very lengthy (once we support compiler modes).

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None

setup_gnu(build_config)#

This method sets up the Gnu compiler and linker flags. For now call an external function, since it is expected that this configuration can be very lengthy (once we support compiler modes).

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None

setup_intel_classic(build_config)#

This method sets up the Intel classic compiler and linker flags. For now call an external function, since it is expected that this configuration can be very lengthy (once we support compiler modes).

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None

setup_intel_llvm(build_config)#

This method sets up the Intel LLVM compiler and linker flags. For now call an external function, since it is expected that this configuration can be very lengthy (once we support compiler modes).

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None

setup_nvidia(build_config)#

This method sets up the Nvidia compiler and linker flags. For now call an external function, since it is expected that this configuration can be very lengthy (once we support compiler modes).

Parameters:

build_config (BuildConfig) – the Fab build configuration instance

Return type:

None