cxx

Base for c++ programs and libraries

waflib.Tools.cxx.cxx_hook(self, node)[source]

Bind the c++ file extensions to the creation of a waflib.Tools.cxx.cxx instance

class waflib.Tools.cxx.cxx(*k, **kw)[source]

Bases: waflib.Task.Task

Compile C++ files into object files

scan(task)

Get the dependencies using a c/c++ preprocessor, this is required for finding dependencies of the kind:

#include some_macro()

This function is bound as a task method on waflib.Tools.c.c and waflib.Tools.cxx.cxx for example

exec_command(*k, **kw)

Change the command-line execution for msvc programs. Instead of quoting all the paths and keep using the shell, we can just join the options msvc is interested in

exec_mf()

Create the manifest file

class waflib.Tools.cxx.cxxprogram(*k, **kw)[source]

Bases: waflib.Tools.ccroot.link_task

Link object files into a c++ program

exec_command(*k, **kw)

Change the command-line execution for msvc programs. Instead of quoting all the paths and keep using the shell, we can just join the options msvc is interested in

exec_mf()

Create the manifest file

class waflib.Tools.cxx.cxxshlib(*k, **kw)[source]

Bases: waflib.Tools.cxx.cxxprogram

Link object files into a c++ shared library

exec_command(*k, **kw)

Change the command-line execution for msvc programs. Instead of quoting all the paths and keep using the shell, we can just join the options msvc is interested in

exec_mf()

Create the manifest file

class waflib.Tools.cxx.cxxstlib(*k, **kw)[source]

Bases: waflib.Tools.ccroot.stlink_task

Link object files into a c++ static library

exec_command(*k, **kw)

Change the command-line execution for msvc programs. Instead of quoting all the paths and keep using the shell, we can just join the options msvc is interested in

exec_mf()

Create the manifest file

Bases: waflib.Tools.ccroot.link_task

Base for static link tasks, which use ar most of the time. The target is always removed before being written.

Bases: waflib.Task.Task

Base class for all link tasks. A task generator is supposed to have at most one link task bound in the attribute link_task. See waflib.Tools.ccroot.apply_link().

Inheritance diagram of waflib.Tools.ccroot.stlink_task, waflib.Tools.c.cprogram, waflib.Tools.c.cshlib, waflib.Tools.cxx.cxxstlib, waflib.Tools.cxx.cxxprogram, waflib.Tools.cxx.cxxshlib, waflib.Tools.d.dprogram, waflib.Tools.d.dshlib, waflib.Tools.d.dstlib, waflib.Tools.ccroot.fake_shlib, waflib.Tools.ccroot.fake_stlib, waflib.Tools.asm.asmprogram, waflib.Tools.asm.asmshlib, waflib.Tools.asm.asmstlib

Process the target attribute to add the platform-specific prefix/suffix such as .so or .exe. The settings are retrieved from env.clsname_PATTERN

Previous topic

c

Next topic

c_config

This Page