easybuild.toolchains.compiler.inteliccifort module

Support for Intel compilers (icc, ifort) as toolchain compilers.

author:Stijn De Weirdt (Ghent University)
author:Kenneth Hoste (Ghent University)
class easybuild.toolchains.compiler.inteliccifort.IntelIccIfort(*args, **kwargs)

Bases: easybuild.tools.toolchain.compiler.Compiler

Intel compiler class - TODO: install as single package ?

should be done anyway (all icc versions come with matching ifort version)
COMPILER_CC = 'icc'
COMPILER_CXX = 'icpc'
COMPILER_C_UNIQUE_FLAGS = ['intel-static', 'no-icc']
COMPILER_F77 = 'ifort'
COMPILER_F90 = 'ifort'
COMPILER_FAMILY = 'Intel'
COMPILER_FC = 'ifort'
COMPILER_F_UNIQUE_FLAGS = ['intel-static']
COMPILER_GENERIC_OPTION = {('x86_64', 'AMD'): 'xSSE2', ('x86_64', 'Intel'): 'xSSE2'}
COMPILER_MODULE_NAME = ['icc', 'ifort']
COMPILER_OPTIMAL_ARCHITECTURE_OPTION = {('x86_64', 'AMD'): 'xHost', ('x86_64', 'Intel'): 'xHost'}
COMPILER_UNIQUE_OPTION_MAP = {'precise': ['fp-model precise'], 'i8': 'i8', 'loose': ['fp-model fast=1'], 'defaultprec': ['ftz', 'fp-speculation=safe', 'fp-model source'], 'optarch': 'xHost', 'ieee': 'fltconsistency', 'veryloose': ['fp-model fast=2'], 'r8': 'r8', 'no-icc': 'no-icc', 'strict': ['fp-speculation=strict', 'fp-model strict'], 'intel-static': 'static-intel', 'error-unknown-option': 'we10006'}
COMPILER_UNIQUE_OPTS = {'intel-static': (False, 'Link Intel provided libraries statically'), 'error-unknown-option': (False, 'Error instead of warning for unknown options'), 'no-icc': (False, "Don't set Intel specific macros")}
LIB_MULTITHREAD = ['iomp5', 'pthread']
LINKER_TOGGLE_STATIC_DYNAMIC = {'dynamic': '-Bdynamic', 'static': '-Bstatic'}
set_variables()

Set the variables.