numpy.distutils.ccompiler_opt.CCompilerOpt.try_dispatch#
method
- distutils.ccompiler_opt.CCompilerOpt.try_dispatch(sources, src_dir=None, ccompiler=None, **kwargs)[source]#
Compile one or more dispatch-able sources and generates object files, also generates abstract C config headers and macros that used later for the final runtime dispatching process.
The mechanism behind it is to takes each source file that specified in ‘sources’ and branching it into several files depend on special configuration statements that must be declared in the top of each source which contains targeted CPU features, then it compiles every branched source with the proper compiler flags.
- Parameters
- sourceslist
Must be a list of dispatch-able sources file paths, and configuration statements must be declared inside each file.
- src_dirstr
Path of parent directory for the generated headers and wrapped sources. If None(default) the files will generated in-place.
- ccompilerCCompiler
Distutils CCompiler instance to be used for compilation. If None (default), the provided instance during the initialization will be used instead.
- **kwargsany
Arguments to pass on to the CCompiler.compile()
- Returns
- listgenerated object files
- Raises
- CompileError
Raises by CCompiler.compile() on compiling failure.
- DistutilsError
Some errors during checking the sanity of configuration statements.
See also
parse_targets
Parsing the configuration statements of dispatch-able sources.