/usr/share/boost-build/src/tools
Edit: /usr/share/boost-build/src/tools/intel.jam (2626B)
# Copyright Vladimir Prus 2004.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt
# or copy at http://www.boost.org/LICENSE_1_0.txt)
#| tag::doc[]
[[bbv2.reference.tools.compiler.intel]]
= Intel C++
The `intel-*` modules support the Intel C++ command-line compiler.
The module is initialized using the following syntax:
----
using intel : [version] : [c++-compile-command] : [compiler options] ;
----
This statement may be repeated several times, if you want to configure
several versions of the compiler.
If compiler command is not specified, then B2 will look in PATH
for an executable `icpc` (on Linux), or `icl.exe` (on Windows).
The following options can be provided, using
_`
option-value syntax`_:
`cflags`::
Specifies additional compiler flags that will be used when compiling C
sources.
`cxxflags`::
Specifies additional compiler flags that will be used when compiling C++
sources.
`compileflags`::
Specifies additional compiler flags that will be used when compiling both C
and C++ sources.
`linkflags`::
Specifies additional command line options that will be passed to the linker.
`root`::
For the Linux version, specifies the root directory of the compiler installation.
This option is necessary only if it is not possible to detect this information
from the compiler command -- for example if the specified compiler command is
a user script. For the Windows version, specifies the directory where the
`iclvars.bat` file for configuring the compiler exists. Specifying the `root`
option without specifying the compiler command allows the end-user not to have
to worry about whether he is compiling 32-bit or 64-bit code, as the toolset will
automatically configure the compiler for the appropriate address model and compiler
command using the `iclvars.bat` batch file.
|# # end::doc[]
# This is a generic 'intel' toolset. Depending on the current
# system, it forwards either to 'intel-linux' or 'intel-win'
# modules.
import feature ;
import os ;
import toolset ;
feature.extend toolset : intel ;
feature.subfeature toolset intel : platform : : propagated link-incompatible ;
rule init ( * : * )
{
if [ os.name ] = LINUX
{
toolset.using intel-linux :
$(1) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ;
}
else if [ os.name ] = MACOSX
{
toolset.using intel-darwin :
$(1) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ;
}
else
{
toolset.using intel-win :
$(1) : $(2) : $(3) : $(4) : $(5) : $(6) : $(7) : $(8) : $(9) ;
}
}