Base for c++ programs and libraries
Bind the c++ file extensions to the creation of a waflib.Tools.cxx.cxx instance
Bases: waflib.Task.Task
Compile C++ files into object files
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
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
Create the manifest file
Bases: waflib.Tools.ccroot.link_task
Link object files into a c++ program
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
Create the manifest file
Bases: waflib.Tools.cxx.cxxprogram
Link object files into a c++ shared library
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
Create the manifest file
Bases: waflib.Tools.ccroot.stlink_task
Link object files into a c++ static library
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
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().
Process the target attribute to add the platform-specific prefix/suffix such as .so or .exe. The settings are retrieved from env.clsname_PATTERN